Skip to content

File landmark.pb.cc

File List > formats > landmark.pb.cc

Go to the documentation of this file

// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: mediapipe/framework/formats/landmark.proto

#include "mediapipe/framework/formats/landmark.pb.h"

#include <algorithm>

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

PROTOBUF_PRAGMA_INIT_SEG
namespace mediapipe {
constexpr Landmark::Landmark(
  ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
  : x_(0)
  , y_(0)
  , z_(0)
  , visibility_(0)
  , presence_(0){}
struct LandmarkDefaultTypeInternal {
  constexpr LandmarkDefaultTypeInternal()
    : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
  ~LandmarkDefaultTypeInternal() {}
  union {
    Landmark _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT LandmarkDefaultTypeInternal _Landmark_default_instance_;
constexpr LandmarkList::LandmarkList(
  ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
  : landmark_(){}
struct LandmarkListDefaultTypeInternal {
  constexpr LandmarkListDefaultTypeInternal()
    : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
  ~LandmarkListDefaultTypeInternal() {}
  union {
    LandmarkList _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT LandmarkListDefaultTypeInternal _LandmarkList_default_instance_;
constexpr LandmarkListCollection::LandmarkListCollection(
  ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
  : landmark_list_(){}
struct LandmarkListCollectionDefaultTypeInternal {
  constexpr LandmarkListCollectionDefaultTypeInternal()
    : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
  ~LandmarkListCollectionDefaultTypeInternal() {}
  union {
    LandmarkListCollection _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT LandmarkListCollectionDefaultTypeInternal _LandmarkListCollection_default_instance_;
constexpr NormalizedLandmark::NormalizedLandmark(
  ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
  : x_(0)
  , y_(0)
  , z_(0)
  , visibility_(0)
  , presence_(0){}
struct NormalizedLandmarkDefaultTypeInternal {
  constexpr NormalizedLandmarkDefaultTypeInternal()
    : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
  ~NormalizedLandmarkDefaultTypeInternal() {}
  union {
    NormalizedLandmark _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT NormalizedLandmarkDefaultTypeInternal _NormalizedLandmark_default_instance_;
constexpr NormalizedLandmarkList::NormalizedLandmarkList(
  ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
  : landmark_(){}
struct NormalizedLandmarkListDefaultTypeInternal {
  constexpr NormalizedLandmarkListDefaultTypeInternal()
    : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
  ~NormalizedLandmarkListDefaultTypeInternal() {}
  union {
    NormalizedLandmarkList _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT NormalizedLandmarkListDefaultTypeInternal _NormalizedLandmarkList_default_instance_;
constexpr NormalizedLandmarkListCollection::NormalizedLandmarkListCollection(
  ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
  : landmark_list_(){}
struct NormalizedLandmarkListCollectionDefaultTypeInternal {
  constexpr NormalizedLandmarkListCollectionDefaultTypeInternal()
    : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
  ~NormalizedLandmarkListCollectionDefaultTypeInternal() {}
  union {
    NormalizedLandmarkListCollection _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT NormalizedLandmarkListCollectionDefaultTypeInternal _NormalizedLandmarkListCollection_default_instance_;
}  // namespace mediapipe
static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_mediapipe_2fframework_2fformats_2flandmark_2eproto[6];
static constexpr ::PROTOBUF_NAMESPACE_ID::EnumDescriptor const** file_level_enum_descriptors_mediapipe_2fframework_2fformats_2flandmark_2eproto = nullptr;
static constexpr ::PROTOBUF_NAMESPACE_ID::ServiceDescriptor const** file_level_service_descriptors_mediapipe_2fframework_2fformats_2flandmark_2eproto = nullptr;

const uint32_t TableStruct_mediapipe_2fframework_2fformats_2flandmark_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  PROTOBUF_FIELD_OFFSET(::mediapipe::Landmark, _has_bits_),
  PROTOBUF_FIELD_OFFSET(::mediapipe::Landmark, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::mediapipe::Landmark, x_),
  PROTOBUF_FIELD_OFFSET(::mediapipe::Landmark, y_),
  PROTOBUF_FIELD_OFFSET(::mediapipe::Landmark, z_),
  PROTOBUF_FIELD_OFFSET(::mediapipe::Landmark, visibility_),
  PROTOBUF_FIELD_OFFSET(::mediapipe::Landmark, presence_),
  0,
  1,
  2,
  3,
  4,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::mediapipe::LandmarkList, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::mediapipe::LandmarkList, landmark_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::mediapipe::LandmarkListCollection, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::mediapipe::LandmarkListCollection, landmark_list_),
  PROTOBUF_FIELD_OFFSET(::mediapipe::NormalizedLandmark, _has_bits_),
  PROTOBUF_FIELD_OFFSET(::mediapipe::NormalizedLandmark, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::mediapipe::NormalizedLandmark, x_),
  PROTOBUF_FIELD_OFFSET(::mediapipe::NormalizedLandmark, y_),
  PROTOBUF_FIELD_OFFSET(::mediapipe::NormalizedLandmark, z_),
  PROTOBUF_FIELD_OFFSET(::mediapipe::NormalizedLandmark, visibility_),
  PROTOBUF_FIELD_OFFSET(::mediapipe::NormalizedLandmark, presence_),
  0,
  1,
  2,
  3,
  4,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::mediapipe::NormalizedLandmarkList, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::mediapipe::NormalizedLandmarkList, landmark_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::mediapipe::NormalizedLandmarkListCollection, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::mediapipe::NormalizedLandmarkListCollection, landmark_list_),
};
static const ::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  { 0, 11, -1, sizeof(::mediapipe::Landmark)},
  { 16, -1, -1, sizeof(::mediapipe::LandmarkList)},
  { 23, -1, -1, sizeof(::mediapipe::LandmarkListCollection)},
  { 30, 41, -1, sizeof(::mediapipe::NormalizedLandmark)},
  { 46, -1, -1, sizeof(::mediapipe::NormalizedLandmarkList)},
  { 53, -1, -1, sizeof(::mediapipe::NormalizedLandmarkListCollection)},
};

static ::PROTOBUF_NAMESPACE_ID::Message const * const file_default_instances[] = {
  reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::mediapipe::_Landmark_default_instance_),
  reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::mediapipe::_LandmarkList_default_instance_),
  reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::mediapipe::_LandmarkListCollection_default_instance_),
  reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::mediapipe::_NormalizedLandmark_default_instance_),
  reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::mediapipe::_NormalizedLandmarkList_default_instance_),
  reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::mediapipe::_NormalizedLandmarkListCollection_default_instance_),
};

const char descriptor_table_protodef_mediapipe_2fframework_2fformats_2flandmark_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
  "\n*mediapipe/framework/formats/landmark.p"
  "roto\022\tmediapipe\"Q\n\010Landmark\022\t\n\001x\030\001 \001(\002\022\t"
  "\n\001y\030\002 \001(\002\022\t\n\001z\030\003 \001(\002\022\022\n\nvisibility\030\004 \001(\002"
  "\022\020\n\010presence\030\005 \001(\002\"5\n\014LandmarkList\022%\n\010la"
  "ndmark\030\001 \003(\0132\023.mediapipe.Landmark\"H\n\026Lan"
  "dmarkListCollection\022.\n\rlandmark_list\030\001 \003"
  "(\0132\027.mediapipe.LandmarkList\"[\n\022Normalize"
  "dLandmark\022\t\n\001x\030\001 \001(\002\022\t\n\001y\030\002 \001(\002\022\t\n\001z\030\003 \001"
  "(\002\022\022\n\nvisibility\030\004 \001(\002\022\020\n\010presence\030\005 \001(\002"
  "\"I\n\026NormalizedLandmarkList\022/\n\010landmark\030\001"
  " \003(\0132\035.mediapipe.NormalizedLandmark\"\\\n N"
  "ormalizedLandmarkListCollection\0228\n\rlandm"
  "ark_list\030\001 \003(\0132!.mediapipe.NormalizedLan"
  "dmarkListB3\n\"com.google.mediapipe.format"
  "s.protoB\rLandmarkProto"
  ;
static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto_once;
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto = {
  false, false, 582, descriptor_table_protodef_mediapipe_2fframework_2fformats_2flandmark_2eproto, "mediapipe/framework/formats/landmark.proto", 
  &descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto_once, nullptr, 0, 6,
  schemas, file_default_instances, TableStruct_mediapipe_2fframework_2fformats_2flandmark_2eproto::offsets,
  file_level_metadata_mediapipe_2fframework_2fformats_2flandmark_2eproto, file_level_enum_descriptors_mediapipe_2fframework_2fformats_2flandmark_2eproto, file_level_service_descriptors_mediapipe_2fframework_2fformats_2flandmark_2eproto,
};
PROTOBUF_ATTRIBUTE_WEAK const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable* descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto_getter() {
  return &descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto;
}

// Force running AddDescriptors() at dynamic initialization time.
PROTOBUF_ATTRIBUTE_INIT_PRIORITY static ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptorsRunner dynamic_init_dummy_mediapipe_2fframework_2fformats_2flandmark_2eproto(&descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto);
namespace mediapipe {

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

class Landmark::_Internal {
 public:
  using HasBits = decltype(std::declval<Landmark>()._has_bits_);
  static void set_has_x(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_y(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_z(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_visibility(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_presence(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
};

Landmark::Landmark(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor();
  if (!is_message_owned) {
    RegisterArenaDtor(arena);
  }
  // @@protoc_insertion_point(arena_constructor:mediapipe.Landmark)
}
Landmark::Landmark(const Landmark& from)
  : ::PROTOBUF_NAMESPACE_ID::Message(),
      _has_bits_(from._has_bits_) {
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&x_, &from.x_,
    static_cast<size_t>(reinterpret_cast<char*>(&presence_) -
    reinterpret_cast<char*>(&x_)) + sizeof(presence_));
  // @@protoc_insertion_point(copy_constructor:mediapipe.Landmark)
}

inline void Landmark::SharedCtor() {
::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
    reinterpret_cast<char*>(&x_) - reinterpret_cast<char*>(this)),
    0, static_cast<size_t>(reinterpret_cast<char*>(&presence_) -
    reinterpret_cast<char*>(&x_)) + sizeof(presence_));
}

Landmark::~Landmark() {
  // @@protoc_insertion_point(destructor:mediapipe.Landmark)
  if (GetArenaForAllocation() != nullptr) return;
  SharedDtor();
  _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

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

void Landmark::ArenaDtor(void* object) {
  Landmark* _this = reinterpret_cast< Landmark* >(object);
  (void)_this;
}
void Landmark::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
}
void Landmark::SetCachedSize(int size) const {
  _cached_size_.Set(size);
}

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

  cached_has_bits = _has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    ::memset(&x_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&presence_) -
        reinterpret_cast<char*>(&x_)) + sizeof(presence_));
  }
  _has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* Landmark::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional float x = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_x(&has_bits);
          x_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float y = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_y(&has_bits);
          y_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float z = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 29)) {
          _Internal::set_has_z(&has_bits);
          z_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float visibility = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 37)) {
          _Internal::set_has_visibility(&has_bits);
          visibility_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float presence = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 45)) {
          _Internal::set_has_presence(&has_bits);
          presence_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

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

  cached_has_bits = _has_bits_[0];
  // optional float x = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFloatToArray(1, this->_internal_x(), target);
  }

  // optional float y = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFloatToArray(2, this->_internal_y(), target);
  }

  // optional float z = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFloatToArray(3, this->_internal_z(), target);
  }

  // optional float visibility = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFloatToArray(4, this->_internal_visibility(), target);
  }

  // optional float presence = 5;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFloatToArray(5, this->_internal_presence(), target);
  }

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

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

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

  cached_has_bits = _has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    // optional float x = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 + 4;
    }

    // optional float y = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 4;
    }

    // optional float z = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 4;
    }

    // optional float visibility = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 4;
    }

    // optional float presence = 5;
    if (cached_has_bits & 0x00000010u) {
      total_size += 1 + 4;
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
}

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

void Landmark::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
                      const ::PROTOBUF_NAMESPACE_ID::Message& from) {
  static_cast<Landmark *>(to)->MergeFrom(
      static_cast<const Landmark &>(from));
}


void Landmark::MergeFrom(const Landmark& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:mediapipe.Landmark)
  GOOGLE_DCHECK_NE(&from, this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    if (cached_has_bits & 0x00000001u) {
      x_ = from.x_;
    }
    if (cached_has_bits & 0x00000002u) {
      y_ = from.y_;
    }
    if (cached_has_bits & 0x00000004u) {
      z_ = from.z_;
    }
    if (cached_has_bits & 0x00000008u) {
      visibility_ = from.visibility_;
    }
    if (cached_has_bits & 0x00000010u) {
      presence_ = from.presence_;
    }
    _has_bits_[0] |= cached_has_bits;
  }
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void Landmark::InternalSwap(Landmark* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_has_bits_[0], other->_has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(Landmark, presence_)
      + sizeof(Landmark::presence_)
      - PROTOBUF_FIELD_OFFSET(Landmark, x_)>(
          reinterpret_cast<char*>(&x_),
          reinterpret_cast<char*>(&other->x_));
}

::PROTOBUF_NAMESPACE_ID::Metadata Landmark::GetMetadata() const {
  return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
      &descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto_getter, &descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto_once,
      file_level_metadata_mediapipe_2fframework_2fformats_2flandmark_2eproto[0]);
}

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

class LandmarkList::_Internal {
 public:
};

LandmarkList::LandmarkList(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
  landmark_(arena) {
  SharedCtor();
  if (!is_message_owned) {
    RegisterArenaDtor(arena);
  }
  // @@protoc_insertion_point(arena_constructor:mediapipe.LandmarkList)
}
LandmarkList::LandmarkList(const LandmarkList& from)
  : ::PROTOBUF_NAMESPACE_ID::Message(),
      landmark_(from.landmark_) {
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:mediapipe.LandmarkList)
}

inline void LandmarkList::SharedCtor() {
}

LandmarkList::~LandmarkList() {
  // @@protoc_insertion_point(destructor:mediapipe.LandmarkList)
  if (GetArenaForAllocation() != nullptr) return;
  SharedDtor();
  _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

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

void LandmarkList::ArenaDtor(void* object) {
  LandmarkList* _this = reinterpret_cast< LandmarkList* >(object);
  (void)_this;
}
void LandmarkList::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
}
void LandmarkList::SetCachedSize(int size) const {
  _cached_size_.Set(size);
}

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

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

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

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

  // repeated .mediapipe.Landmark landmark = 1;
  for (unsigned int i = 0,
      n = static_cast<unsigned int>(this->_internal_landmark_size()); i < n; i++) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, this->_internal_landmark(i), target, stream);
  }

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

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

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

  // repeated .mediapipe.Landmark landmark = 1;
  total_size += 1UL * this->_internal_landmark_size();
  for (const auto& msg : this->landmark_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
}

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

void LandmarkList::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
                      const ::PROTOBUF_NAMESPACE_ID::Message& from) {
  static_cast<LandmarkList *>(to)->MergeFrom(
      static_cast<const LandmarkList &>(from));
}


void LandmarkList::MergeFrom(const LandmarkList& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:mediapipe.LandmarkList)
  GOOGLE_DCHECK_NE(&from, this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  landmark_.MergeFrom(from.landmark_);
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void LandmarkList::InternalSwap(LandmarkList* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  landmark_.InternalSwap(&other->landmark_);
}

::PROTOBUF_NAMESPACE_ID::Metadata LandmarkList::GetMetadata() const {
  return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
      &descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto_getter, &descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto_once,
      file_level_metadata_mediapipe_2fframework_2fformats_2flandmark_2eproto[1]);
}

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

class LandmarkListCollection::_Internal {
 public:
};

LandmarkListCollection::LandmarkListCollection(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
  landmark_list_(arena) {
  SharedCtor();
  if (!is_message_owned) {
    RegisterArenaDtor(arena);
  }
  // @@protoc_insertion_point(arena_constructor:mediapipe.LandmarkListCollection)
}
LandmarkListCollection::LandmarkListCollection(const LandmarkListCollection& from)
  : ::PROTOBUF_NAMESPACE_ID::Message(),
      landmark_list_(from.landmark_list_) {
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:mediapipe.LandmarkListCollection)
}

inline void LandmarkListCollection::SharedCtor() {
}

LandmarkListCollection::~LandmarkListCollection() {
  // @@protoc_insertion_point(destructor:mediapipe.LandmarkListCollection)
  if (GetArenaForAllocation() != nullptr) return;
  SharedDtor();
  _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

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

void LandmarkListCollection::ArenaDtor(void* object) {
  LandmarkListCollection* _this = reinterpret_cast< LandmarkListCollection* >(object);
  (void)_this;
}
void LandmarkListCollection::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
}
void LandmarkListCollection::SetCachedSize(int size) const {
  _cached_size_.Set(size);
}

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

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

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

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

  // repeated .mediapipe.LandmarkList landmark_list = 1;
  for (unsigned int i = 0,
      n = static_cast<unsigned int>(this->_internal_landmark_list_size()); i < n; i++) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, this->_internal_landmark_list(i), target, stream);
  }

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

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

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

  // repeated .mediapipe.LandmarkList landmark_list = 1;
  total_size += 1UL * this->_internal_landmark_list_size();
  for (const auto& msg : this->landmark_list_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
}

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

void LandmarkListCollection::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
                      const ::PROTOBUF_NAMESPACE_ID::Message& from) {
  static_cast<LandmarkListCollection *>(to)->MergeFrom(
      static_cast<const LandmarkListCollection &>(from));
}


void LandmarkListCollection::MergeFrom(const LandmarkListCollection& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:mediapipe.LandmarkListCollection)
  GOOGLE_DCHECK_NE(&from, this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  landmark_list_.MergeFrom(from.landmark_list_);
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void LandmarkListCollection::InternalSwap(LandmarkListCollection* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  landmark_list_.InternalSwap(&other->landmark_list_);
}

::PROTOBUF_NAMESPACE_ID::Metadata LandmarkListCollection::GetMetadata() const {
  return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
      &descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto_getter, &descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto_once,
      file_level_metadata_mediapipe_2fframework_2fformats_2flandmark_2eproto[2]);
}

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

class NormalizedLandmark::_Internal {
 public:
  using HasBits = decltype(std::declval<NormalizedLandmark>()._has_bits_);
  static void set_has_x(HasBits* has_bits) {
    (*has_bits)[0] |= 1u;
  }
  static void set_has_y(HasBits* has_bits) {
    (*has_bits)[0] |= 2u;
  }
  static void set_has_z(HasBits* has_bits) {
    (*has_bits)[0] |= 4u;
  }
  static void set_has_visibility(HasBits* has_bits) {
    (*has_bits)[0] |= 8u;
  }
  static void set_has_presence(HasBits* has_bits) {
    (*has_bits)[0] |= 16u;
  }
};

NormalizedLandmark::NormalizedLandmark(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor();
  if (!is_message_owned) {
    RegisterArenaDtor(arena);
  }
  // @@protoc_insertion_point(arena_constructor:mediapipe.NormalizedLandmark)
}
NormalizedLandmark::NormalizedLandmark(const NormalizedLandmark& from)
  : ::PROTOBUF_NAMESPACE_ID::Message(),
      _has_bits_(from._has_bits_) {
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&x_, &from.x_,
    static_cast<size_t>(reinterpret_cast<char*>(&presence_) -
    reinterpret_cast<char*>(&x_)) + sizeof(presence_));
  // @@protoc_insertion_point(copy_constructor:mediapipe.NormalizedLandmark)
}

inline void NormalizedLandmark::SharedCtor() {
::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
    reinterpret_cast<char*>(&x_) - reinterpret_cast<char*>(this)),
    0, static_cast<size_t>(reinterpret_cast<char*>(&presence_) -
    reinterpret_cast<char*>(&x_)) + sizeof(presence_));
}

NormalizedLandmark::~NormalizedLandmark() {
  // @@protoc_insertion_point(destructor:mediapipe.NormalizedLandmark)
  if (GetArenaForAllocation() != nullptr) return;
  SharedDtor();
  _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

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

void NormalizedLandmark::ArenaDtor(void* object) {
  NormalizedLandmark* _this = reinterpret_cast< NormalizedLandmark* >(object);
  (void)_this;
}
void NormalizedLandmark::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
}
void NormalizedLandmark::SetCachedSize(int size) const {
  _cached_size_.Set(size);
}

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

  cached_has_bits = _has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    ::memset(&x_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&presence_) -
        reinterpret_cast<char*>(&x_)) + sizeof(presence_));
  }
  _has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* NormalizedLandmark::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  _Internal::HasBits has_bits{};
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // optional float x = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 13)) {
          _Internal::set_has_x(&has_bits);
          x_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float y = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 21)) {
          _Internal::set_has_y(&has_bits);
          y_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float z = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 29)) {
          _Internal::set_has_z(&has_bits);
          z_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float visibility = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 37)) {
          _Internal::set_has_visibility(&has_bits);
          visibility_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // optional float presence = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 45)) {
          _Internal::set_has_presence(&has_bits);
          presence_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  _has_bits_.Or(has_bits);
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

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

  cached_has_bits = _has_bits_[0];
  // optional float x = 1;
  if (cached_has_bits & 0x00000001u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFloatToArray(1, this->_internal_x(), target);
  }

  // optional float y = 2;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFloatToArray(2, this->_internal_y(), target);
  }

  // optional float z = 3;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFloatToArray(3, this->_internal_z(), target);
  }

  // optional float visibility = 4;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFloatToArray(4, this->_internal_visibility(), target);
  }

  // optional float presence = 5;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFloatToArray(5, this->_internal_presence(), target);
  }

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

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

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

  cached_has_bits = _has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    // optional float x = 1;
    if (cached_has_bits & 0x00000001u) {
      total_size += 1 + 4;
    }

    // optional float y = 2;
    if (cached_has_bits & 0x00000002u) {
      total_size += 1 + 4;
    }

    // optional float z = 3;
    if (cached_has_bits & 0x00000004u) {
      total_size += 1 + 4;
    }

    // optional float visibility = 4;
    if (cached_has_bits & 0x00000008u) {
      total_size += 1 + 4;
    }

    // optional float presence = 5;
    if (cached_has_bits & 0x00000010u) {
      total_size += 1 + 4;
    }

  }
  return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
}

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

void NormalizedLandmark::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
                      const ::PROTOBUF_NAMESPACE_ID::Message& from) {
  static_cast<NormalizedLandmark *>(to)->MergeFrom(
      static_cast<const NormalizedLandmark &>(from));
}


void NormalizedLandmark::MergeFrom(const NormalizedLandmark& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:mediapipe.NormalizedLandmark)
  GOOGLE_DCHECK_NE(&from, this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    if (cached_has_bits & 0x00000001u) {
      x_ = from.x_;
    }
    if (cached_has_bits & 0x00000002u) {
      y_ = from.y_;
    }
    if (cached_has_bits & 0x00000004u) {
      z_ = from.z_;
    }
    if (cached_has_bits & 0x00000008u) {
      visibility_ = from.visibility_;
    }
    if (cached_has_bits & 0x00000010u) {
      presence_ = from.presence_;
    }
    _has_bits_[0] |= cached_has_bits;
  }
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void NormalizedLandmark::InternalSwap(NormalizedLandmark* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_has_bits_[0], other->_has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(NormalizedLandmark, presence_)
      + sizeof(NormalizedLandmark::presence_)
      - PROTOBUF_FIELD_OFFSET(NormalizedLandmark, x_)>(
          reinterpret_cast<char*>(&x_),
          reinterpret_cast<char*>(&other->x_));
}

::PROTOBUF_NAMESPACE_ID::Metadata NormalizedLandmark::GetMetadata() const {
  return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
      &descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto_getter, &descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto_once,
      file_level_metadata_mediapipe_2fframework_2fformats_2flandmark_2eproto[3]);
}

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

class NormalizedLandmarkList::_Internal {
 public:
};

NormalizedLandmarkList::NormalizedLandmarkList(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
  landmark_(arena) {
  SharedCtor();
  if (!is_message_owned) {
    RegisterArenaDtor(arena);
  }
  // @@protoc_insertion_point(arena_constructor:mediapipe.NormalizedLandmarkList)
}
NormalizedLandmarkList::NormalizedLandmarkList(const NormalizedLandmarkList& from)
  : ::PROTOBUF_NAMESPACE_ID::Message(),
      landmark_(from.landmark_) {
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:mediapipe.NormalizedLandmarkList)
}

inline void NormalizedLandmarkList::SharedCtor() {
}

NormalizedLandmarkList::~NormalizedLandmarkList() {
  // @@protoc_insertion_point(destructor:mediapipe.NormalizedLandmarkList)
  if (GetArenaForAllocation() != nullptr) return;
  SharedDtor();
  _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

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

void NormalizedLandmarkList::ArenaDtor(void* object) {
  NormalizedLandmarkList* _this = reinterpret_cast< NormalizedLandmarkList* >(object);
  (void)_this;
}
void NormalizedLandmarkList::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
}
void NormalizedLandmarkList::SetCachedSize(int size) const {
  _cached_size_.Set(size);
}

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

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

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

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

  // repeated .mediapipe.NormalizedLandmark landmark = 1;
  for (unsigned int i = 0,
      n = static_cast<unsigned int>(this->_internal_landmark_size()); i < n; i++) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, this->_internal_landmark(i), target, stream);
  }

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

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

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

  // repeated .mediapipe.NormalizedLandmark landmark = 1;
  total_size += 1UL * this->_internal_landmark_size();
  for (const auto& msg : this->landmark_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
}

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

void NormalizedLandmarkList::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
                      const ::PROTOBUF_NAMESPACE_ID::Message& from) {
  static_cast<NormalizedLandmarkList *>(to)->MergeFrom(
      static_cast<const NormalizedLandmarkList &>(from));
}


void NormalizedLandmarkList::MergeFrom(const NormalizedLandmarkList& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:mediapipe.NormalizedLandmarkList)
  GOOGLE_DCHECK_NE(&from, this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  landmark_.MergeFrom(from.landmark_);
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void NormalizedLandmarkList::InternalSwap(NormalizedLandmarkList* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  landmark_.InternalSwap(&other->landmark_);
}

::PROTOBUF_NAMESPACE_ID::Metadata NormalizedLandmarkList::GetMetadata() const {
  return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
      &descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto_getter, &descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto_once,
      file_level_metadata_mediapipe_2fframework_2fformats_2flandmark_2eproto[4]);
}

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

class NormalizedLandmarkListCollection::_Internal {
 public:
};

NormalizedLandmarkListCollection::NormalizedLandmarkListCollection(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
  landmark_list_(arena) {
  SharedCtor();
  if (!is_message_owned) {
    RegisterArenaDtor(arena);
  }
  // @@protoc_insertion_point(arena_constructor:mediapipe.NormalizedLandmarkListCollection)
}
NormalizedLandmarkListCollection::NormalizedLandmarkListCollection(const NormalizedLandmarkListCollection& from)
  : ::PROTOBUF_NAMESPACE_ID::Message(),
      landmark_list_(from.landmark_list_) {
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:mediapipe.NormalizedLandmarkListCollection)
}

inline void NormalizedLandmarkListCollection::SharedCtor() {
}

NormalizedLandmarkListCollection::~NormalizedLandmarkListCollection() {
  // @@protoc_insertion_point(destructor:mediapipe.NormalizedLandmarkListCollection)
  if (GetArenaForAllocation() != nullptr) return;
  SharedDtor();
  _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

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

void NormalizedLandmarkListCollection::ArenaDtor(void* object) {
  NormalizedLandmarkListCollection* _this = reinterpret_cast< NormalizedLandmarkListCollection* >(object);
  (void)_this;
}
void NormalizedLandmarkListCollection::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
}
void NormalizedLandmarkListCollection::SetCachedSize(int size) const {
  _cached_size_.Set(size);
}

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

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

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

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

  // repeated .mediapipe.NormalizedLandmarkList landmark_list = 1;
  for (unsigned int i = 0,
      n = static_cast<unsigned int>(this->_internal_landmark_list_size()); i < n; i++) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, this->_internal_landmark_list(i), target, stream);
  }

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

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

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

  // repeated .mediapipe.NormalizedLandmarkList landmark_list = 1;
  total_size += 1UL * this->_internal_landmark_list_size();
  for (const auto& msg : this->landmark_list_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
}

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

void NormalizedLandmarkListCollection::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
                      const ::PROTOBUF_NAMESPACE_ID::Message& from) {
  static_cast<NormalizedLandmarkListCollection *>(to)->MergeFrom(
      static_cast<const NormalizedLandmarkListCollection &>(from));
}


void NormalizedLandmarkListCollection::MergeFrom(const NormalizedLandmarkListCollection& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:mediapipe.NormalizedLandmarkListCollection)
  GOOGLE_DCHECK_NE(&from, this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  landmark_list_.MergeFrom(from.landmark_list_);
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

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

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

void NormalizedLandmarkListCollection::InternalSwap(NormalizedLandmarkListCollection* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  landmark_list_.InternalSwap(&other->landmark_list_);
}

::PROTOBUF_NAMESPACE_ID::Metadata NormalizedLandmarkListCollection::GetMetadata() const {
  return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
      &descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto_getter, &descriptor_table_mediapipe_2fframework_2fformats_2flandmark_2eproto_once,
      file_level_metadata_mediapipe_2fframework_2fformats_2flandmark_2eproto[5]);
}

// @@protoc_insertion_point(namespace_scope)
}  // namespace mediapipe
PROTOBUF_NAMESPACE_OPEN
template<> PROTOBUF_NOINLINE ::mediapipe::Landmark* Arena::CreateMaybeMessage< ::mediapipe::Landmark >(Arena* arena) {
  return Arena::CreateMessageInternal< ::mediapipe::Landmark >(arena);
}
template<> PROTOBUF_NOINLINE ::mediapipe::LandmarkList* Arena::CreateMaybeMessage< ::mediapipe::LandmarkList >(Arena* arena) {
  return Arena::CreateMessageInternal< ::mediapipe::LandmarkList >(arena);
}
template<> PROTOBUF_NOINLINE ::mediapipe::LandmarkListCollection* Arena::CreateMaybeMessage< ::mediapipe::LandmarkListCollection >(Arena* arena) {
  return Arena::CreateMessageInternal< ::mediapipe::LandmarkListCollection >(arena);
}
template<> PROTOBUF_NOINLINE ::mediapipe::NormalizedLandmark* Arena::CreateMaybeMessage< ::mediapipe::NormalizedLandmark >(Arena* arena) {
  return Arena::CreateMessageInternal< ::mediapipe::NormalizedLandmark >(arena);
}
template<> PROTOBUF_NOINLINE ::mediapipe::NormalizedLandmarkList* Arena::CreateMaybeMessage< ::mediapipe::NormalizedLandmarkList >(Arena* arena) {
  return Arena::CreateMessageInternal< ::mediapipe::NormalizedLandmarkList >(arena);
}
template<> PROTOBUF_NOINLINE ::mediapipe::NormalizedLandmarkListCollection* Arena::CreateMaybeMessage< ::mediapipe::NormalizedLandmarkListCollection >(Arena* arena) {
  return Arena::CreateMessageInternal< ::mediapipe::NormalizedLandmarkListCollection >(arena);
}
PROTOBUF_NAMESPACE_CLOSE

// @@protoc_insertion_point(global_scope)
#include <google/protobuf/port_undef.inc>