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

#ifndef containers_2eproto_2epb_2eh
#define containers_2eproto_2epb_2eh

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

#include "google/protobuf/runtime_version.h"
#if PROTOBUF_VERSION != 6033001
#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_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/map.h"  // IWYU pragma: export
#include "google/protobuf/map_type_handler.h"  // IWYU pragma: export
#include "google/protobuf/map_entry.h"
#include "google/protobuf/map_field.h"
#include "google/protobuf/unknown_field_set.h"
#include "google/protobuf/any.pb.h"
#include "google/protobuf/empty.pb.h"
#include "google/protobuf/field_mask.pb.h"
#include "google/protobuf/timestamp.pb.h"
// @@protoc_insertion_point(includes)

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

#define PROTOBUF_INTERNAL_EXPORT_containers_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_containers_2eproto {
  static const ::uint32_t offsets[];
};
extern "C" {
extern const ::google::protobuf::internal::DescriptorTable descriptor_table_containers_2eproto;
}  // extern "C"
namespace containerd {
namespace services {
namespace containers {
namespace v1 {
class Container;
struct ContainerDefaultTypeInternal;
extern ContainerDefaultTypeInternal _Container_default_instance_;
extern const ::google::protobuf::internal::ClassDataFull Container_class_data_;
class Container_ExtensionsEntry_DoNotUse;
struct Container_ExtensionsEntry_DoNotUseDefaultTypeInternal;
extern Container_ExtensionsEntry_DoNotUseDefaultTypeInternal _Container_ExtensionsEntry_DoNotUse_default_instance_;
extern const ::google::protobuf::internal::ClassDataFull Container_ExtensionsEntry_DoNotUse_class_data_;
class Container_LabelsEntry_DoNotUse;
struct Container_LabelsEntry_DoNotUseDefaultTypeInternal;
extern Container_LabelsEntry_DoNotUseDefaultTypeInternal _Container_LabelsEntry_DoNotUse_default_instance_;
extern const ::google::protobuf::internal::ClassDataFull Container_LabelsEntry_DoNotUse_class_data_;
class Container_Runtime;
struct Container_RuntimeDefaultTypeInternal;
extern Container_RuntimeDefaultTypeInternal _Container_Runtime_default_instance_;
extern const ::google::protobuf::internal::ClassDataFull Container_Runtime_class_data_;
class CreateContainerRequest;
struct CreateContainerRequestDefaultTypeInternal;
extern CreateContainerRequestDefaultTypeInternal _CreateContainerRequest_default_instance_;
extern const ::google::protobuf::internal::ClassDataFull CreateContainerRequest_class_data_;
class CreateContainerResponse;
struct CreateContainerResponseDefaultTypeInternal;
extern CreateContainerResponseDefaultTypeInternal _CreateContainerResponse_default_instance_;
extern const ::google::protobuf::internal::ClassDataFull CreateContainerResponse_class_data_;
class DeleteContainerRequest;
struct DeleteContainerRequestDefaultTypeInternal;
extern DeleteContainerRequestDefaultTypeInternal _DeleteContainerRequest_default_instance_;
extern const ::google::protobuf::internal::ClassDataFull DeleteContainerRequest_class_data_;
class GetContainerRequest;
struct GetContainerRequestDefaultTypeInternal;
extern GetContainerRequestDefaultTypeInternal _GetContainerRequest_default_instance_;
extern const ::google::protobuf::internal::ClassDataFull GetContainerRequest_class_data_;
class GetContainerResponse;
struct GetContainerResponseDefaultTypeInternal;
extern GetContainerResponseDefaultTypeInternal _GetContainerResponse_default_instance_;
extern const ::google::protobuf::internal::ClassDataFull GetContainerResponse_class_data_;
class ListContainerMessage;
struct ListContainerMessageDefaultTypeInternal;
extern ListContainerMessageDefaultTypeInternal _ListContainerMessage_default_instance_;
extern const ::google::protobuf::internal::ClassDataFull ListContainerMessage_class_data_;
class ListContainersRequest;
struct ListContainersRequestDefaultTypeInternal;
extern ListContainersRequestDefaultTypeInternal _ListContainersRequest_default_instance_;
extern const ::google::protobuf::internal::ClassDataFull ListContainersRequest_class_data_;
class ListContainersResponse;
struct ListContainersResponseDefaultTypeInternal;
extern ListContainersResponseDefaultTypeInternal _ListContainersResponse_default_instance_;
extern const ::google::protobuf::internal::ClassDataFull ListContainersResponse_class_data_;
class UpdateContainerRequest;
struct UpdateContainerRequestDefaultTypeInternal;
extern UpdateContainerRequestDefaultTypeInternal _UpdateContainerRequest_default_instance_;
extern const ::google::protobuf::internal::ClassDataFull UpdateContainerRequest_class_data_;
class UpdateContainerResponse;
struct UpdateContainerResponseDefaultTypeInternal;
extern UpdateContainerResponseDefaultTypeInternal _UpdateContainerResponse_default_instance_;
extern const ::google::protobuf::internal::ClassDataFull UpdateContainerResponse_class_data_;
}  // namespace v1
}  // namespace containers
}  // namespace services
}  // namespace containerd
namespace google {
namespace protobuf {
}  // namespace protobuf
}  // namespace google

namespace containerd {
namespace services {
namespace containers {
namespace v1 {

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


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

class ListContainersRequest final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:containerd.services.containers.v1.ListContainersRequest) */ {
 public:
  inline ListContainersRequest() : ListContainersRequest(nullptr) {}
  ~ListContainersRequest() PROTOBUF_FINAL;

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

  template <typename = void>
  explicit PROTOBUF_CONSTEXPR ListContainersRequest(::google::protobuf::internal::ConstantInitialized);

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

  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);
  }
  inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const ListContainersRequest& default_instance() {
    return *reinterpret_cast<const ListContainersRequest*>(
        &_ListContainersRequest_default_instance_);
  }
  static constexpr int kIndexInFileMessages = 6;
  friend void swap(ListContainersRequest& a, ListContainersRequest& b) { a.Swap(&b); }
  inline void Swap(ListContainersRequest* 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(ListContainersRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

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

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

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

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::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
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const { return _impl_._cached_size_.Get(); }

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

  explicit ListContainersRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  ListContainersRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const ListContainersRequest& from);
  ListContainersRequest(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, ListContainersRequest&& from) noexcept
      : ListContainersRequest(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_();

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

  // accessors -------------------------------------------------------
  enum : int {
    kFiltersFieldNumber = 1,
  };
  // repeated string filters = 1;
  int filters_size() const;
  private:
  int _internal_filters_size() const;

  public:
  void clear_filters() ;
  const ::std::string& filters(int index) const;
  ::std::string* PROTOBUF_NONNULL mutable_filters(int index);
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_filters(int index, Arg_&& value, Args_... args);
  ::std::string* PROTOBUF_NONNULL add_filters();
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void add_filters(Arg_&& value, Args_... args);
  const ::google::protobuf::RepeatedPtrField<::std::string>& filters() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL mutable_filters();

  private:
  const ::google::protobuf::RepeatedPtrField<::std::string>& _internal_filters() const;
  ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL _internal_mutable_filters();

  public:
  // @@protoc_insertion_point(class_scope:containerd.services.containers.v1.ListContainersRequest)
 private:
  class _Internal;
  friend class ::google::protobuf::internal::TcParser;
  static const ::google::protobuf::internal::TcParseTable<0, 1,
                                   0, 71,
                                   2>
      _table_;

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::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 ListContainersRequest& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::RepeatedPtrField<::std::string> filters_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_containers_2eproto;
};

extern const ::google::protobuf::internal::ClassDataFull ListContainersRequest_class_data_;
// -------------------------------------------------------------------

class GetContainerRequest final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:containerd.services.containers.v1.GetContainerRequest) */ {
 public:
  inline GetContainerRequest() : GetContainerRequest(nullptr) {}
  ~GetContainerRequest() PROTOBUF_FINAL;

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

  template <typename = void>
  explicit PROTOBUF_CONSTEXPR GetContainerRequest(::google::protobuf::internal::ConstantInitialized);

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

  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);
  }
  inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const GetContainerRequest& default_instance() {
    return *reinterpret_cast<const GetContainerRequest*>(
        &_GetContainerRequest_default_instance_);
  }
  static constexpr int kIndexInFileMessages = 4;
  friend void swap(GetContainerRequest& a, GetContainerRequest& b) { a.Swap(&b); }
  inline void Swap(GetContainerRequest* 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(GetContainerRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

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

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

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

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::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
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const { return _impl_._cached_size_.Get(); }

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

  explicit GetContainerRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  GetContainerRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const GetContainerRequest& from);
  GetContainerRequest(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, GetContainerRequest&& from) noexcept
      : GetContainerRequest(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_();

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

  // accessors -------------------------------------------------------
  enum : int {
    kIdFieldNumber = 1,
  };
  // string id = 1;
  void clear_id() ;
  const ::std::string& id() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_id(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_id();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_id();
  void set_allocated_id(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_id() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_id(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_id();

  public:
  // @@protoc_insertion_point(class_scope:containerd.services.containers.v1.GetContainerRequest)
 private:
  class _Internal;
  friend class ::google::protobuf::internal::TcParser;
  static const ::google::protobuf::internal::TcParseTable<0, 1,
                                   0, 64,
                                   2>
      _table_;

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::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 GetContainerRequest& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr id_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_containers_2eproto;
};

extern const ::google::protobuf::internal::ClassDataFull GetContainerRequest_class_data_;
// -------------------------------------------------------------------

class DeleteContainerRequest final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:containerd.services.containers.v1.DeleteContainerRequest) */ {
 public:
  inline DeleteContainerRequest() : DeleteContainerRequest(nullptr) {}
  ~DeleteContainerRequest() PROTOBUF_FINAL;

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

  template <typename = void>
  explicit PROTOBUF_CONSTEXPR DeleteContainerRequest(::google::protobuf::internal::ConstantInitialized);

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

  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);
  }
  inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const DeleteContainerRequest& default_instance() {
    return *reinterpret_cast<const DeleteContainerRequest*>(
        &_DeleteContainerRequest_default_instance_);
  }
  static constexpr int kIndexInFileMessages = 12;
  friend void swap(DeleteContainerRequest& a, DeleteContainerRequest& b) { a.Swap(&b); }
  inline void Swap(DeleteContainerRequest* 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(DeleteContainerRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

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

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

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

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::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
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const { return _impl_._cached_size_.Get(); }

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

  explicit DeleteContainerRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  DeleteContainerRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const DeleteContainerRequest& from);
  DeleteContainerRequest(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, DeleteContainerRequest&& from) noexcept
      : DeleteContainerRequest(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_();

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

  // accessors -------------------------------------------------------
  enum : int {
    kIdFieldNumber = 1,
  };
  // string id = 1;
  void clear_id() ;
  const ::std::string& id() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_id(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_id();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_id();
  void set_allocated_id(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_id() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_id(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_id();

  public:
  // @@protoc_insertion_point(class_scope:containerd.services.containers.v1.DeleteContainerRequest)
 private:
  class _Internal;
  friend class ::google::protobuf::internal::TcParser;
  static const ::google::protobuf::internal::TcParseTable<0, 1,
                                   0, 67,
                                   2>
      _table_;

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::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 DeleteContainerRequest& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr id_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_containers_2eproto;
};

extern const ::google::protobuf::internal::ClassDataFull DeleteContainerRequest_class_data_;
// -------------------------------------------------------------------

class Container_LabelsEntry_DoNotUse final
    : public ::google::protobuf::internal::MapEntry<::std::string, ::std::string,
                             ::google::protobuf::internal::WireFormatLite::TYPE_STRING,
                             ::google::protobuf::internal::WireFormatLite::TYPE_STRING> {
 public:
  using SuperType =
      ::google::protobuf::internal::MapEntry<::std::string, ::std::string,
                      ::google::protobuf::internal::WireFormatLite::TYPE_STRING,
                      ::google::protobuf::internal::WireFormatLite::TYPE_STRING>;
  Container_LabelsEntry_DoNotUse();
  template <typename = void>
  explicit PROTOBUF_CONSTEXPR Container_LabelsEntry_DoNotUse(::google::protobuf::internal::ConstantInitialized);
  explicit Container_LabelsEntry_DoNotUse(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr const void* PROTOBUF_NONNULL internal_default_instance() {
    return &_Container_LabelsEntry_DoNotUse_default_instance_;
  }


  static constexpr auto InternalGenerateClassData_();

 private:
  friend class ::google::protobuf::MessageLite;
  friend struct ::TableStruct_containers_2eproto;

  friend class ::google::protobuf::internal::TcParser;
  static const ::google::protobuf::internal::TcParseTable<1, 2,
                                   0, 72,
                                   2>
      _table_;

  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_();
};
extern const ::google::protobuf::internal::ClassDataFull Container_LabelsEntry_DoNotUse_class_data_;
// -------------------------------------------------------------------

class Container_Runtime final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:containerd.services.containers.v1.Container.Runtime) */ {
 public:
  inline Container_Runtime() : Container_Runtime(nullptr) {}
  ~Container_Runtime() PROTOBUF_FINAL;

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

  template <typename = void>
  explicit PROTOBUF_CONSTEXPR Container_Runtime(::google::protobuf::internal::ConstantInitialized);

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

  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);
  }
  inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const Container_Runtime& default_instance() {
    return *reinterpret_cast<const Container_Runtime*>(
        &_Container_Runtime_default_instance_);
  }
  static constexpr int kIndexInFileMessages = 1;
  friend void swap(Container_Runtime& a, Container_Runtime& b) { a.Swap(&b); }
  inline void Swap(Container_Runtime* 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(Container_Runtime* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

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

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

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

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::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
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const { return _impl_._cached_size_.Get(); }

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

  explicit Container_Runtime(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Container_Runtime(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Container_Runtime& from);
  Container_Runtime(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Container_Runtime&& from) noexcept
      : Container_Runtime(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_();

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

  // accessors -------------------------------------------------------
  enum : int {
    kNameFieldNumber = 1,
    kOptionsFieldNumber = 2,
  };
  // string name = 1;
  void clear_name() ;
  const ::std::string& name() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_name(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_name();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_name();
  void set_allocated_name(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_name() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_name(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_name();

  public:
  // .google.protobuf.Any options = 2;
  bool has_options() const;
  void clear_options() ;
  const ::google::protobuf::Any& options() const;
  [[nodiscard]] ::google::protobuf::Any* PROTOBUF_NULLABLE release_options();
  ::google::protobuf::Any* PROTOBUF_NONNULL mutable_options();
  void set_allocated_options(::google::protobuf::Any* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_options(::google::protobuf::Any* PROTOBUF_NULLABLE value);
  ::google::protobuf::Any* PROTOBUF_NULLABLE unsafe_arena_release_options();

  private:
  const ::google::protobuf::Any& _internal_options() const;
  ::google::protobuf::Any* PROTOBUF_NONNULL _internal_mutable_options();

  public:
  // @@protoc_insertion_point(class_scope:containerd.services.containers.v1.Container.Runtime)
 private:
  class _Internal;
  friend class ::google::protobuf::internal::TcParser;
  static const ::google::protobuf::internal::TcParseTable<1, 2,
                                   1, 64,
                                   2>
      _table_;

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::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 Container_Runtime& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr name_;
    ::google::protobuf::Any* PROTOBUF_NULLABLE options_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_containers_2eproto;
};

extern const ::google::protobuf::internal::ClassDataFull Container_Runtime_class_data_;
// -------------------------------------------------------------------

class Container_ExtensionsEntry_DoNotUse final
    : public ::google::protobuf::internal::MapEntry<::std::string, ::google::protobuf::Message,
                             ::google::protobuf::internal::WireFormatLite::TYPE_STRING,
                             ::google::protobuf::internal::WireFormatLite::TYPE_MESSAGE> {
 public:
  using SuperType =
      ::google::protobuf::internal::MapEntry<::std::string, ::google::protobuf::Message,
                      ::google::protobuf::internal::WireFormatLite::TYPE_STRING,
                      ::google::protobuf::internal::WireFormatLite::TYPE_MESSAGE>;
  Container_ExtensionsEntry_DoNotUse();
  template <typename = void>
  explicit PROTOBUF_CONSTEXPR Container_ExtensionsEntry_DoNotUse(::google::protobuf::internal::ConstantInitialized);
  explicit Container_ExtensionsEntry_DoNotUse(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  static constexpr const void* PROTOBUF_NONNULL internal_default_instance() {
    return &_Container_ExtensionsEntry_DoNotUse_default_instance_;
  }


  static constexpr auto InternalGenerateClassData_();

 private:
  friend class ::google::protobuf::MessageLite;
  friend struct ::TableStruct_containers_2eproto;

  friend class ::google::protobuf::internal::TcParser;
  static const ::google::protobuf::internal::TcParseTable<1, 2,
                                   1, 71,
                                   2>
      _table_;

  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_();
};
extern const ::google::protobuf::internal::ClassDataFull Container_ExtensionsEntry_DoNotUse_class_data_;
// -------------------------------------------------------------------

class Container final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:containerd.services.containers.v1.Container) */ {
 public:
  inline Container() : Container(nullptr) {}
  ~Container() PROTOBUF_FINAL;

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

  template <typename = void>
  explicit PROTOBUF_CONSTEXPR Container(::google::protobuf::internal::ConstantInitialized);

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

  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);
  }
  inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const Container& default_instance() {
    return *reinterpret_cast<const Container*>(
        &_Container_default_instance_);
  }
  static constexpr int kIndexInFileMessages = 3;
  friend void swap(Container& a, Container& b) { a.Swap(&b); }
  inline void Swap(Container* 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(Container* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

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

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

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

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::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
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const { return _impl_._cached_size_.Get(); }

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

  explicit Container(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  Container(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Container& from);
  Container(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, Container&& from) noexcept
      : Container(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_();

  ::google::protobuf::Metadata GetMetadata() const;
  // nested types ----------------------------------------------------
  using Runtime = Container_Runtime;

  // accessors -------------------------------------------------------
  enum : int {
    kIdFieldNumber = 1,
    kImageFieldNumber = 3,
    kSnapshotterFieldNumber = 6,
    kSnapshotKeyFieldNumber = 7,
    kSandboxFieldNumber = 11,
    kRuntimeFieldNumber = 4,
    kSpecFieldNumber = 5,
    kCreatedAtFieldNumber = 8,
    kUpdatedAtFieldNumber = 9,
    kLabelsFieldNumber = 2,
    kExtensionsFieldNumber = 10,
  };
  // string id = 1;
  void clear_id() ;
  const ::std::string& id() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_id(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_id();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_id();
  void set_allocated_id(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_id() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_id(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_id();

  public:
  // string image = 3;
  void clear_image() ;
  const ::std::string& image() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_image(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_image();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_image();
  void set_allocated_image(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_image() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_image(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_image();

  public:
  // string snapshotter = 6;
  void clear_snapshotter() ;
  const ::std::string& snapshotter() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_snapshotter(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_snapshotter();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_snapshotter();
  void set_allocated_snapshotter(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_snapshotter() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_snapshotter(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_snapshotter();

  public:
  // string snapshot_key = 7;
  void clear_snapshot_key() ;
  const ::std::string& snapshot_key() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_snapshot_key(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_snapshot_key();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_snapshot_key();
  void set_allocated_snapshot_key(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_snapshot_key() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_snapshot_key(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_snapshot_key();

  public:
  // string sandbox = 11;
  void clear_sandbox() ;
  const ::std::string& sandbox() const;
  template <typename Arg_ = const ::std::string&, typename... Args_>
  void set_sandbox(Arg_&& arg, Args_... args);
  ::std::string* PROTOBUF_NONNULL mutable_sandbox();
  [[nodiscard]] ::std::string* PROTOBUF_NULLABLE release_sandbox();
  void set_allocated_sandbox(::std::string* PROTOBUF_NULLABLE value);

  private:
  const ::std::string& _internal_sandbox() const;
  PROTOBUF_ALWAYS_INLINE void _internal_set_sandbox(const ::std::string& value);
  ::std::string* PROTOBUF_NONNULL _internal_mutable_sandbox();

  public:
  // .containerd.services.containers.v1.Container.Runtime runtime = 4;
  bool has_runtime() const;
  void clear_runtime() ;
  const ::containerd::services::containers::v1::Container_Runtime& runtime() const;
  [[nodiscard]] ::containerd::services::containers::v1::Container_Runtime* PROTOBUF_NULLABLE release_runtime();
  ::containerd::services::containers::v1::Container_Runtime* PROTOBUF_NONNULL mutable_runtime();
  void set_allocated_runtime(::containerd::services::containers::v1::Container_Runtime* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_runtime(::containerd::services::containers::v1::Container_Runtime* PROTOBUF_NULLABLE value);
  ::containerd::services::containers::v1::Container_Runtime* PROTOBUF_NULLABLE unsafe_arena_release_runtime();

  private:
  const ::containerd::services::containers::v1::Container_Runtime& _internal_runtime() const;
  ::containerd::services::containers::v1::Container_Runtime* PROTOBUF_NONNULL _internal_mutable_runtime();

  public:
  // .google.protobuf.Any spec = 5;
  bool has_spec() const;
  void clear_spec() ;
  const ::google::protobuf::Any& spec() const;
  [[nodiscard]] ::google::protobuf::Any* PROTOBUF_NULLABLE release_spec();
  ::google::protobuf::Any* PROTOBUF_NONNULL mutable_spec();
  void set_allocated_spec(::google::protobuf::Any* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_spec(::google::protobuf::Any* PROTOBUF_NULLABLE value);
  ::google::protobuf::Any* PROTOBUF_NULLABLE unsafe_arena_release_spec();

  private:
  const ::google::protobuf::Any& _internal_spec() const;
  ::google::protobuf::Any* PROTOBUF_NONNULL _internal_mutable_spec();

  public:
  // .google.protobuf.Timestamp created_at = 8;
  bool has_created_at() const;
  void clear_created_at() ;
  const ::google::protobuf::Timestamp& created_at() const;
  [[nodiscard]] ::google::protobuf::Timestamp* PROTOBUF_NULLABLE release_created_at();
  ::google::protobuf::Timestamp* PROTOBUF_NONNULL mutable_created_at();
  void set_allocated_created_at(::google::protobuf::Timestamp* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_created_at(::google::protobuf::Timestamp* PROTOBUF_NULLABLE value);
  ::google::protobuf::Timestamp* PROTOBUF_NULLABLE unsafe_arena_release_created_at();

  private:
  const ::google::protobuf::Timestamp& _internal_created_at() const;
  ::google::protobuf::Timestamp* PROTOBUF_NONNULL _internal_mutable_created_at();

  public:
  // .google.protobuf.Timestamp updated_at = 9;
  bool has_updated_at() const;
  void clear_updated_at() ;
  const ::google::protobuf::Timestamp& updated_at() const;
  [[nodiscard]] ::google::protobuf::Timestamp* PROTOBUF_NULLABLE release_updated_at();
  ::google::protobuf::Timestamp* PROTOBUF_NONNULL mutable_updated_at();
  void set_allocated_updated_at(::google::protobuf::Timestamp* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_updated_at(::google::protobuf::Timestamp* PROTOBUF_NULLABLE value);
  ::google::protobuf::Timestamp* PROTOBUF_NULLABLE unsafe_arena_release_updated_at();

  private:
  const ::google::protobuf::Timestamp& _internal_updated_at() const;
  ::google::protobuf::Timestamp* PROTOBUF_NONNULL _internal_mutable_updated_at();

  public:
  // map<string, string> labels = 2;
  int labels_size() const;
  private:
  int _internal_labels_size() const;

  public:
  void clear_labels() ;
  const ::google::protobuf::Map<::std::string, ::std::string>& labels() const;
  ::google::protobuf::Map<::std::string, ::std::string>* PROTOBUF_NONNULL mutable_labels();

  private:
  const ::google::protobuf::Map<::std::string, ::std::string>& _internal_labels() const;
  ::google::protobuf::Map<::std::string, ::std::string>* PROTOBUF_NONNULL _internal_mutable_labels();

  public:
  // map<string, .google.protobuf.Any> extensions = 10;
  int extensions_size() const;
  private:
  int _internal_extensions_size() const;

  public:
  void clear_extensions() ;
  const ::google::protobuf::Map<::std::string, ::google::protobuf::Any>& extensions() const;
  ::google::protobuf::Map<::std::string, ::google::protobuf::Any>* PROTOBUF_NONNULL mutable_extensions();

  private:
  const ::google::protobuf::Map<::std::string, ::google::protobuf::Any>& _internal_extensions() const;
  ::google::protobuf::Map<::std::string, ::google::protobuf::Any>* PROTOBUF_NONNULL _internal_mutable_extensions();

  public:
  // @@protoc_insertion_point(class_scope:containerd.services.containers.v1.Container)
 private:
  class _Internal;
  friend class ::google::protobuf::internal::TcParser;
  static const ::google::protobuf::internal::TcParseTable<4, 11,
                                   7, 113,
                                   2>
      _table_;

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::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 Container& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::internal::ArenaStringPtr id_;
    ::google::protobuf::internal::ArenaStringPtr image_;
    ::google::protobuf::internal::ArenaStringPtr snapshotter_;
    ::google::protobuf::internal::ArenaStringPtr snapshot_key_;
    ::google::protobuf::internal::ArenaStringPtr sandbox_;
    ::containerd::services::containers::v1::Container_Runtime* PROTOBUF_NULLABLE runtime_;
    ::google::protobuf::Any* PROTOBUF_NULLABLE spec_;
    ::google::protobuf::Timestamp* PROTOBUF_NULLABLE created_at_;
    ::google::protobuf::Timestamp* PROTOBUF_NULLABLE updated_at_;
    ::google::protobuf::internal::MapField<Container_LabelsEntry_DoNotUse, ::std::string, ::std::string,
                      ::google::protobuf::internal::WireFormatLite::TYPE_STRING,
                      ::google::protobuf::internal::WireFormatLite::TYPE_STRING>
        labels_;
    ::google::protobuf::internal::MapField<Container_ExtensionsEntry_DoNotUse, ::std::string, ::google::protobuf::Any,
                      ::google::protobuf::internal::WireFormatLite::TYPE_STRING,
                      ::google::protobuf::internal::WireFormatLite::TYPE_MESSAGE>
        extensions_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_containers_2eproto;
};

extern const ::google::protobuf::internal::ClassDataFull Container_class_data_;
// -------------------------------------------------------------------

class UpdateContainerResponse final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:containerd.services.containers.v1.UpdateContainerResponse) */ {
 public:
  inline UpdateContainerResponse() : UpdateContainerResponse(nullptr) {}
  ~UpdateContainerResponse() PROTOBUF_FINAL;

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

  template <typename = void>
  explicit PROTOBUF_CONSTEXPR UpdateContainerResponse(::google::protobuf::internal::ConstantInitialized);

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

  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);
  }
  inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const UpdateContainerResponse& default_instance() {
    return *reinterpret_cast<const UpdateContainerResponse*>(
        &_UpdateContainerResponse_default_instance_);
  }
  static constexpr int kIndexInFileMessages = 11;
  friend void swap(UpdateContainerResponse& a, UpdateContainerResponse& b) { a.Swap(&b); }
  inline void Swap(UpdateContainerResponse* 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(UpdateContainerResponse* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

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

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

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

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::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
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const { return _impl_._cached_size_.Get(); }

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

  explicit UpdateContainerResponse(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  UpdateContainerResponse(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const UpdateContainerResponse& from);
  UpdateContainerResponse(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, UpdateContainerResponse&& from) noexcept
      : UpdateContainerResponse(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_();

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

  // accessors -------------------------------------------------------
  enum : int {
    kContainerFieldNumber = 1,
  };
  // .containerd.services.containers.v1.Container container = 1;
  bool has_container() const;
  void clear_container() ;
  const ::containerd::services::containers::v1::Container& container() const;
  [[nodiscard]] ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE release_container();
  ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL mutable_container();
  void set_allocated_container(::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_container(::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value);
  ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE unsafe_arena_release_container();

  private:
  const ::containerd::services::containers::v1::Container& _internal_container() const;
  ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL _internal_mutable_container();

  public:
  // @@protoc_insertion_point(class_scope:containerd.services.containers.v1.UpdateContainerResponse)
 private:
  class _Internal;
  friend class ::google::protobuf::internal::TcParser;
  static const ::google::protobuf::internal::TcParseTable<0, 1,
                                   1, 0,
                                   2>
      _table_;

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::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 UpdateContainerResponse& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE container_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_containers_2eproto;
};

extern const ::google::protobuf::internal::ClassDataFull UpdateContainerResponse_class_data_;
// -------------------------------------------------------------------

class UpdateContainerRequest final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:containerd.services.containers.v1.UpdateContainerRequest) */ {
 public:
  inline UpdateContainerRequest() : UpdateContainerRequest(nullptr) {}
  ~UpdateContainerRequest() PROTOBUF_FINAL;

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

  template <typename = void>
  explicit PROTOBUF_CONSTEXPR UpdateContainerRequest(::google::protobuf::internal::ConstantInitialized);

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

  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);
  }
  inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const UpdateContainerRequest& default_instance() {
    return *reinterpret_cast<const UpdateContainerRequest*>(
        &_UpdateContainerRequest_default_instance_);
  }
  static constexpr int kIndexInFileMessages = 10;
  friend void swap(UpdateContainerRequest& a, UpdateContainerRequest& b) { a.Swap(&b); }
  inline void Swap(UpdateContainerRequest* 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(UpdateContainerRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

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

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

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

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::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
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const { return _impl_._cached_size_.Get(); }

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

  explicit UpdateContainerRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  UpdateContainerRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const UpdateContainerRequest& from);
  UpdateContainerRequest(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, UpdateContainerRequest&& from) noexcept
      : UpdateContainerRequest(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_();

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

  // accessors -------------------------------------------------------
  enum : int {
    kContainerFieldNumber = 1,
    kUpdateMaskFieldNumber = 2,
  };
  // .containerd.services.containers.v1.Container container = 1;
  bool has_container() const;
  void clear_container() ;
  const ::containerd::services::containers::v1::Container& container() const;
  [[nodiscard]] ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE release_container();
  ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL mutable_container();
  void set_allocated_container(::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_container(::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value);
  ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE unsafe_arena_release_container();

  private:
  const ::containerd::services::containers::v1::Container& _internal_container() const;
  ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL _internal_mutable_container();

  public:
  // .google.protobuf.FieldMask update_mask = 2;
  bool has_update_mask() const;
  void clear_update_mask() ;
  const ::google::protobuf::FieldMask& update_mask() const;
  [[nodiscard]] ::google::protobuf::FieldMask* PROTOBUF_NULLABLE release_update_mask();
  ::google::protobuf::FieldMask* PROTOBUF_NONNULL mutable_update_mask();
  void set_allocated_update_mask(::google::protobuf::FieldMask* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_update_mask(::google::protobuf::FieldMask* PROTOBUF_NULLABLE value);
  ::google::protobuf::FieldMask* PROTOBUF_NULLABLE unsafe_arena_release_update_mask();

  private:
  const ::google::protobuf::FieldMask& _internal_update_mask() const;
  ::google::protobuf::FieldMask* PROTOBUF_NONNULL _internal_mutable_update_mask();

  public:
  // @@protoc_insertion_point(class_scope:containerd.services.containers.v1.UpdateContainerRequest)
 private:
  class _Internal;
  friend class ::google::protobuf::internal::TcParser;
  static const ::google::protobuf::internal::TcParseTable<1, 2,
                                   2, 0,
                                   2>
      _table_;

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::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 UpdateContainerRequest& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE container_;
    ::google::protobuf::FieldMask* PROTOBUF_NULLABLE update_mask_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_containers_2eproto;
};

extern const ::google::protobuf::internal::ClassDataFull UpdateContainerRequest_class_data_;
// -------------------------------------------------------------------

class ListContainersResponse final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:containerd.services.containers.v1.ListContainersResponse) */ {
 public:
  inline ListContainersResponse() : ListContainersResponse(nullptr) {}
  ~ListContainersResponse() PROTOBUF_FINAL;

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

  template <typename = void>
  explicit PROTOBUF_CONSTEXPR ListContainersResponse(::google::protobuf::internal::ConstantInitialized);

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

  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);
  }
  inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const ListContainersResponse& default_instance() {
    return *reinterpret_cast<const ListContainersResponse*>(
        &_ListContainersResponse_default_instance_);
  }
  static constexpr int kIndexInFileMessages = 7;
  friend void swap(ListContainersResponse& a, ListContainersResponse& b) { a.Swap(&b); }
  inline void Swap(ListContainersResponse* 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(ListContainersResponse* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

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

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

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

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::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
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const { return _impl_._cached_size_.Get(); }

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

  explicit ListContainersResponse(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  ListContainersResponse(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const ListContainersResponse& from);
  ListContainersResponse(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, ListContainersResponse&& from) noexcept
      : ListContainersResponse(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_();

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

  // accessors -------------------------------------------------------
  enum : int {
    kContainersFieldNumber = 1,
  };
  // repeated .containerd.services.containers.v1.Container containers = 1;
  int containers_size() const;
  private:
  int _internal_containers_size() const;

  public:
  void clear_containers() ;
  ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL mutable_containers(int index);
  ::google::protobuf::RepeatedPtrField<::containerd::services::containers::v1::Container>* PROTOBUF_NONNULL mutable_containers();

  private:
  const ::google::protobuf::RepeatedPtrField<::containerd::services::containers::v1::Container>& _internal_containers() const;
  ::google::protobuf::RepeatedPtrField<::containerd::services::containers::v1::Container>* PROTOBUF_NONNULL _internal_mutable_containers();
  public:
  const ::containerd::services::containers::v1::Container& containers(int index) const;
  ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL add_containers();
  const ::google::protobuf::RepeatedPtrField<::containerd::services::containers::v1::Container>& containers() const;
  // @@protoc_insertion_point(class_scope:containerd.services.containers.v1.ListContainersResponse)
 private:
  class _Internal;
  friend class ::google::protobuf::internal::TcParser;
  static const ::google::protobuf::internal::TcParseTable<0, 1,
                                   1, 0,
                                   2>
      _table_;

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::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 ListContainersResponse& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::google::protobuf::RepeatedPtrField< ::containerd::services::containers::v1::Container > containers_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_containers_2eproto;
};

extern const ::google::protobuf::internal::ClassDataFull ListContainersResponse_class_data_;
// -------------------------------------------------------------------

class ListContainerMessage final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:containerd.services.containers.v1.ListContainerMessage) */ {
 public:
  inline ListContainerMessage() : ListContainerMessage(nullptr) {}
  ~ListContainerMessage() PROTOBUF_FINAL;

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

  template <typename = void>
  explicit PROTOBUF_CONSTEXPR ListContainerMessage(::google::protobuf::internal::ConstantInitialized);

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

  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);
  }
  inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const ListContainerMessage& default_instance() {
    return *reinterpret_cast<const ListContainerMessage*>(
        &_ListContainerMessage_default_instance_);
  }
  static constexpr int kIndexInFileMessages = 13;
  friend void swap(ListContainerMessage& a, ListContainerMessage& b) { a.Swap(&b); }
  inline void Swap(ListContainerMessage* 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(ListContainerMessage* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

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

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

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

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::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
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const { return _impl_._cached_size_.Get(); }

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

  explicit ListContainerMessage(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  ListContainerMessage(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const ListContainerMessage& from);
  ListContainerMessage(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, ListContainerMessage&& from) noexcept
      : ListContainerMessage(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_();

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

  // accessors -------------------------------------------------------
  enum : int {
    kContainerFieldNumber = 1,
  };
  // .containerd.services.containers.v1.Container container = 1;
  bool has_container() const;
  void clear_container() ;
  const ::containerd::services::containers::v1::Container& container() const;
  [[nodiscard]] ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE release_container();
  ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL mutable_container();
  void set_allocated_container(::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_container(::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value);
  ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE unsafe_arena_release_container();

  private:
  const ::containerd::services::containers::v1::Container& _internal_container() const;
  ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL _internal_mutable_container();

  public:
  // @@protoc_insertion_point(class_scope:containerd.services.containers.v1.ListContainerMessage)
 private:
  class _Internal;
  friend class ::google::protobuf::internal::TcParser;
  static const ::google::protobuf::internal::TcParseTable<0, 1,
                                   1, 0,
                                   2>
      _table_;

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::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 ListContainerMessage& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE container_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_containers_2eproto;
};

extern const ::google::protobuf::internal::ClassDataFull ListContainerMessage_class_data_;
// -------------------------------------------------------------------

class GetContainerResponse final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:containerd.services.containers.v1.GetContainerResponse) */ {
 public:
  inline GetContainerResponse() : GetContainerResponse(nullptr) {}
  ~GetContainerResponse() PROTOBUF_FINAL;

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

  template <typename = void>
  explicit PROTOBUF_CONSTEXPR GetContainerResponse(::google::protobuf::internal::ConstantInitialized);

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

  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);
  }
  inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const GetContainerResponse& default_instance() {
    return *reinterpret_cast<const GetContainerResponse*>(
        &_GetContainerResponse_default_instance_);
  }
  static constexpr int kIndexInFileMessages = 5;
  friend void swap(GetContainerResponse& a, GetContainerResponse& b) { a.Swap(&b); }
  inline void Swap(GetContainerResponse* 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(GetContainerResponse* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

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

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

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

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::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
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const { return _impl_._cached_size_.Get(); }

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

  explicit GetContainerResponse(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  GetContainerResponse(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const GetContainerResponse& from);
  GetContainerResponse(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, GetContainerResponse&& from) noexcept
      : GetContainerResponse(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_();

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

  // accessors -------------------------------------------------------
  enum : int {
    kContainerFieldNumber = 1,
  };
  // .containerd.services.containers.v1.Container container = 1;
  bool has_container() const;
  void clear_container() ;
  const ::containerd::services::containers::v1::Container& container() const;
  [[nodiscard]] ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE release_container();
  ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL mutable_container();
  void set_allocated_container(::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_container(::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value);
  ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE unsafe_arena_release_container();

  private:
  const ::containerd::services::containers::v1::Container& _internal_container() const;
  ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL _internal_mutable_container();

  public:
  // @@protoc_insertion_point(class_scope:containerd.services.containers.v1.GetContainerResponse)
 private:
  class _Internal;
  friend class ::google::protobuf::internal::TcParser;
  static const ::google::protobuf::internal::TcParseTable<0, 1,
                                   1, 0,
                                   2>
      _table_;

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::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 GetContainerResponse& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE container_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_containers_2eproto;
};

extern const ::google::protobuf::internal::ClassDataFull GetContainerResponse_class_data_;
// -------------------------------------------------------------------

class CreateContainerResponse final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:containerd.services.containers.v1.CreateContainerResponse) */ {
 public:
  inline CreateContainerResponse() : CreateContainerResponse(nullptr) {}
  ~CreateContainerResponse() PROTOBUF_FINAL;

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

  template <typename = void>
  explicit PROTOBUF_CONSTEXPR CreateContainerResponse(::google::protobuf::internal::ConstantInitialized);

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

  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);
  }
  inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const CreateContainerResponse& default_instance() {
    return *reinterpret_cast<const CreateContainerResponse*>(
        &_CreateContainerResponse_default_instance_);
  }
  static constexpr int kIndexInFileMessages = 9;
  friend void swap(CreateContainerResponse& a, CreateContainerResponse& b) { a.Swap(&b); }
  inline void Swap(CreateContainerResponse* 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(CreateContainerResponse* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

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

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

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

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::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
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const { return _impl_._cached_size_.Get(); }

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

  explicit CreateContainerResponse(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  CreateContainerResponse(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const CreateContainerResponse& from);
  CreateContainerResponse(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, CreateContainerResponse&& from) noexcept
      : CreateContainerResponse(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_();

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

  // accessors -------------------------------------------------------
  enum : int {
    kContainerFieldNumber = 1,
  };
  // .containerd.services.containers.v1.Container container = 1;
  bool has_container() const;
  void clear_container() ;
  const ::containerd::services::containers::v1::Container& container() const;
  [[nodiscard]] ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE release_container();
  ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL mutable_container();
  void set_allocated_container(::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_container(::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value);
  ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE unsafe_arena_release_container();

  private:
  const ::containerd::services::containers::v1::Container& _internal_container() const;
  ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL _internal_mutable_container();

  public:
  // @@protoc_insertion_point(class_scope:containerd.services.containers.v1.CreateContainerResponse)
 private:
  class _Internal;
  friend class ::google::protobuf::internal::TcParser;
  static const ::google::protobuf::internal::TcParseTable<0, 1,
                                   1, 0,
                                   2>
      _table_;

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::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 CreateContainerResponse& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE container_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_containers_2eproto;
};

extern const ::google::protobuf::internal::ClassDataFull CreateContainerResponse_class_data_;
// -------------------------------------------------------------------

class CreateContainerRequest final : public ::google::protobuf::Message
/* @@protoc_insertion_point(class_definition:containerd.services.containers.v1.CreateContainerRequest) */ {
 public:
  inline CreateContainerRequest() : CreateContainerRequest(nullptr) {}
  ~CreateContainerRequest() PROTOBUF_FINAL;

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

  template <typename = void>
  explicit PROTOBUF_CONSTEXPR CreateContainerRequest(::google::protobuf::internal::ConstantInitialized);

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

  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);
  }
  inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
      ABSL_ATTRIBUTE_LIFETIME_BOUND {
    return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
  }

  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
    return GetDescriptor();
  }
  static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
    return default_instance().GetMetadata().descriptor;
  }
  static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
    return default_instance().GetMetadata().reflection;
  }
  static const CreateContainerRequest& default_instance() {
    return *reinterpret_cast<const CreateContainerRequest*>(
        &_CreateContainerRequest_default_instance_);
  }
  static constexpr int kIndexInFileMessages = 8;
  friend void swap(CreateContainerRequest& a, CreateContainerRequest& b) { a.Swap(&b); }
  inline void Swap(CreateContainerRequest* 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(CreateContainerRequest* PROTOBUF_NONNULL other) {
    if (other == this) return;
    ABSL_DCHECK(GetArena() == other->GetArena());
    InternalSwap(other);
  }

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

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

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

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

  public:
  ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
  ::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
  ::size_t ByteSizeLong() const final;
  ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
      ::uint8_t* PROTOBUF_NONNULL target,
      ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
  #endif  // PROTOBUF_CUSTOM_VTABLE
  int GetCachedSize() const { return _impl_._cached_size_.Get(); }

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

  explicit CreateContainerRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
  CreateContainerRequest(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const CreateContainerRequest& from);
  CreateContainerRequest(
      ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, CreateContainerRequest&& from) noexcept
      : CreateContainerRequest(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_();

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

  // accessors -------------------------------------------------------
  enum : int {
    kContainerFieldNumber = 1,
  };
  // .containerd.services.containers.v1.Container container = 1;
  bool has_container() const;
  void clear_container() ;
  const ::containerd::services::containers::v1::Container& container() const;
  [[nodiscard]] ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE release_container();
  ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL mutable_container();
  void set_allocated_container(::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value);
  void unsafe_arena_set_allocated_container(::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value);
  ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE unsafe_arena_release_container();

  private:
  const ::containerd::services::containers::v1::Container& _internal_container() const;
  ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL _internal_mutable_container();

  public:
  // @@protoc_insertion_point(class_scope:containerd.services.containers.v1.CreateContainerRequest)
 private:
  class _Internal;
  friend class ::google::protobuf::internal::TcParser;
  static const ::google::protobuf::internal::TcParseTable<0, 1,
                                   1, 0,
                                   2>
      _table_;

  friend class ::google::protobuf::MessageLite;
  friend class ::google::protobuf::Arena;
  template <typename T>
  friend class ::google::protobuf::Arena::InternalHelper;
  using InternalArenaConstructable_ = void;
  using DestructorSkippable_ = void;
  struct Impl_ {
    inline explicit constexpr Impl_(::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 CreateContainerRequest& from_msg);
    ::google::protobuf::internal::HasBits<1> _has_bits_;
    ::google::protobuf::internal::CachedSize _cached_size_;
    ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE container_;
    PROTOBUF_TSAN_DECLARE_MEMBER
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_containers_2eproto;
};

extern const ::google::protobuf::internal::ClassDataFull CreateContainerRequest_class_data_;

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




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


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

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

// Container_Runtime

// string name = 1;
inline void Container_Runtime::clear_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.name_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0],
                  0x00000001U);
}
inline const ::std::string& Container_Runtime::name() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.Container.Runtime.name)
  return _internal_name();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Container_Runtime::set_name(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.name_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:containerd.services.containers.v1.Container.Runtime.name)
}
inline ::std::string* PROTOBUF_NONNULL Container_Runtime::mutable_name()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_name();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.Container.Runtime.name)
  return _s;
}
inline const ::std::string& Container_Runtime::_internal_name() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.name_.Get();
}
inline void Container_Runtime::_internal_set_name(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.name_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Container_Runtime::_internal_mutable_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.name_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Container_Runtime::release_name() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.Container.Runtime.name)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.name_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.name_.Set("", GetArena());
  }
  return released;
}
inline void Container_Runtime::set_allocated_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_.name_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.name_.IsDefault()) {
    _impl_.name_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.Container.Runtime.name)
}

// .google.protobuf.Any options = 2;
inline bool Container_Runtime::has_options() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
  PROTOBUF_ASSUME(!value || _impl_.options_ != nullptr);
  return value;
}
inline const ::google::protobuf::Any& Container_Runtime::_internal_options() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::google::protobuf::Any* p = _impl_.options_;
  return p != nullptr ? *p : reinterpret_cast<const ::google::protobuf::Any&>(::google::protobuf::_Any_default_instance_);
}
inline const ::google::protobuf::Any& Container_Runtime::options() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.Container.Runtime.options)
  return _internal_options();
}
inline void Container_Runtime::unsafe_arena_set_allocated_options(
    ::google::protobuf::Any* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.options_);
  }
  _impl_.options_ = reinterpret_cast<::google::protobuf::Any*>(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:containerd.services.containers.v1.Container.Runtime.options)
}
inline ::google::protobuf::Any* PROTOBUF_NULLABLE Container_Runtime::release_options() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::google::protobuf::Any* released = _impl_.options_;
  _impl_.options_ = 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 ::google::protobuf::Any* PROTOBUF_NULLABLE Container_Runtime::unsafe_arena_release_options() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.Container.Runtime.options)

  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::google::protobuf::Any* temp = _impl_.options_;
  _impl_.options_ = nullptr;
  return temp;
}
inline ::google::protobuf::Any* PROTOBUF_NONNULL Container_Runtime::_internal_mutable_options() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.options_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::google::protobuf::Any>(GetArena());
    _impl_.options_ = reinterpret_cast<::google::protobuf::Any*>(p);
  }
  return _impl_.options_;
}
inline ::google::protobuf::Any* PROTOBUF_NONNULL Container_Runtime::mutable_options()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::google::protobuf::Any* _msg = _internal_mutable_options();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.Container.Runtime.options)
  return _msg;
}
inline void Container_Runtime::set_allocated_options(::google::protobuf::Any* 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_.options_);
  }

  if (value != nullptr) {
    ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(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_.options_ = reinterpret_cast<::google::protobuf::Any*>(value);
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.Container.Runtime.options)
}

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

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

// Container

// string id = 1;
inline void Container::clear_id() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.id_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0],
                  0x00000001U);
}
inline const ::std::string& Container::id() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.Container.id)
  return _internal_id();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Container::set_id(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.id_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:containerd.services.containers.v1.Container.id)
}
inline ::std::string* PROTOBUF_NONNULL Container::mutable_id()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_id();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.Container.id)
  return _s;
}
inline const ::std::string& Container::_internal_id() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.id_.Get();
}
inline void Container::_internal_set_id(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.id_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Container::_internal_mutable_id() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.id_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Container::release_id() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.Container.id)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.id_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.id_.Set("", GetArena());
  }
  return released;
}
inline void Container::set_allocated_id(::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_.id_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.id_.IsDefault()) {
    _impl_.id_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.Container.id)
}

// map<string, string> labels = 2;
inline int Container::_internal_labels_size() const {
  return _internal_labels().size();
}
inline int Container::labels_size() const {
  return _internal_labels_size();
}
inline void Container::clear_labels() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.labels_.Clear();
  ClearHasBitForRepeated(_impl_._has_bits_[0],
                  0x00000200U);
}
inline const ::google::protobuf::Map<::std::string, ::std::string>& Container::_internal_labels() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.labels_.GetMap();
}
inline const ::google::protobuf::Map<::std::string, ::std::string>& Container::labels() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_map:containerd.services.containers.v1.Container.labels)
  return _internal_labels();
}
inline ::google::protobuf::Map<::std::string, ::std::string>* PROTOBUF_NONNULL Container::_internal_mutable_labels() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.labels_.MutableMap();
}
inline ::google::protobuf::Map<::std::string, ::std::string>* PROTOBUF_NONNULL Container::mutable_labels()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000200U);
  // @@protoc_insertion_point(field_mutable_map:containerd.services.containers.v1.Container.labels)
  return _internal_mutable_labels();
}

// string image = 3;
inline void Container::clear_image() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.image_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0],
                  0x00000002U);
}
inline const ::std::string& Container::image() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.Container.image)
  return _internal_image();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Container::set_image(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  _impl_.image_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:containerd.services.containers.v1.Container.image)
}
inline ::std::string* PROTOBUF_NONNULL Container::mutable_image()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::std::string* _s = _internal_mutable_image();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.Container.image)
  return _s;
}
inline const ::std::string& Container::_internal_image() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.image_.Get();
}
inline void Container::_internal_set_image(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.image_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Container::_internal_mutable_image() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.image_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Container::release_image() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.Container.image)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000002U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  auto* released = _impl_.image_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.image_.Set("", GetArena());
  }
  return released;
}
inline void Container::set_allocated_image(::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_.image_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.image_.IsDefault()) {
    _impl_.image_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.Container.image)
}

// .containerd.services.containers.v1.Container.Runtime runtime = 4;
inline bool Container::has_runtime() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000020U);
  PROTOBUF_ASSUME(!value || _impl_.runtime_ != nullptr);
  return value;
}
inline void Container::clear_runtime() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.runtime_ != nullptr) _impl_.runtime_->Clear();
  ClearHasBit(_impl_._has_bits_[0],
                  0x00000020U);
}
inline const ::containerd::services::containers::v1::Container_Runtime& Container::_internal_runtime() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::containerd::services::containers::v1::Container_Runtime* p = _impl_.runtime_;
  return p != nullptr ? *p : reinterpret_cast<const ::containerd::services::containers::v1::Container_Runtime&>(::containerd::services::containers::v1::_Container_Runtime_default_instance_);
}
inline const ::containerd::services::containers::v1::Container_Runtime& Container::runtime() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.Container.runtime)
  return _internal_runtime();
}
inline void Container::unsafe_arena_set_allocated_runtime(
    ::containerd::services::containers::v1::Container_Runtime* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.runtime_);
  }
  _impl_.runtime_ = reinterpret_cast<::containerd::services::containers::v1::Container_Runtime*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000020U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000020U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:containerd.services.containers.v1.Container.runtime)
}
inline ::containerd::services::containers::v1::Container_Runtime* PROTOBUF_NULLABLE Container::release_runtime() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000020U);
  ::containerd::services::containers::v1::Container_Runtime* released = _impl_.runtime_;
  _impl_.runtime_ = 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 ::containerd::services::containers::v1::Container_Runtime* PROTOBUF_NULLABLE Container::unsafe_arena_release_runtime() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.Container.runtime)

  ClearHasBit(_impl_._has_bits_[0], 0x00000020U);
  ::containerd::services::containers::v1::Container_Runtime* temp = _impl_.runtime_;
  _impl_.runtime_ = nullptr;
  return temp;
}
inline ::containerd::services::containers::v1::Container_Runtime* PROTOBUF_NONNULL Container::_internal_mutable_runtime() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.runtime_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::containerd::services::containers::v1::Container_Runtime>(GetArena());
    _impl_.runtime_ = reinterpret_cast<::containerd::services::containers::v1::Container_Runtime*>(p);
  }
  return _impl_.runtime_;
}
inline ::containerd::services::containers::v1::Container_Runtime* PROTOBUF_NONNULL Container::mutable_runtime()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000020U);
  ::containerd::services::containers::v1::Container_Runtime* _msg = _internal_mutable_runtime();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.Container.runtime)
  return _msg;
}
inline void Container::set_allocated_runtime(::containerd::services::containers::v1::Container_Runtime* 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_.runtime_);
  }

  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], 0x00000020U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000020U);
  }

  _impl_.runtime_ = reinterpret_cast<::containerd::services::containers::v1::Container_Runtime*>(value);
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.Container.runtime)
}

// .google.protobuf.Any spec = 5;
inline bool Container::has_spec() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000040U);
  PROTOBUF_ASSUME(!value || _impl_.spec_ != nullptr);
  return value;
}
inline const ::google::protobuf::Any& Container::_internal_spec() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::google::protobuf::Any* p = _impl_.spec_;
  return p != nullptr ? *p : reinterpret_cast<const ::google::protobuf::Any&>(::google::protobuf::_Any_default_instance_);
}
inline const ::google::protobuf::Any& Container::spec() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.Container.spec)
  return _internal_spec();
}
inline void Container::unsafe_arena_set_allocated_spec(
    ::google::protobuf::Any* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.spec_);
  }
  _impl_.spec_ = reinterpret_cast<::google::protobuf::Any*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000040U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000040U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:containerd.services.containers.v1.Container.spec)
}
inline ::google::protobuf::Any* PROTOBUF_NULLABLE Container::release_spec() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000040U);
  ::google::protobuf::Any* released = _impl_.spec_;
  _impl_.spec_ = 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 ::google::protobuf::Any* PROTOBUF_NULLABLE Container::unsafe_arena_release_spec() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.Container.spec)

  ClearHasBit(_impl_._has_bits_[0], 0x00000040U);
  ::google::protobuf::Any* temp = _impl_.spec_;
  _impl_.spec_ = nullptr;
  return temp;
}
inline ::google::protobuf::Any* PROTOBUF_NONNULL Container::_internal_mutable_spec() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.spec_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::google::protobuf::Any>(GetArena());
    _impl_.spec_ = reinterpret_cast<::google::protobuf::Any*>(p);
  }
  return _impl_.spec_;
}
inline ::google::protobuf::Any* PROTOBUF_NONNULL Container::mutable_spec()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000040U);
  ::google::protobuf::Any* _msg = _internal_mutable_spec();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.Container.spec)
  return _msg;
}
inline void Container::set_allocated_spec(::google::protobuf::Any* 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_.spec_);
  }

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

  _impl_.spec_ = reinterpret_cast<::google::protobuf::Any*>(value);
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.Container.spec)
}

// string snapshotter = 6;
inline void Container::clear_snapshotter() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.snapshotter_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0],
                  0x00000004U);
}
inline const ::std::string& Container::snapshotter() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.Container.snapshotter)
  return _internal_snapshotter();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Container::set_snapshotter(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  _impl_.snapshotter_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:containerd.services.containers.v1.Container.snapshotter)
}
inline ::std::string* PROTOBUF_NONNULL Container::mutable_snapshotter()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000004U);
  ::std::string* _s = _internal_mutable_snapshotter();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.Container.snapshotter)
  return _s;
}
inline const ::std::string& Container::_internal_snapshotter() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.snapshotter_.Get();
}
inline void Container::_internal_set_snapshotter(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.snapshotter_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Container::_internal_mutable_snapshotter() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.snapshotter_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Container::release_snapshotter() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.Container.snapshotter)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000004U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
  auto* released = _impl_.snapshotter_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.snapshotter_.Set("", GetArena());
  }
  return released;
}
inline void Container::set_allocated_snapshotter(::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_.snapshotter_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.snapshotter_.IsDefault()) {
    _impl_.snapshotter_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.Container.snapshotter)
}

// string snapshot_key = 7;
inline void Container::clear_snapshot_key() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.snapshot_key_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0],
                  0x00000008U);
}
inline const ::std::string& Container::snapshot_key() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.Container.snapshot_key)
  return _internal_snapshot_key();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Container::set_snapshot_key(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  _impl_.snapshot_key_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:containerd.services.containers.v1.Container.snapshot_key)
}
inline ::std::string* PROTOBUF_NONNULL Container::mutable_snapshot_key()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000008U);
  ::std::string* _s = _internal_mutable_snapshot_key();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.Container.snapshot_key)
  return _s;
}
inline const ::std::string& Container::_internal_snapshot_key() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.snapshot_key_.Get();
}
inline void Container::_internal_set_snapshot_key(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.snapshot_key_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Container::_internal_mutable_snapshot_key() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.snapshot_key_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Container::release_snapshot_key() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.Container.snapshot_key)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000008U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000008U);
  auto* released = _impl_.snapshot_key_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.snapshot_key_.Set("", GetArena());
  }
  return released;
}
inline void Container::set_allocated_snapshot_key(::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_.snapshot_key_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.snapshot_key_.IsDefault()) {
    _impl_.snapshot_key_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.Container.snapshot_key)
}

// .google.protobuf.Timestamp created_at = 8;
inline bool Container::has_created_at() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000080U);
  PROTOBUF_ASSUME(!value || _impl_.created_at_ != nullptr);
  return value;
}
inline const ::google::protobuf::Timestamp& Container::_internal_created_at() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::google::protobuf::Timestamp* p = _impl_.created_at_;
  return p != nullptr ? *p : reinterpret_cast<const ::google::protobuf::Timestamp&>(::google::protobuf::_Timestamp_default_instance_);
}
inline const ::google::protobuf::Timestamp& Container::created_at() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.Container.created_at)
  return _internal_created_at();
}
inline void Container::unsafe_arena_set_allocated_created_at(
    ::google::protobuf::Timestamp* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.created_at_);
  }
  _impl_.created_at_ = reinterpret_cast<::google::protobuf::Timestamp*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000080U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000080U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:containerd.services.containers.v1.Container.created_at)
}
inline ::google::protobuf::Timestamp* PROTOBUF_NULLABLE Container::release_created_at() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000080U);
  ::google::protobuf::Timestamp* released = _impl_.created_at_;
  _impl_.created_at_ = 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 ::google::protobuf::Timestamp* PROTOBUF_NULLABLE Container::unsafe_arena_release_created_at() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.Container.created_at)

  ClearHasBit(_impl_._has_bits_[0], 0x00000080U);
  ::google::protobuf::Timestamp* temp = _impl_.created_at_;
  _impl_.created_at_ = nullptr;
  return temp;
}
inline ::google::protobuf::Timestamp* PROTOBUF_NONNULL Container::_internal_mutable_created_at() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.created_at_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::google::protobuf::Timestamp>(GetArena());
    _impl_.created_at_ = reinterpret_cast<::google::protobuf::Timestamp*>(p);
  }
  return _impl_.created_at_;
}
inline ::google::protobuf::Timestamp* PROTOBUF_NONNULL Container::mutable_created_at()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000080U);
  ::google::protobuf::Timestamp* _msg = _internal_mutable_created_at();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.Container.created_at)
  return _msg;
}
inline void Container::set_allocated_created_at(::google::protobuf::Timestamp* 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_.created_at_);
  }

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

  _impl_.created_at_ = reinterpret_cast<::google::protobuf::Timestamp*>(value);
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.Container.created_at)
}

// .google.protobuf.Timestamp updated_at = 9;
inline bool Container::has_updated_at() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000100U);
  PROTOBUF_ASSUME(!value || _impl_.updated_at_ != nullptr);
  return value;
}
inline const ::google::protobuf::Timestamp& Container::_internal_updated_at() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::google::protobuf::Timestamp* p = _impl_.updated_at_;
  return p != nullptr ? *p : reinterpret_cast<const ::google::protobuf::Timestamp&>(::google::protobuf::_Timestamp_default_instance_);
}
inline const ::google::protobuf::Timestamp& Container::updated_at() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.Container.updated_at)
  return _internal_updated_at();
}
inline void Container::unsafe_arena_set_allocated_updated_at(
    ::google::protobuf::Timestamp* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.updated_at_);
  }
  _impl_.updated_at_ = reinterpret_cast<::google::protobuf::Timestamp*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000100U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000100U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:containerd.services.containers.v1.Container.updated_at)
}
inline ::google::protobuf::Timestamp* PROTOBUF_NULLABLE Container::release_updated_at() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000100U);
  ::google::protobuf::Timestamp* released = _impl_.updated_at_;
  _impl_.updated_at_ = 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 ::google::protobuf::Timestamp* PROTOBUF_NULLABLE Container::unsafe_arena_release_updated_at() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.Container.updated_at)

  ClearHasBit(_impl_._has_bits_[0], 0x00000100U);
  ::google::protobuf::Timestamp* temp = _impl_.updated_at_;
  _impl_.updated_at_ = nullptr;
  return temp;
}
inline ::google::protobuf::Timestamp* PROTOBUF_NONNULL Container::_internal_mutable_updated_at() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.updated_at_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::google::protobuf::Timestamp>(GetArena());
    _impl_.updated_at_ = reinterpret_cast<::google::protobuf::Timestamp*>(p);
  }
  return _impl_.updated_at_;
}
inline ::google::protobuf::Timestamp* PROTOBUF_NONNULL Container::mutable_updated_at()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000100U);
  ::google::protobuf::Timestamp* _msg = _internal_mutable_updated_at();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.Container.updated_at)
  return _msg;
}
inline void Container::set_allocated_updated_at(::google::protobuf::Timestamp* 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_.updated_at_);
  }

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

  _impl_.updated_at_ = reinterpret_cast<::google::protobuf::Timestamp*>(value);
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.Container.updated_at)
}

// map<string, .google.protobuf.Any> extensions = 10;
inline int Container::_internal_extensions_size() const {
  return _internal_extensions().size();
}
inline int Container::extensions_size() const {
  return _internal_extensions_size();
}
inline const ::google::protobuf::Map<::std::string, ::google::protobuf::Any>& Container::_internal_extensions() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.extensions_.GetMap();
}
inline const ::google::protobuf::Map<::std::string, ::google::protobuf::Any>& Container::extensions() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_map:containerd.services.containers.v1.Container.extensions)
  return _internal_extensions();
}
inline ::google::protobuf::Map<::std::string, ::google::protobuf::Any>* PROTOBUF_NONNULL Container::_internal_mutable_extensions() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.extensions_.MutableMap();
}
inline ::google::protobuf::Map<::std::string, ::google::protobuf::Any>* PROTOBUF_NONNULL Container::mutable_extensions()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000400U);
  // @@protoc_insertion_point(field_mutable_map:containerd.services.containers.v1.Container.extensions)
  return _internal_mutable_extensions();
}

// string sandbox = 11;
inline void Container::clear_sandbox() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sandbox_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0],
                  0x00000010U);
}
inline const ::std::string& Container::sandbox() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.Container.sandbox)
  return _internal_sandbox();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void Container::set_sandbox(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  _impl_.sandbox_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:containerd.services.containers.v1.Container.sandbox)
}
inline ::std::string* PROTOBUF_NONNULL Container::mutable_sandbox()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  ::std::string* _s = _internal_mutable_sandbox();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.Container.sandbox)
  return _s;
}
inline const ::std::string& Container::_internal_sandbox() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.sandbox_.Get();
}
inline void Container::_internal_set_sandbox(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.sandbox_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL Container::_internal_mutable_sandbox() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.sandbox_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE Container::release_sandbox() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.Container.sandbox)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000010U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
  auto* released = _impl_.sandbox_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.sandbox_.Set("", GetArena());
  }
  return released;
}
inline void Container::set_allocated_sandbox(::std::string* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000010U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000010U);
  }
  _impl_.sandbox_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.sandbox_.IsDefault()) {
    _impl_.sandbox_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.Container.sandbox)
}

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

// GetContainerRequest

// string id = 1;
inline void GetContainerRequest::clear_id() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.id_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0],
                  0x00000001U);
}
inline const ::std::string& GetContainerRequest::id() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.GetContainerRequest.id)
  return _internal_id();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void GetContainerRequest::set_id(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.id_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:containerd.services.containers.v1.GetContainerRequest.id)
}
inline ::std::string* PROTOBUF_NONNULL GetContainerRequest::mutable_id()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_id();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.GetContainerRequest.id)
  return _s;
}
inline const ::std::string& GetContainerRequest::_internal_id() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.id_.Get();
}
inline void GetContainerRequest::_internal_set_id(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.id_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL GetContainerRequest::_internal_mutable_id() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.id_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE GetContainerRequest::release_id() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.GetContainerRequest.id)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.id_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.id_.Set("", GetArena());
  }
  return released;
}
inline void GetContainerRequest::set_allocated_id(::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_.id_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.id_.IsDefault()) {
    _impl_.id_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.GetContainerRequest.id)
}

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

// GetContainerResponse

// .containerd.services.containers.v1.Container container = 1;
inline bool GetContainerResponse::has_container() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
  PROTOBUF_ASSUME(!value || _impl_.container_ != nullptr);
  return value;
}
inline void GetContainerResponse::clear_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.container_ != nullptr) _impl_.container_->Clear();
  ClearHasBit(_impl_._has_bits_[0],
                  0x00000001U);
}
inline const ::containerd::services::containers::v1::Container& GetContainerResponse::_internal_container() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::containerd::services::containers::v1::Container* p = _impl_.container_;
  return p != nullptr ? *p : reinterpret_cast<const ::containerd::services::containers::v1::Container&>(::containerd::services::containers::v1::_Container_default_instance_);
}
inline const ::containerd::services::containers::v1::Container& GetContainerResponse::container() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.GetContainerResponse.container)
  return _internal_container();
}
inline void GetContainerResponse::unsafe_arena_set_allocated_container(
    ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.container_);
  }
  _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:containerd.services.containers.v1.GetContainerResponse.container)
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE GetContainerResponse::release_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* released = _impl_.container_;
  _impl_.container_ = 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 ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE GetContainerResponse::unsafe_arena_release_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.GetContainerResponse.container)

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* temp = _impl_.container_;
  _impl_.container_ = nullptr;
  return temp;
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL GetContainerResponse::_internal_mutable_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.container_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::containerd::services::containers::v1::Container>(GetArena());
    _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(p);
  }
  return _impl_.container_;
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL GetContainerResponse::mutable_container()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* _msg = _internal_mutable_container();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.GetContainerResponse.container)
  return _msg;
}
inline void GetContainerResponse::set_allocated_container(::containerd::services::containers::v1::Container* 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_.container_);
  }

  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], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }

  _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(value);
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.GetContainerResponse.container)
}

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

// ListContainersRequest

// repeated string filters = 1;
inline int ListContainersRequest::_internal_filters_size() const {
  return _internal_filters().size();
}
inline int ListContainersRequest::filters_size() const {
  return _internal_filters_size();
}
inline void ListContainersRequest::clear_filters() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.filters_.Clear();
  ClearHasBitForRepeated(_impl_._has_bits_[0],
                  0x00000001U);
}
inline ::std::string* PROTOBUF_NONNULL ListContainersRequest::add_filters()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::std::string* _s =
      _internal_mutable_filters()->InternalAddWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), GetArena());
  SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_add_mutable:containerd.services.containers.v1.ListContainersRequest.filters)
  return _s;
}
inline const ::std::string& ListContainersRequest::filters(int index) const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.ListContainersRequest.filters)
  return _internal_filters().Get(index);
}
inline ::std::string* PROTOBUF_NONNULL ListContainersRequest::mutable_filters(int index)
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.ListContainersRequest.filters)
  return _internal_mutable_filters()->Mutable(index);
}
template <typename Arg_, typename... Args_>
inline void ListContainersRequest::set_filters(int index, Arg_&& value, Args_... args) {
  ::google::protobuf::internal::AssignToString(*_internal_mutable_filters()->Mutable(index), ::std::forward<Arg_>(value),
                        args... );
  // @@protoc_insertion_point(field_set:containerd.services.containers.v1.ListContainersRequest.filters)
}
template <typename Arg_, typename... Args_>
inline void ListContainersRequest::add_filters(Arg_&& value, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::google::protobuf::internal::AddToRepeatedPtrField(
      ::google::protobuf::MessageLite::internal_visibility(), GetArena(),
      *_internal_mutable_filters(), ::std::forward<Arg_>(value),
      args... );
  SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_add:containerd.services.containers.v1.ListContainersRequest.filters)
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>& ListContainersRequest::filters()
    const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_list:containerd.services.containers.v1.ListContainersRequest.filters)
  return _internal_filters();
}
inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
ListContainersRequest::mutable_filters() ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_mutable_list:containerd.services.containers.v1.ListContainersRequest.filters)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _internal_mutable_filters();
}
inline const ::google::protobuf::RepeatedPtrField<::std::string>&
ListContainersRequest::_internal_filters() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.filters_;
}
inline ::google::protobuf::RepeatedPtrField<::std::string>* PROTOBUF_NONNULL
ListContainersRequest::_internal_mutable_filters() {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return &_impl_.filters_;
}

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

// ListContainersResponse

// repeated .containerd.services.containers.v1.Container containers = 1;
inline int ListContainersResponse::_internal_containers_size() const {
  return _internal_containers().size();
}
inline int ListContainersResponse::containers_size() const {
  return _internal_containers_size();
}
inline void ListContainersResponse::clear_containers() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.containers_.Clear();
  ClearHasBitForRepeated(_impl_._has_bits_[0],
                  0x00000001U);
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL ListContainersResponse::mutable_containers(int index)
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.ListContainersResponse.containers)
  return _internal_mutable_containers()->Mutable(index);
}
inline ::google::protobuf::RepeatedPtrField<::containerd::services::containers::v1::Container>* PROTOBUF_NONNULL ListContainersResponse::mutable_containers()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_mutable_list:containerd.services.containers.v1.ListContainersResponse.containers)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _internal_mutable_containers();
}
inline const ::containerd::services::containers::v1::Container& ListContainersResponse::containers(int index) const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.ListContainersResponse.containers)
  return _internal_containers().Get(index);
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL ListContainersResponse::add_containers()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::containerd::services::containers::v1::Container* _add =
      _internal_mutable_containers()->InternalAddWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), GetArena());
  SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
  // @@protoc_insertion_point(field_add:containerd.services.containers.v1.ListContainersResponse.containers)
  return _add;
}
inline const ::google::protobuf::RepeatedPtrField<::containerd::services::containers::v1::Container>& ListContainersResponse::containers() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_list:containerd.services.containers.v1.ListContainersResponse.containers)
  return _internal_containers();
}
inline const ::google::protobuf::RepeatedPtrField<::containerd::services::containers::v1::Container>&
ListContainersResponse::_internal_containers() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.containers_;
}
inline ::google::protobuf::RepeatedPtrField<::containerd::services::containers::v1::Container>* PROTOBUF_NONNULL
ListContainersResponse::_internal_mutable_containers() {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return &_impl_.containers_;
}

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

// CreateContainerRequest

// .containerd.services.containers.v1.Container container = 1;
inline bool CreateContainerRequest::has_container() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
  PROTOBUF_ASSUME(!value || _impl_.container_ != nullptr);
  return value;
}
inline void CreateContainerRequest::clear_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.container_ != nullptr) _impl_.container_->Clear();
  ClearHasBit(_impl_._has_bits_[0],
                  0x00000001U);
}
inline const ::containerd::services::containers::v1::Container& CreateContainerRequest::_internal_container() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::containerd::services::containers::v1::Container* p = _impl_.container_;
  return p != nullptr ? *p : reinterpret_cast<const ::containerd::services::containers::v1::Container&>(::containerd::services::containers::v1::_Container_default_instance_);
}
inline const ::containerd::services::containers::v1::Container& CreateContainerRequest::container() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.CreateContainerRequest.container)
  return _internal_container();
}
inline void CreateContainerRequest::unsafe_arena_set_allocated_container(
    ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.container_);
  }
  _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:containerd.services.containers.v1.CreateContainerRequest.container)
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE CreateContainerRequest::release_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* released = _impl_.container_;
  _impl_.container_ = 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 ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE CreateContainerRequest::unsafe_arena_release_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.CreateContainerRequest.container)

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* temp = _impl_.container_;
  _impl_.container_ = nullptr;
  return temp;
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL CreateContainerRequest::_internal_mutable_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.container_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::containerd::services::containers::v1::Container>(GetArena());
    _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(p);
  }
  return _impl_.container_;
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL CreateContainerRequest::mutable_container()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* _msg = _internal_mutable_container();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.CreateContainerRequest.container)
  return _msg;
}
inline void CreateContainerRequest::set_allocated_container(::containerd::services::containers::v1::Container* 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_.container_);
  }

  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], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }

  _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(value);
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.CreateContainerRequest.container)
}

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

// CreateContainerResponse

// .containerd.services.containers.v1.Container container = 1;
inline bool CreateContainerResponse::has_container() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
  PROTOBUF_ASSUME(!value || _impl_.container_ != nullptr);
  return value;
}
inline void CreateContainerResponse::clear_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.container_ != nullptr) _impl_.container_->Clear();
  ClearHasBit(_impl_._has_bits_[0],
                  0x00000001U);
}
inline const ::containerd::services::containers::v1::Container& CreateContainerResponse::_internal_container() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::containerd::services::containers::v1::Container* p = _impl_.container_;
  return p != nullptr ? *p : reinterpret_cast<const ::containerd::services::containers::v1::Container&>(::containerd::services::containers::v1::_Container_default_instance_);
}
inline const ::containerd::services::containers::v1::Container& CreateContainerResponse::container() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.CreateContainerResponse.container)
  return _internal_container();
}
inline void CreateContainerResponse::unsafe_arena_set_allocated_container(
    ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.container_);
  }
  _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:containerd.services.containers.v1.CreateContainerResponse.container)
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE CreateContainerResponse::release_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* released = _impl_.container_;
  _impl_.container_ = 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 ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE CreateContainerResponse::unsafe_arena_release_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.CreateContainerResponse.container)

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* temp = _impl_.container_;
  _impl_.container_ = nullptr;
  return temp;
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL CreateContainerResponse::_internal_mutable_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.container_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::containerd::services::containers::v1::Container>(GetArena());
    _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(p);
  }
  return _impl_.container_;
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL CreateContainerResponse::mutable_container()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* _msg = _internal_mutable_container();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.CreateContainerResponse.container)
  return _msg;
}
inline void CreateContainerResponse::set_allocated_container(::containerd::services::containers::v1::Container* 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_.container_);
  }

  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], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }

  _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(value);
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.CreateContainerResponse.container)
}

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

// UpdateContainerRequest

// .containerd.services.containers.v1.Container container = 1;
inline bool UpdateContainerRequest::has_container() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
  PROTOBUF_ASSUME(!value || _impl_.container_ != nullptr);
  return value;
}
inline void UpdateContainerRequest::clear_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.container_ != nullptr) _impl_.container_->Clear();
  ClearHasBit(_impl_._has_bits_[0],
                  0x00000001U);
}
inline const ::containerd::services::containers::v1::Container& UpdateContainerRequest::_internal_container() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::containerd::services::containers::v1::Container* p = _impl_.container_;
  return p != nullptr ? *p : reinterpret_cast<const ::containerd::services::containers::v1::Container&>(::containerd::services::containers::v1::_Container_default_instance_);
}
inline const ::containerd::services::containers::v1::Container& UpdateContainerRequest::container() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.UpdateContainerRequest.container)
  return _internal_container();
}
inline void UpdateContainerRequest::unsafe_arena_set_allocated_container(
    ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.container_);
  }
  _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:containerd.services.containers.v1.UpdateContainerRequest.container)
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE UpdateContainerRequest::release_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* released = _impl_.container_;
  _impl_.container_ = 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 ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE UpdateContainerRequest::unsafe_arena_release_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.UpdateContainerRequest.container)

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* temp = _impl_.container_;
  _impl_.container_ = nullptr;
  return temp;
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL UpdateContainerRequest::_internal_mutable_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.container_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::containerd::services::containers::v1::Container>(GetArena());
    _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(p);
  }
  return _impl_.container_;
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL UpdateContainerRequest::mutable_container()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* _msg = _internal_mutable_container();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.UpdateContainerRequest.container)
  return _msg;
}
inline void UpdateContainerRequest::set_allocated_container(::containerd::services::containers::v1::Container* 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_.container_);
  }

  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], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }

  _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(value);
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.UpdateContainerRequest.container)
}

// .google.protobuf.FieldMask update_mask = 2;
inline bool UpdateContainerRequest::has_update_mask() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
  PROTOBUF_ASSUME(!value || _impl_.update_mask_ != nullptr);
  return value;
}
inline const ::google::protobuf::FieldMask& UpdateContainerRequest::_internal_update_mask() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::google::protobuf::FieldMask* p = _impl_.update_mask_;
  return p != nullptr ? *p : reinterpret_cast<const ::google::protobuf::FieldMask&>(::google::protobuf::_FieldMask_default_instance_);
}
inline const ::google::protobuf::FieldMask& UpdateContainerRequest::update_mask() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.UpdateContainerRequest.update_mask)
  return _internal_update_mask();
}
inline void UpdateContainerRequest::unsafe_arena_set_allocated_update_mask(
    ::google::protobuf::FieldMask* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.update_mask_);
  }
  _impl_.update_mask_ = reinterpret_cast<::google::protobuf::FieldMask*>(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:containerd.services.containers.v1.UpdateContainerRequest.update_mask)
}
inline ::google::protobuf::FieldMask* PROTOBUF_NULLABLE UpdateContainerRequest::release_update_mask() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::google::protobuf::FieldMask* released = _impl_.update_mask_;
  _impl_.update_mask_ = 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 ::google::protobuf::FieldMask* PROTOBUF_NULLABLE UpdateContainerRequest::unsafe_arena_release_update_mask() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.UpdateContainerRequest.update_mask)

  ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::google::protobuf::FieldMask* temp = _impl_.update_mask_;
  _impl_.update_mask_ = nullptr;
  return temp;
}
inline ::google::protobuf::FieldMask* PROTOBUF_NONNULL UpdateContainerRequest::_internal_mutable_update_mask() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.update_mask_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::google::protobuf::FieldMask>(GetArena());
    _impl_.update_mask_ = reinterpret_cast<::google::protobuf::FieldMask*>(p);
  }
  return _impl_.update_mask_;
}
inline ::google::protobuf::FieldMask* PROTOBUF_NONNULL UpdateContainerRequest::mutable_update_mask()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000002U);
  ::google::protobuf::FieldMask* _msg = _internal_mutable_update_mask();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.UpdateContainerRequest.update_mask)
  return _msg;
}
inline void UpdateContainerRequest::set_allocated_update_mask(::google::protobuf::FieldMask* 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_.update_mask_);
  }

  if (value != nullptr) {
    ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(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_.update_mask_ = reinterpret_cast<::google::protobuf::FieldMask*>(value);
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.UpdateContainerRequest.update_mask)
}

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

// UpdateContainerResponse

// .containerd.services.containers.v1.Container container = 1;
inline bool UpdateContainerResponse::has_container() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
  PROTOBUF_ASSUME(!value || _impl_.container_ != nullptr);
  return value;
}
inline void UpdateContainerResponse::clear_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.container_ != nullptr) _impl_.container_->Clear();
  ClearHasBit(_impl_._has_bits_[0],
                  0x00000001U);
}
inline const ::containerd::services::containers::v1::Container& UpdateContainerResponse::_internal_container() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::containerd::services::containers::v1::Container* p = _impl_.container_;
  return p != nullptr ? *p : reinterpret_cast<const ::containerd::services::containers::v1::Container&>(::containerd::services::containers::v1::_Container_default_instance_);
}
inline const ::containerd::services::containers::v1::Container& UpdateContainerResponse::container() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.UpdateContainerResponse.container)
  return _internal_container();
}
inline void UpdateContainerResponse::unsafe_arena_set_allocated_container(
    ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.container_);
  }
  _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:containerd.services.containers.v1.UpdateContainerResponse.container)
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE UpdateContainerResponse::release_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* released = _impl_.container_;
  _impl_.container_ = 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 ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE UpdateContainerResponse::unsafe_arena_release_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.UpdateContainerResponse.container)

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* temp = _impl_.container_;
  _impl_.container_ = nullptr;
  return temp;
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL UpdateContainerResponse::_internal_mutable_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.container_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::containerd::services::containers::v1::Container>(GetArena());
    _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(p);
  }
  return _impl_.container_;
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL UpdateContainerResponse::mutable_container()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* _msg = _internal_mutable_container();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.UpdateContainerResponse.container)
  return _msg;
}
inline void UpdateContainerResponse::set_allocated_container(::containerd::services::containers::v1::Container* 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_.container_);
  }

  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], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }

  _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(value);
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.UpdateContainerResponse.container)
}

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

// DeleteContainerRequest

// string id = 1;
inline void DeleteContainerRequest::clear_id() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.id_.ClearToEmpty();
  ClearHasBit(_impl_._has_bits_[0],
                  0x00000001U);
}
inline const ::std::string& DeleteContainerRequest::id() const
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.DeleteContainerRequest.id)
  return _internal_id();
}
template <typename Arg_, typename... Args_>
PROTOBUF_ALWAYS_INLINE void DeleteContainerRequest::set_id(Arg_&& arg, Args_... args) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  _impl_.id_.Set(static_cast<Arg_&&>(arg), args..., GetArena());
  // @@protoc_insertion_point(field_set:containerd.services.containers.v1.DeleteContainerRequest.id)
}
inline ::std::string* PROTOBUF_NONNULL DeleteContainerRequest::mutable_id()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::std::string* _s = _internal_mutable_id();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.DeleteContainerRequest.id)
  return _s;
}
inline const ::std::string& DeleteContainerRequest::_internal_id() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  return _impl_.id_.Get();
}
inline void DeleteContainerRequest::_internal_set_id(const ::std::string& value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  _impl_.id_.Set(value, GetArena());
}
inline ::std::string* PROTOBUF_NONNULL DeleteContainerRequest::_internal_mutable_id() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  return _impl_.id_.Mutable( GetArena());
}
inline ::std::string* PROTOBUF_NULLABLE DeleteContainerRequest::release_id() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.DeleteContainerRequest.id)
  if (!CheckHasBit(_impl_._has_bits_[0], 0x00000001U)) {
    return nullptr;
  }
  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  auto* released = _impl_.id_.Release();
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString()) {
    _impl_.id_.Set("", GetArena());
  }
  return released;
}
inline void DeleteContainerRequest::set_allocated_id(::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_.id_.SetAllocated(value, GetArena());
  if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.id_.IsDefault()) {
    _impl_.id_.Set("", GetArena());
  }
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.DeleteContainerRequest.id)
}

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

// ListContainerMessage

// .containerd.services.containers.v1.Container container = 1;
inline bool ListContainerMessage::has_container() const {
  bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
  PROTOBUF_ASSUME(!value || _impl_.container_ != nullptr);
  return value;
}
inline void ListContainerMessage::clear_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.container_ != nullptr) _impl_.container_->Clear();
  ClearHasBit(_impl_._has_bits_[0],
                  0x00000001U);
}
inline const ::containerd::services::containers::v1::Container& ListContainerMessage::_internal_container() const {
  ::google::protobuf::internal::TSanRead(&_impl_);
  const ::containerd::services::containers::v1::Container* p = _impl_.container_;
  return p != nullptr ? *p : reinterpret_cast<const ::containerd::services::containers::v1::Container&>(::containerd::services::containers::v1::_Container_default_instance_);
}
inline const ::containerd::services::containers::v1::Container& ListContainerMessage::container() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
  // @@protoc_insertion_point(field_get:containerd.services.containers.v1.ListContainerMessage.container)
  return _internal_container();
}
inline void ListContainerMessage::unsafe_arena_set_allocated_container(
    ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE value) {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (GetArena() == nullptr) {
    delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.container_);
  }
  _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(value);
  if (value != nullptr) {
    SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:containerd.services.containers.v1.ListContainerMessage.container)
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE ListContainerMessage::release_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* released = _impl_.container_;
  _impl_.container_ = 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 ::containerd::services::containers::v1::Container* PROTOBUF_NULLABLE ListContainerMessage::unsafe_arena_release_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  // @@protoc_insertion_point(field_release:containerd.services.containers.v1.ListContainerMessage.container)

  ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* temp = _impl_.container_;
  _impl_.container_ = nullptr;
  return temp;
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL ListContainerMessage::_internal_mutable_container() {
  ::google::protobuf::internal::TSanWrite(&_impl_);
  if (_impl_.container_ == nullptr) {
    auto* p = ::google::protobuf::Message::DefaultConstruct<::containerd::services::containers::v1::Container>(GetArena());
    _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(p);
  }
  return _impl_.container_;
}
inline ::containerd::services::containers::v1::Container* PROTOBUF_NONNULL ListContainerMessage::mutable_container()
    ABSL_ATTRIBUTE_LIFETIME_BOUND {
  SetHasBit(_impl_._has_bits_[0], 0x00000001U);
  ::containerd::services::containers::v1::Container* _msg = _internal_mutable_container();
  // @@protoc_insertion_point(field_mutable:containerd.services.containers.v1.ListContainerMessage.container)
  return _msg;
}
inline void ListContainerMessage::set_allocated_container(::containerd::services::containers::v1::Container* 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_.container_);
  }

  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], 0x00000001U);
  } else {
    ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
  }

  _impl_.container_ = reinterpret_cast<::containerd::services::containers::v1::Container*>(value);
  // @@protoc_insertion_point(field_set_allocated:containerd.services.containers.v1.ListContainerMessage.container)
}

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

// @@protoc_insertion_point(namespace_scope)
}  // namespace v1
}  // namespace containers
}  // namespace services
}  // namespace containerd


// @@protoc_insertion_point(global_scope)

#include "google/protobuf/port_undef.inc"

#endif  // containers_2eproto_2epb_2eh
