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

#include <algorithm>

#include <google/protobuf/stubs/common.h>
#include <google/protobuf/stubs/once.h>
#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/wire_format_lite_inl.h>
#include <google/protobuf/descriptor.h>
#include <google/protobuf/generated_message_reflection.h>
#include <google/protobuf/reflection_ops.h>
#include <google/protobuf/wire_format.h>

namespace {

const ::google::protobuf::Descriptor* BadaStatistics_descriptor_ = NULL;
const ::google::protobuf::internal::GeneratedMessageReflection*
  BadaStatistics_reflection_ = NULL;

}  

void protobuf_AssignDesc_bada_5fstatistics_2eproto() {
  protobuf_AddDesc_bada_5fstatistics_2eproto();
  const ::google::protobuf::FileDescriptor* file =
    ::google::protobuf::DescriptorPool::generated_pool()->FindFileByName(
      "bada_statistics.proto");
  GOOGLE_CHECK(file != NULL);
  BadaStatistics_descriptor_ = file->message_type(0);
  static const int BadaStatistics_offsets_[35] = {
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, topic_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, hostname_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, timestamp_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, servererror_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, notsupport_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, othererror_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getok_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getnotfound_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, gettimeout_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getslow_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getlatency_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, mgetok_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, mgettimeout_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, mgetkeylen_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, mgetslow_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, mgetlatency_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, setok_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, settimeout_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, setslow_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, setlatency_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, casok_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, castimeout_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, casslow_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, caslatency_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getifallok_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getifallnotfoud_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getifallnotstrict_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getifallnotenough_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getifalltimeout_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getifallslow_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getifalllatency_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, deleteok_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, deletetimeout_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, deleteslow_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, deletelatency_),
  };
  BadaStatistics_reflection_ =
    new ::google::protobuf::internal::GeneratedMessageReflection(
      BadaStatistics_descriptor_,
      BadaStatistics::default_instance_,
      BadaStatistics_offsets_,
      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, _has_bits_[0]),
      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, _unknown_fields_),
      -1,
      ::google::protobuf::DescriptorPool::generated_pool(),
      ::google::protobuf::MessageFactory::generated_factory(),
      sizeof(BadaStatistics));
}

namespace {

GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AssignDescriptors_once_);
inline void protobuf_AssignDescriptorsOnce() {
  ::google::protobuf::GoogleOnceInit(&protobuf_AssignDescriptors_once_,
                 &protobuf_AssignDesc_bada_5fstatistics_2eproto);
}

void protobuf_RegisterTypes(const ::std::string&) {
  protobuf_AssignDescriptorsOnce();
  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
    BadaStatistics_descriptor_, &BadaStatistics::default_instance());
}

}  

void protobuf_ShutdownFile_bada_5fstatistics_2eproto() {
  delete BadaStatistics::default_instance_;
  delete BadaStatistics_reflection_;
}

void protobuf_AddDesc_bada_5fstatistics_2eproto() {
  static bool already_here = false;
  if (already_here) return;
  already_here = true;
  GOOGLE_PROTOBUF_VERIFY_VERSION;

  ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
    "\n\025bada_statistics.proto\"\315\005\n\016BadaStatisti"
    "cs\022\r\n\005topic\030\001 \002(\014\022\020\n\010hostname\030\002 \002(\014\022\021\n\tt"
    "imestamp\030\003 \002(\005\022\023\n\013servererror\030\004 \001(\005\022\022\n\nn"
    "otsupport\030\005 \001(\005\022\022\n\nothererror\030\006 \001(\005\022\r\n\005g"
    "etok\030\007 \001(\005\022\023\n\013getnotfound\030\010 \001(\005\022\022\n\ngetti"
    "meout\030\t \001(\005\022\017\n\007getslow\030\n \001(\005\022\022\n\ngetlaten"
    "cy\030\013 \001(\002\022\016\n\006mgetok\030\014 \001(\005\022\023\n\013mgettimeout\030"
    "\r \001(\005\022\022\n\nmgetkeylen\030\016 \001(\005\022\020\n\010mgetslow\030\017 "
    "\001(\005\022\023\n\013mgetlatency\030\020 \001(\002\022\r\n\005setok\030\021 \001(\005\022"
    "\022\n\nsettimeout\030\022 \001(\005\022\017\n\007setslow\030\023 \001(\005\022\022\n\n"
    "setlatency\030\024 \001(\002\022\r\n\005casok\030\025 \001(\005\022\022\n\ncasti"
    "meout\030\026 \001(\005\022\017\n\007casslow\030\027 \001(\005\022\022\n\ncaslaten"
    "cy\030\030 \001(\002\022\022\n\ngetifallok\030\031 \001(\005\022\027\n\017getifall"
    "notfoud\030\032 \001(\005\022\031\n\021getifallnotstrict\030\033 \001(\005"
    "\022\031\n\021getifallnotenough\030\034 \001(\005\022\027\n\017getifallt"
    "imeout\030\035 \001(\005\022\024\n\014getifallslow\030\036 \001(\005\022\027\n\017ge"
    "tifalllatency\030\037 \001(\002\022\020\n\010deleteok\030  \001(\005\022\025\n"
    "\rdeletetimeout\030! \001(\005\022\022\n\ndeleteslow\030\" \001(\005"
    "\022\025\n\rdeletelatency\030# \001(\002", 743);
  ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
    "bada_statistics.proto", &protobuf_RegisterTypes);
  BadaStatistics::default_instance_ = new BadaStatistics();
  BadaStatistics::default_instance_->InitAsDefaultInstance();
  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_bada_5fstatistics_2eproto);
}

struct StaticDescriptorInitializer_bada_5fstatistics_2eproto {
  StaticDescriptorInitializer_bada_5fstatistics_2eproto() {
    protobuf_AddDesc_bada_5fstatistics_2eproto();
  }
} static_descriptor_initializer_bada_5fstatistics_2eproto_;

#ifndef _MSC_VER
const int BadaStatistics::kTopicFieldNumber;
const int BadaStatistics::kHostnameFieldNumber;
const int BadaStatistics::kTimestampFieldNumber;
const int BadaStatistics::kServererrorFieldNumber;
const int BadaStatistics::kNotsupportFieldNumber;
const int BadaStatistics::kOthererrorFieldNumber;
const int BadaStatistics::kGetokFieldNumber;
const int BadaStatistics::kGetnotfoundFieldNumber;
const int BadaStatistics::kGettimeoutFieldNumber;
const int BadaStatistics::kGetslowFieldNumber;
const int BadaStatistics::kGetlatencyFieldNumber;
const int BadaStatistics::kMgetokFieldNumber;
const int BadaStatistics::kMgettimeoutFieldNumber;
const int BadaStatistics::kMgetkeylenFieldNumber;
const int BadaStatistics::kMgetslowFieldNumber;
const int BadaStatistics::kMgetlatencyFieldNumber;
const int BadaStatistics::kSetokFieldNumber;
const int BadaStatistics::kSettimeoutFieldNumber;
const int BadaStatistics::kSetslowFieldNumber;
const int BadaStatistics::kSetlatencyFieldNumber;
const int BadaStatistics::kCasokFieldNumber;
const int BadaStatistics::kCastimeoutFieldNumber;
const int BadaStatistics::kCasslowFieldNumber;
const int BadaStatistics::kCaslatencyFieldNumber;
const int BadaStatistics::kGetifallokFieldNumber;
const int BadaStatistics::kGetifallnotfoudFieldNumber;
const int BadaStatistics::kGetifallnotstrictFieldNumber;
const int BadaStatistics::kGetifallnotenoughFieldNumber;
const int BadaStatistics::kGetifalltimeoutFieldNumber;
const int BadaStatistics::kGetifallslowFieldNumber;
const int BadaStatistics::kGetifalllatencyFieldNumber;
const int BadaStatistics::kDeleteokFieldNumber;
const int BadaStatistics::kDeletetimeoutFieldNumber;
const int BadaStatistics::kDeleteslowFieldNumber;
const int BadaStatistics::kDeletelatencyFieldNumber;
#endif  

BadaStatistics::BadaStatistics()
  : ::google::protobuf::Message() {
  SharedCtor();
}

void BadaStatistics::InitAsDefaultInstance() {
}

BadaStatistics::BadaStatistics(const BadaStatistics& from)
  : ::google::protobuf::Message() {
  SharedCtor();
  MergeFrom(from);
}

void BadaStatistics::SharedCtor() {
  _cached_size_ = 0;
  topic_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
  hostname_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
  timestamp_ = 0;
  servererror_ = 0;
  notsupport_ = 0;
  othererror_ = 0;
  getok_ = 0;
  getnotfound_ = 0;
  gettimeout_ = 0;
  getslow_ = 0;
  getlatency_ = 0;
  mgetok_ = 0;
  mgettimeout_ = 0;
  mgetkeylen_ = 0;
  mgetslow_ = 0;
  mgetlatency_ = 0;
  setok_ = 0;
  settimeout_ = 0;
  setslow_ = 0;
  setlatency_ = 0;
  casok_ = 0;
  castimeout_ = 0;
  casslow_ = 0;
  caslatency_ = 0;
  getifallok_ = 0;
  getifallnotfoud_ = 0;
  getifallnotstrict_ = 0;
  getifallnotenough_ = 0;
  getifalltimeout_ = 0;
  getifallslow_ = 0;
  getifalllatency_ = 0;
  deleteok_ = 0;
  deletetimeout_ = 0;
  deleteslow_ = 0;
  deletelatency_ = 0;
  ::memset(_has_bits_, 0, sizeof(_has_bits_));
}

BadaStatistics::~BadaStatistics() {
  SharedDtor();
}

void BadaStatistics::SharedDtor() {
  if (topic_ != &::google::protobuf::internal::kEmptyString) {
    delete topic_;
  }
  if (hostname_ != &::google::protobuf::internal::kEmptyString) {
    delete hostname_;
  }
  if (this != default_instance_) {
  }
}

void BadaStatistics::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const ::google::protobuf::Descriptor* BadaStatistics::descriptor() {
  protobuf_AssignDescriptorsOnce();
  return BadaStatistics_descriptor_;
}

const BadaStatistics& BadaStatistics::default_instance() {
  if (default_instance_ == NULL) protobuf_AddDesc_bada_5fstatistics_2eproto();
  return *default_instance_;
}

BadaStatistics* BadaStatistics::default_instance_ = NULL;

BadaStatistics* BadaStatistics::New() const {
  return new BadaStatistics;
}

void BadaStatistics::Clear() {
  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    if (has_topic()) {
      if (topic_ != &::google::protobuf::internal::kEmptyString) {
        topic_->clear();
      }
    }
    if (has_hostname()) {
      if (hostname_ != &::google::protobuf::internal::kEmptyString) {
        hostname_->clear();
      }
    }
    timestamp_ = 0;
    servererror_ = 0;
    notsupport_ = 0;
    othererror_ = 0;
    getok_ = 0;
    getnotfound_ = 0;
  }
  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
    gettimeout_ = 0;
    getslow_ = 0;
    getlatency_ = 0;
    mgetok_ = 0;
    mgettimeout_ = 0;
    mgetkeylen_ = 0;
    mgetslow_ = 0;
    mgetlatency_ = 0;
  }
  if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) {
    setok_ = 0;
    settimeout_ = 0;
    setslow_ = 0;
    setlatency_ = 0;
    casok_ = 0;
    castimeout_ = 0;
    casslow_ = 0;
    caslatency_ = 0;
  }
  if (_has_bits_[24 / 32] & (0xffu << (24 % 32))) {
    getifallok_ = 0;
    getifallnotfoud_ = 0;
    getifallnotstrict_ = 0;
    getifallnotenough_ = 0;
    getifalltimeout_ = 0;
    getifallslow_ = 0;
    getifalllatency_ = 0;
    deleteok_ = 0;
  }
  if (_has_bits_[32 / 32] & (0xffu << (32 % 32))) {
    deletetimeout_ = 0;
    deleteslow_ = 0;
    deletelatency_ = 0;
  }
  ::memset(_has_bits_, 0, sizeof(_has_bits_));
  mutable_unknown_fields()->Clear();
}

bool BadaStatistics::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
  ::google::protobuf::uint32 tag;
  while ((tag = input->ReadTag()) != 0) {
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {

      case 1: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
                input, this->mutable_topic()));
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(18)) goto parse_hostname;
        break;
      }

      case 2: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
         parse_hostname:
          DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
                input, this->mutable_hostname()));
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(24)) goto parse_timestamp;
        break;
      }

      case 3: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_timestamp:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &timestamp_)));
          set_has_timestamp();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(32)) goto parse_servererror;
        break;
      }

      case 4: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_servererror:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &servererror_)));
          set_has_servererror();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(40)) goto parse_notsupport;
        break;
      }

      case 5: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_notsupport:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &notsupport_)));
          set_has_notsupport();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(48)) goto parse_othererror;
        break;
      }

      case 6: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_othererror:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &othererror_)));
          set_has_othererror();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(56)) goto parse_getok;
        break;
      }

      case 7: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getok:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getok_)));
          set_has_getok();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(64)) goto parse_getnotfound;
        break;
      }

      case 8: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getnotfound:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getnotfound_)));
          set_has_getnotfound();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(72)) goto parse_gettimeout;
        break;
      }

      case 9: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_gettimeout:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &gettimeout_)));
          set_has_gettimeout();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(80)) goto parse_getslow;
        break;
      }

      case 10: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getslow:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getslow_)));
          set_has_getslow();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(93)) goto parse_getlatency;
        break;
      }

      case 11: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
         parse_getlatency:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                 input, &getlatency_)));
          set_has_getlatency();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(96)) goto parse_mgetok;
        break;
      }

      case 12: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_mgetok:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &mgetok_)));
          set_has_mgetok();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(104)) goto parse_mgettimeout;
        break;
      }

      case 13: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_mgettimeout:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &mgettimeout_)));
          set_has_mgettimeout();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(112)) goto parse_mgetkeylen;
        break;
      }

      case 14: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_mgetkeylen:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &mgetkeylen_)));
          set_has_mgetkeylen();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(120)) goto parse_mgetslow;
        break;
      }

      case 15: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_mgetslow:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &mgetslow_)));
          set_has_mgetslow();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(133)) goto parse_mgetlatency;
        break;
      }

      case 16: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
         parse_mgetlatency:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                 input, &mgetlatency_)));
          set_has_mgetlatency();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(136)) goto parse_setok;
        break;
      }

      case 17: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_setok:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &setok_)));
          set_has_setok();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(144)) goto parse_settimeout;
        break;
      }

      case 18: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_settimeout:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &settimeout_)));
          set_has_settimeout();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(152)) goto parse_setslow;
        break;
      }

      case 19: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_setslow:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &setslow_)));
          set_has_setslow();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(165)) goto parse_setlatency;
        break;
      }

      case 20: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
         parse_setlatency:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                 input, &setlatency_)));
          set_has_setlatency();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(168)) goto parse_casok;
        break;
      }

      case 21: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_casok:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &casok_)));
          set_has_casok();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(176)) goto parse_castimeout;
        break;
      }

      case 22: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_castimeout:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &castimeout_)));
          set_has_castimeout();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(184)) goto parse_casslow;
        break;
      }

      case 23: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_casslow:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &casslow_)));
          set_has_casslow();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(197)) goto parse_caslatency;
        break;
      }

      case 24: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
         parse_caslatency:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                 input, &caslatency_)));
          set_has_caslatency();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(200)) goto parse_getifallok;
        break;
      }

      case 25: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getifallok:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getifallok_)));
          set_has_getifallok();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(208)) goto parse_getifallnotfoud;
        break;
      }

      case 26: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getifallnotfoud:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getifallnotfoud_)));
          set_has_getifallnotfoud();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(216)) goto parse_getifallnotstrict;
        break;
      }

      case 27: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getifallnotstrict:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getifallnotstrict_)));
          set_has_getifallnotstrict();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(224)) goto parse_getifallnotenough;
        break;
      }

      case 28: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getifallnotenough:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getifallnotenough_)));
          set_has_getifallnotenough();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(232)) goto parse_getifalltimeout;
        break;
      }

      case 29: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getifalltimeout:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getifalltimeout_)));
          set_has_getifalltimeout();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(240)) goto parse_getifallslow;
        break;
      }

      case 30: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getifallslow:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getifallslow_)));
          set_has_getifallslow();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(253)) goto parse_getifalllatency;
        break;
      }

      case 31: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
         parse_getifalllatency:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                 input, &getifalllatency_)));
          set_has_getifalllatency();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(256)) goto parse_deleteok;
        break;
      }

      case 32: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_deleteok:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &deleteok_)));
          set_has_deleteok();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(264)) goto parse_deletetimeout;
        break;
      }

      case 33: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_deletetimeout:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &deletetimeout_)));
          set_has_deletetimeout();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(272)) goto parse_deleteslow;
        break;
      }

      case 34: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_deleteslow:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &deleteslow_)));
          set_has_deleteslow();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(285)) goto parse_deletelatency;
        break;
      }

      case 35: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
         parse_deletelatency:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                 input, &deletelatency_)));
          set_has_deletelatency();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectAtEnd()) return true;
        break;
      }

      default: {
      handle_uninterpreted:
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
          return true;
        }
        DO_(::google::protobuf::internal::WireFormat::SkipField(
              input, tag, mutable_unknown_fields()));
        break;
      }
    }
  }
  return true;
#undef DO_
}

void BadaStatistics::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {

  if (has_topic()) {
    ::google::protobuf::internal::WireFormatLite::WriteBytes(
      1, this->topic(), output);
  }

  if (has_hostname()) {
    ::google::protobuf::internal::WireFormatLite::WriteBytes(
      2, this->hostname(), output);
  }

  if (has_timestamp()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->timestamp(), output);
  }

  if (has_servererror()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(4, this->servererror(), output);
  }

  if (has_notsupport()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(5, this->notsupport(), output);
  }

  if (has_othererror()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(6, this->othererror(), output);
  }

  if (has_getok()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(7, this->getok(), output);
  }

  if (has_getnotfound()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(8, this->getnotfound(), output);
  }

  if (has_gettimeout()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(9, this->gettimeout(), output);
  }

  if (has_getslow()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(10, this->getslow(), output);
  }

  if (has_getlatency()) {
    ::google::protobuf::internal::WireFormatLite::WriteFloat(11, this->getlatency(), output);
  }

  if (has_mgetok()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(12, this->mgetok(), output);
  }

  if (has_mgettimeout()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(13, this->mgettimeout(), output);
  }

  if (has_mgetkeylen()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(14, this->mgetkeylen(), output);
  }

  if (has_mgetslow()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(15, this->mgetslow(), output);
  }

  if (has_mgetlatency()) {
    ::google::protobuf::internal::WireFormatLite::WriteFloat(16, this->mgetlatency(), output);
  }

  if (has_setok()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(17, this->setok(), output);
  }

  if (has_settimeout()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(18, this->settimeout(), output);
  }

  if (has_setslow()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(19, this->setslow(), output);
  }

  if (has_setlatency()) {
    ::google::protobuf::internal::WireFormatLite::WriteFloat(20, this->setlatency(), output);
  }

  if (has_casok()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(21, this->casok(), output);
  }

  if (has_castimeout()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(22, this->castimeout(), output);
  }

  if (has_casslow()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(23, this->casslow(), output);
  }

  if (has_caslatency()) {
    ::google::protobuf::internal::WireFormatLite::WriteFloat(24, this->caslatency(), output);
  }

  if (has_getifallok()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(25, this->getifallok(), output);
  }

  if (has_getifallnotfoud()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(26, this->getifallnotfoud(), output);
  }

  if (has_getifallnotstrict()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(27, this->getifallnotstrict(), output);
  }

  if (has_getifallnotenough()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(28, this->getifallnotenough(), output);
  }

  if (has_getifalltimeout()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(29, this->getifalltimeout(), output);
  }

  if (has_getifallslow()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(30, this->getifallslow(), output);
  }

  if (has_getifalllatency()) {
    ::google::protobuf::internal::WireFormatLite::WriteFloat(31, this->getifalllatency(), output);
  }

  if (has_deleteok()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(32, this->deleteok(), output);
  }

  if (has_deletetimeout()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(33, this->deletetimeout(), output);
  }

  if (has_deleteslow()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(34, this->deleteslow(), output);
  }

  if (has_deletelatency()) {
    ::google::protobuf::internal::WireFormatLite::WriteFloat(35, this->deletelatency(), output);
  }

  if (!unknown_fields().empty()) {
    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
        unknown_fields(), output);
  }
}

::google::protobuf::uint8* BadaStatistics::SerializeWithCachedSizesToArray(
    ::google::protobuf::uint8* target) const {

  if (has_topic()) {
    target =
      ::google::protobuf::internal::WireFormatLite::WriteBytesToArray(
        1, this->topic(), target);
  }

  if (has_hostname()) {
    target =
      ::google::protobuf::internal::WireFormatLite::WriteBytesToArray(
        2, this->hostname(), target);
  }

  if (has_timestamp()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->timestamp(), target);
  }

  if (has_servererror()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(4, this->servererror(), target);
  }

  if (has_notsupport()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(5, this->notsupport(), target);
  }

  if (has_othererror()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(6, this->othererror(), target);
  }

  if (has_getok()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(7, this->getok(), target);
  }

  if (has_getnotfound()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(8, this->getnotfound(), target);
  }

  if (has_gettimeout()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(9, this->gettimeout(), target);
  }

  if (has_getslow()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(10, this->getslow(), target);
  }

  if (has_getlatency()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(11, this->getlatency(), target);
  }

  if (has_mgetok()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(12, this->mgetok(), target);
  }

  if (has_mgettimeout()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(13, this->mgettimeout(), target);
  }

  if (has_mgetkeylen()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(14, this->mgetkeylen(), target);
  }

  if (has_mgetslow()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(15, this->mgetslow(), target);
  }

  if (has_mgetlatency()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(16, this->mgetlatency(), target);
  }

  if (has_setok()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(17, this->setok(), target);
  }

  if (has_settimeout()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(18, this->settimeout(), target);
  }

  if (has_setslow()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(19, this->setslow(), target);
  }

  if (has_setlatency()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(20, this->setlatency(), target);
  }

  if (has_casok()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(21, this->casok(), target);
  }

  if (has_castimeout()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(22, this->castimeout(), target);
  }

  if (has_casslow()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(23, this->casslow(), target);
  }

  if (has_caslatency()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(24, this->caslatency(), target);
  }

  if (has_getifallok()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(25, this->getifallok(), target);
  }

  if (has_getifallnotfoud()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(26, this->getifallnotfoud(), target);
  }

  if (has_getifallnotstrict()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(27, this->getifallnotstrict(), target);
  }

  if (has_getifallnotenough()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(28, this->getifallnotenough(), target);
  }

  if (has_getifalltimeout()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(29, this->getifalltimeout(), target);
  }

  if (has_getifallslow()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(30, this->getifallslow(), target);
  }

  if (has_getifalllatency()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(31, this->getifalllatency(), target);
  }

  if (has_deleteok()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(32, this->deleteok(), target);
  }

  if (has_deletetimeout()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(33, this->deletetimeout(), target);
  }

  if (has_deleteslow()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(34, this->deleteslow(), target);
  }

  if (has_deletelatency()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(35, this->deletelatency(), target);
  }

  if (!unknown_fields().empty()) {
    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
        unknown_fields(), target);
  }
  return target;
}

int BadaStatistics::ByteSize() const {
  int total_size = 0;

  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {

    if (has_topic()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::BytesSize(
          this->topic());
    }

    if (has_hostname()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::BytesSize(
          this->hostname());
    }

    if (has_timestamp()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->timestamp());
    }

    if (has_servererror()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->servererror());
    }

    if (has_notsupport()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->notsupport());
    }

    if (has_othererror()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->othererror());
    }

    if (has_getok()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getok());
    }

    if (has_getnotfound()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getnotfound());
    }

  }
  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {

    if (has_gettimeout()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->gettimeout());
    }

    if (has_getslow()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getslow());
    }

    if (has_getlatency()) {
      total_size += 1 + 4;
    }

    if (has_mgetok()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->mgetok());
    }

    if (has_mgettimeout()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->mgettimeout());
    }

    if (has_mgetkeylen()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->mgetkeylen());
    }

    if (has_mgetslow()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->mgetslow());
    }

    if (has_mgetlatency()) {
      total_size += 2 + 4;
    }

  }
  if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) {

    if (has_setok()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->setok());
    }

    if (has_settimeout()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->settimeout());
    }

    if (has_setslow()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->setslow());
    }

    if (has_setlatency()) {
      total_size += 2 + 4;
    }

    if (has_casok()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->casok());
    }

    if (has_castimeout()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->castimeout());
    }

    if (has_casslow()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->casslow());
    }

    if (has_caslatency()) {
      total_size += 2 + 4;
    }

  }
  if (_has_bits_[24 / 32] & (0xffu << (24 % 32))) {

    if (has_getifallok()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getifallok());
    }

    if (has_getifallnotfoud()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getifallnotfoud());
    }

    if (has_getifallnotstrict()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getifallnotstrict());
    }

    if (has_getifallnotenough()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getifallnotenough());
    }

    if (has_getifalltimeout()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getifalltimeout());
    }

    if (has_getifallslow()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getifallslow());
    }

    if (has_getifalllatency()) {
      total_size += 2 + 4;
    }

    if (has_deleteok()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->deleteok());
    }

  }
  if (_has_bits_[32 / 32] & (0xffu << (32 % 32))) {

    if (has_deletetimeout()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->deletetimeout());
    }

    if (has_deleteslow()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->deleteslow());
    }

    if (has_deletelatency()) {
      total_size += 2 + 4;
    }

  }
  if (!unknown_fields().empty()) {
    total_size +=
      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
        unknown_fields());
  }
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = total_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void BadaStatistics::MergeFrom(const ::google::protobuf::Message& from) {
  GOOGLE_CHECK_NE(&from, this);
  const BadaStatistics* source =
    ::google::protobuf::internal::dynamic_cast_if_available<const BadaStatistics*>(
      &from);
  if (source == NULL) {
    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
  } else {
    MergeFrom(*source);
  }
}

void BadaStatistics::MergeFrom(const BadaStatistics& from) {
  GOOGLE_CHECK_NE(&from, this);
  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    if (from.has_topic()) {
      set_topic(from.topic());
    }
    if (from.has_hostname()) {
      set_hostname(from.hostname());
    }
    if (from.has_timestamp()) {
      set_timestamp(from.timestamp());
    }
    if (from.has_servererror()) {
      set_servererror(from.servererror());
    }
    if (from.has_notsupport()) {
      set_notsupport(from.notsupport());
    }
    if (from.has_othererror()) {
      set_othererror(from.othererror());
    }
    if (from.has_getok()) {
      set_getok(from.getok());
    }
    if (from.has_getnotfound()) {
      set_getnotfound(from.getnotfound());
    }
  }
  if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) {
    if (from.has_gettimeout()) {
      set_gettimeout(from.gettimeout());
    }
    if (from.has_getslow()) {
      set_getslow(from.getslow());
    }
    if (from.has_getlatency()) {
      set_getlatency(from.getlatency());
    }
    if (from.has_mgetok()) {
      set_mgetok(from.mgetok());
    }
    if (from.has_mgettimeout()) {
      set_mgettimeout(from.mgettimeout());
    }
    if (from.has_mgetkeylen()) {
      set_mgetkeylen(from.mgetkeylen());
    }
    if (from.has_mgetslow()) {
      set_mgetslow(from.mgetslow());
    }
    if (from.has_mgetlatency()) {
      set_mgetlatency(from.mgetlatency());
    }
  }
  if (from._has_bits_[16 / 32] & (0xffu << (16 % 32))) {
    if (from.has_setok()) {
      set_setok(from.setok());
    }
    if (from.has_settimeout()) {
      set_settimeout(from.settimeout());
    }
    if (from.has_setslow()) {
      set_setslow(from.setslow());
    }
    if (from.has_setlatency()) {
      set_setlatency(from.setlatency());
    }
    if (from.has_casok()) {
      set_casok(from.casok());
    }
    if (from.has_castimeout()) {
      set_castimeout(from.castimeout());
    }
    if (from.has_casslow()) {
      set_casslow(from.casslow());
    }
    if (from.has_caslatency()) {
      set_caslatency(from.caslatency());
    }
  }
  if (from._has_bits_[24 / 32] & (0xffu << (24 % 32))) {
    if (from.has_getifallok()) {
      set_getifallok(from.getifallok());
    }
    if (from.has_getifallnotfoud()) {
      set_getifallnotfoud(from.getifallnotfoud());
    }
    if (from.has_getifallnotstrict()) {
      set_getifallnotstrict(from.getifallnotstrict());
    }
    if (from.has_getifallnotenough()) {
      set_getifallnotenough(from.getifallnotenough());
    }
    if (from.has_getifalltimeout()) {
      set_getifalltimeout(from.getifalltimeout());
    }
    if (from.has_getifallslow()) {
      set_getifallslow(from.getifallslow());
    }
    if (from.has_getifalllatency()) {
      set_getifalllatency(from.getifalllatency());
    }
    if (from.has_deleteok()) {
      set_deleteok(from.deleteok());
    }
  }
  if (from._has_bits_[32 / 32] & (0xffu << (32 % 32))) {
    if (from.has_deletetimeout()) {
      set_deletetimeout(from.deletetimeout());
    }
    if (from.has_deleteslow()) {
      set_deleteslow(from.deleteslow());
    }
    if (from.has_deletelatency()) {
      set_deletelatency(from.deletelatency());
    }
  }
  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
}

void BadaStatistics::CopyFrom(const ::google::protobuf::Message& from) {
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

void BadaStatistics::CopyFrom(const BadaStatistics& from) {
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool BadaStatistics::IsInitialized() const {
  if ((_has_bits_[0] & 0x00000007) != 0x00000007) return false;

  return true;
}

void BadaStatistics::Swap(BadaStatistics* other) {
  if (other != this) {
    std::swap(topic_, other->topic_);
    std::swap(hostname_, other->hostname_);
    std::swap(timestamp_, other->timestamp_);
    std::swap(servererror_, other->servererror_);
    std::swap(notsupport_, other->notsupport_);
    std::swap(othererror_, other->othererror_);
    std::swap(getok_, other->getok_);
    std::swap(getnotfound_, other->getnotfound_);
    std::swap(gettimeout_, other->gettimeout_);
    std::swap(getslow_, other->getslow_);
    std::swap(getlatency_, other->getlatency_);
    std::swap(mgetok_, other->mgetok_);
    std::swap(mgettimeout_, other->mgettimeout_);
    std::swap(mgetkeylen_, other->mgetkeylen_);
    std::swap(mgetslow_, other->mgetslow_);
    std::swap(mgetlatency_, other->mgetlatency_);
    std::swap(setok_, other->setok_);
    std::swap(settimeout_, other->settimeout_);
    std::swap(setslow_, other->setslow_);
    std::swap(setlatency_, other->setlatency_);
    std::swap(casok_, other->casok_);
    std::swap(castimeout_, other->castimeout_);
    std::swap(casslow_, other->casslow_);
    std::swap(caslatency_, other->caslatency_);
    std::swap(getifallok_, other->getifallok_);
    std::swap(getifallnotfoud_, other->getifallnotfoud_);
    std::swap(getifallnotstrict_, other->getifallnotstrict_);
    std::swap(getifallnotenough_, other->getifallnotenough_);
    std::swap(getifalltimeout_, other->getifalltimeout_);
    std::swap(getifallslow_, other->getifallslow_);
    std::swap(getifalllatency_, other->getifalllatency_);
    std::swap(deleteok_, other->deleteok_);
    std::swap(deletetimeout_, other->deletetimeout_);
    std::swap(deleteslow_, other->deleteslow_);
    std::swap(deletelatency_, other->deletelatency_);
    std::swap(_has_bits_[0], other->_has_bits_[0]);
    std::swap(_has_bits_[1], other->_has_bits_[1]);
    _unknown_fields_.Swap(&other->_unknown_fields_);
    std::swap(_cached_size_, other->_cached_size_);
  }
}

::google::protobuf::Metadata BadaStatistics::GetMetadata() const {
  protobuf_AssignDescriptorsOnce();
  ::google::protobuf::Metadata metadata;
  metadata.descriptor = BadaStatistics_descriptor_;
  metadata.reflection = BadaStatistics_reflection_;
  return metadata;
}
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: bada_statistics.proto

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

#include <algorithm>

#include <google/protobuf/stubs/common.h>
#include <google/protobuf/stubs/once.h>
#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/wire_format_lite_inl.h>
#include <google/protobuf/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)

namespace {

const ::google::protobuf::Descriptor* BadaStatistics_descriptor_ = NULL;
const ::google::protobuf::internal::GeneratedMessageReflection*
  BadaStatistics_reflection_ = NULL;

}  // namespace


void protobuf_AssignDesc_bada_5fstatistics_2eproto() {
  protobuf_AddDesc_bada_5fstatistics_2eproto();
  const ::google::protobuf::FileDescriptor* file =
    ::google::protobuf::DescriptorPool::generated_pool()->FindFileByName(
      "bada_statistics.proto");
  GOOGLE_CHECK(file != NULL);
  BadaStatistics_descriptor_ = file->message_type(0);
  static const int BadaStatistics_offsets_[35] = {
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, topic_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, hostname_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, timestamp_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, servererror_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, notsupport_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, othererror_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getok_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getnotfound_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, gettimeout_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getslow_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getlatency_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, mgetok_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, mgettimeout_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, mgetkeylen_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, mgetslow_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, mgetlatency_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, setok_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, settimeout_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, setslow_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, setlatency_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, casok_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, castimeout_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, casslow_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, caslatency_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getifallok_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getifallnotfoud_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getifallnotstrict_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getifallnotenough_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getifalltimeout_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getifallslow_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, getifalllatency_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, deleteok_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, deletetimeout_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, deleteslow_),
    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, deletelatency_),
  };
  BadaStatistics_reflection_ =
    new ::google::protobuf::internal::GeneratedMessageReflection(
      BadaStatistics_descriptor_,
      BadaStatistics::default_instance_,
      BadaStatistics_offsets_,
      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, _has_bits_[0]),
      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BadaStatistics, _unknown_fields_),
      -1,
      ::google::protobuf::DescriptorPool::generated_pool(),
      ::google::protobuf::MessageFactory::generated_factory(),
      sizeof(BadaStatistics));
}

namespace {

GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AssignDescriptors_once_);
inline void protobuf_AssignDescriptorsOnce() {
  ::google::protobuf::GoogleOnceInit(&protobuf_AssignDescriptors_once_,
                 &protobuf_AssignDesc_bada_5fstatistics_2eproto);
}

void protobuf_RegisterTypes(const ::std::string&) {
  protobuf_AssignDescriptorsOnce();
  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
    BadaStatistics_descriptor_, &BadaStatistics::default_instance());
}

}  // namespace

void protobuf_ShutdownFile_bada_5fstatistics_2eproto() {
  delete BadaStatistics::default_instance_;
  delete BadaStatistics_reflection_;
}

void protobuf_AddDesc_bada_5fstatistics_2eproto() {
  static bool already_here = false;
  if (already_here) return;
  already_here = true;
  GOOGLE_PROTOBUF_VERIFY_VERSION;

  ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
    "\n\025bada_statistics.proto\"\315\005\n\016BadaStatisti"
    "cs\022\r\n\005topic\030\001 \002(\014\022\020\n\010hostname\030\002 \002(\014\022\021\n\tt"
    "imestamp\030\003 \002(\005\022\023\n\013servererror\030\004 \001(\005\022\022\n\nn"
    "otsupport\030\005 \001(\005\022\022\n\nothererror\030\006 \001(\005\022\r\n\005g"
    "etok\030\007 \001(\005\022\023\n\013getnotfound\030\010 \001(\005\022\022\n\ngetti"
    "meout\030\t \001(\005\022\017\n\007getslow\030\n \001(\005\022\022\n\ngetlaten"
    "cy\030\013 \001(\002\022\016\n\006mgetok\030\014 \001(\005\022\023\n\013mgettimeout\030"
    "\r \001(\005\022\022\n\nmgetkeylen\030\016 \001(\005\022\020\n\010mgetslow\030\017 "
    "\001(\005\022\023\n\013mgetlatency\030\020 \001(\002\022\r\n\005setok\030\021 \001(\005\022"
    "\022\n\nsettimeout\030\022 \001(\005\022\017\n\007setslow\030\023 \001(\005\022\022\n\n"
    "setlatency\030\024 \001(\002\022\r\n\005casok\030\025 \001(\005\022\022\n\ncasti"
    "meout\030\026 \001(\005\022\017\n\007casslow\030\027 \001(\005\022\022\n\ncaslaten"
    "cy\030\030 \001(\002\022\022\n\ngetifallok\030\031 \001(\005\022\027\n\017getifall"
    "notfoud\030\032 \001(\005\022\031\n\021getifallnotstrict\030\033 \001(\005"
    "\022\031\n\021getifallnotenough\030\034 \001(\005\022\027\n\017getifallt"
    "imeout\030\035 \001(\005\022\024\n\014getifallslow\030\036 \001(\005\022\027\n\017ge"
    "tifalllatency\030\037 \001(\002\022\020\n\010deleteok\030  \001(\005\022\025\n"
    "\rdeletetimeout\030! \001(\005\022\022\n\ndeleteslow\030\" \001(\005"
    "\022\025\n\rdeletelatency\030# \001(\002", 743);
  ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
    "bada_statistics.proto", &protobuf_RegisterTypes);
  BadaStatistics::default_instance_ = new BadaStatistics();
  BadaStatistics::default_instance_->InitAsDefaultInstance();
  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_bada_5fstatistics_2eproto);
}

// Force AddDescriptors() to be called at static initialization time.
struct StaticDescriptorInitializer_bada_5fstatistics_2eproto {
  StaticDescriptorInitializer_bada_5fstatistics_2eproto() {
    protobuf_AddDesc_bada_5fstatistics_2eproto();
  }
} static_descriptor_initializer_bada_5fstatistics_2eproto_;

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

#ifndef _MSC_VER
const int BadaStatistics::kTopicFieldNumber;
const int BadaStatistics::kHostnameFieldNumber;
const int BadaStatistics::kTimestampFieldNumber;
const int BadaStatistics::kServererrorFieldNumber;
const int BadaStatistics::kNotsupportFieldNumber;
const int BadaStatistics::kOthererrorFieldNumber;
const int BadaStatistics::kGetokFieldNumber;
const int BadaStatistics::kGetnotfoundFieldNumber;
const int BadaStatistics::kGettimeoutFieldNumber;
const int BadaStatistics::kGetslowFieldNumber;
const int BadaStatistics::kGetlatencyFieldNumber;
const int BadaStatistics::kMgetokFieldNumber;
const int BadaStatistics::kMgettimeoutFieldNumber;
const int BadaStatistics::kMgetkeylenFieldNumber;
const int BadaStatistics::kMgetslowFieldNumber;
const int BadaStatistics::kMgetlatencyFieldNumber;
const int BadaStatistics::kSetokFieldNumber;
const int BadaStatistics::kSettimeoutFieldNumber;
const int BadaStatistics::kSetslowFieldNumber;
const int BadaStatistics::kSetlatencyFieldNumber;
const int BadaStatistics::kCasokFieldNumber;
const int BadaStatistics::kCastimeoutFieldNumber;
const int BadaStatistics::kCasslowFieldNumber;
const int BadaStatistics::kCaslatencyFieldNumber;
const int BadaStatistics::kGetifallokFieldNumber;
const int BadaStatistics::kGetifallnotfoudFieldNumber;
const int BadaStatistics::kGetifallnotstrictFieldNumber;
const int BadaStatistics::kGetifallnotenoughFieldNumber;
const int BadaStatistics::kGetifalltimeoutFieldNumber;
const int BadaStatistics::kGetifallslowFieldNumber;
const int BadaStatistics::kGetifalllatencyFieldNumber;
const int BadaStatistics::kDeleteokFieldNumber;
const int BadaStatistics::kDeletetimeoutFieldNumber;
const int BadaStatistics::kDeleteslowFieldNumber;
const int BadaStatistics::kDeletelatencyFieldNumber;
#endif  // !_MSC_VER

BadaStatistics::BadaStatistics()
  : ::google::protobuf::Message() {
  SharedCtor();
}

void BadaStatistics::InitAsDefaultInstance() {
}

BadaStatistics::BadaStatistics(const BadaStatistics& from)
  : ::google::protobuf::Message() {
  SharedCtor();
  MergeFrom(from);
}

void BadaStatistics::SharedCtor() {
  _cached_size_ = 0;
  topic_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
  hostname_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
  timestamp_ = 0;
  servererror_ = 0;
  notsupport_ = 0;
  othererror_ = 0;
  getok_ = 0;
  getnotfound_ = 0;
  gettimeout_ = 0;
  getslow_ = 0;
  getlatency_ = 0;
  mgetok_ = 0;
  mgettimeout_ = 0;
  mgetkeylen_ = 0;
  mgetslow_ = 0;
  mgetlatency_ = 0;
  setok_ = 0;
  settimeout_ = 0;
  setslow_ = 0;
  setlatency_ = 0;
  casok_ = 0;
  castimeout_ = 0;
  casslow_ = 0;
  caslatency_ = 0;
  getifallok_ = 0;
  getifallnotfoud_ = 0;
  getifallnotstrict_ = 0;
  getifallnotenough_ = 0;
  getifalltimeout_ = 0;
  getifallslow_ = 0;
  getifalllatency_ = 0;
  deleteok_ = 0;
  deletetimeout_ = 0;
  deleteslow_ = 0;
  deletelatency_ = 0;
  ::memset(_has_bits_, 0, sizeof(_has_bits_));
}

BadaStatistics::~BadaStatistics() {
  SharedDtor();
}

void BadaStatistics::SharedDtor() {
  if (topic_ != &::google::protobuf::internal::kEmptyString) {
    delete topic_;
  }
  if (hostname_ != &::google::protobuf::internal::kEmptyString) {
    delete hostname_;
  }
  if (this != default_instance_) {
  }
}

void BadaStatistics::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const ::google::protobuf::Descriptor* BadaStatistics::descriptor() {
  protobuf_AssignDescriptorsOnce();
  return BadaStatistics_descriptor_;
}

const BadaStatistics& BadaStatistics::default_instance() {
  if (default_instance_ == NULL) protobuf_AddDesc_bada_5fstatistics_2eproto();
  return *default_instance_;
}

BadaStatistics* BadaStatistics::default_instance_ = NULL;

BadaStatistics* BadaStatistics::New() const {
  return new BadaStatistics;
}

void BadaStatistics::Clear() {
  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    if (has_topic()) {
      if (topic_ != &::google::protobuf::internal::kEmptyString) {
        topic_->clear();
      }
    }
    if (has_hostname()) {
      if (hostname_ != &::google::protobuf::internal::kEmptyString) {
        hostname_->clear();
      }
    }
    timestamp_ = 0;
    servererror_ = 0;
    notsupport_ = 0;
    othererror_ = 0;
    getok_ = 0;
    getnotfound_ = 0;
  }
  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
    gettimeout_ = 0;
    getslow_ = 0;
    getlatency_ = 0;
    mgetok_ = 0;
    mgettimeout_ = 0;
    mgetkeylen_ = 0;
    mgetslow_ = 0;
    mgetlatency_ = 0;
  }
  if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) {
    setok_ = 0;
    settimeout_ = 0;
    setslow_ = 0;
    setlatency_ = 0;
    casok_ = 0;
    castimeout_ = 0;
    casslow_ = 0;
    caslatency_ = 0;
  }
  if (_has_bits_[24 / 32] & (0xffu << (24 % 32))) {
    getifallok_ = 0;
    getifallnotfoud_ = 0;
    getifallnotstrict_ = 0;
    getifallnotenough_ = 0;
    getifalltimeout_ = 0;
    getifallslow_ = 0;
    getifalllatency_ = 0;
    deleteok_ = 0;
  }
  if (_has_bits_[32 / 32] & (0xffu << (32 % 32))) {
    deletetimeout_ = 0;
    deleteslow_ = 0;
    deletelatency_ = 0;
  }
  ::memset(_has_bits_, 0, sizeof(_has_bits_));
  mutable_unknown_fields()->Clear();
}

bool BadaStatistics::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
  ::google::protobuf::uint32 tag;
  while ((tag = input->ReadTag()) != 0) {
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // required bytes topic = 1;
      case 1: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
          DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
                input, this->mutable_topic()));
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(18)) goto parse_hostname;
        break;
      }

      // required bytes hostname = 2;
      case 2: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
         parse_hostname:
          DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
                input, this->mutable_hostname()));
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(24)) goto parse_timestamp;
        break;
      }

      // required int32 timestamp = 3;
      case 3: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_timestamp:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &timestamp_)));
          set_has_timestamp();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(32)) goto parse_servererror;
        break;
      }

      // optional int32 servererror = 4;
      case 4: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_servererror:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &servererror_)));
          set_has_servererror();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(40)) goto parse_notsupport;
        break;
      }

      // optional int32 notsupport = 5;
      case 5: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_notsupport:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &notsupport_)));
          set_has_notsupport();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(48)) goto parse_othererror;
        break;
      }

      // optional int32 othererror = 6;
      case 6: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_othererror:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &othererror_)));
          set_has_othererror();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(56)) goto parse_getok;
        break;
      }

      // optional int32 getok = 7;
      case 7: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getok:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getok_)));
          set_has_getok();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(64)) goto parse_getnotfound;
        break;
      }

      // optional int32 getnotfound = 8;
      case 8: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getnotfound:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getnotfound_)));
          set_has_getnotfound();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(72)) goto parse_gettimeout;
        break;
      }

      // optional int32 gettimeout = 9;
      case 9: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_gettimeout:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &gettimeout_)));
          set_has_gettimeout();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(80)) goto parse_getslow;
        break;
      }

      // optional int32 getslow = 10;
      case 10: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getslow:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getslow_)));
          set_has_getslow();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(93)) goto parse_getlatency;
        break;
      }

      // optional float getlatency = 11;
      case 11: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
         parse_getlatency:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                 input, &getlatency_)));
          set_has_getlatency();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(96)) goto parse_mgetok;
        break;
      }

      // optional int32 mgetok = 12;
      case 12: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_mgetok:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &mgetok_)));
          set_has_mgetok();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(104)) goto parse_mgettimeout;
        break;
      }

      // optional int32 mgettimeout = 13;
      case 13: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_mgettimeout:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &mgettimeout_)));
          set_has_mgettimeout();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(112)) goto parse_mgetkeylen;
        break;
      }

      // optional int32 mgetkeylen = 14;
      case 14: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_mgetkeylen:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &mgetkeylen_)));
          set_has_mgetkeylen();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(120)) goto parse_mgetslow;
        break;
      }

      // optional int32 mgetslow = 15;
      case 15: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_mgetslow:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &mgetslow_)));
          set_has_mgetslow();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(133)) goto parse_mgetlatency;
        break;
      }

      // optional float mgetlatency = 16;
      case 16: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
         parse_mgetlatency:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                 input, &mgetlatency_)));
          set_has_mgetlatency();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(136)) goto parse_setok;
        break;
      }

      // optional int32 setok = 17;
      case 17: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_setok:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &setok_)));
          set_has_setok();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(144)) goto parse_settimeout;
        break;
      }

      // optional int32 settimeout = 18;
      case 18: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_settimeout:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &settimeout_)));
          set_has_settimeout();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(152)) goto parse_setslow;
        break;
      }

      // optional int32 setslow = 19;
      case 19: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_setslow:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &setslow_)));
          set_has_setslow();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(165)) goto parse_setlatency;
        break;
      }

      // optional float setlatency = 20;
      case 20: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
         parse_setlatency:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                 input, &setlatency_)));
          set_has_setlatency();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(168)) goto parse_casok;
        break;
      }

      // optional int32 casok = 21;
      case 21: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_casok:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &casok_)));
          set_has_casok();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(176)) goto parse_castimeout;
        break;
      }

      // optional int32 castimeout = 22;
      case 22: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_castimeout:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &castimeout_)));
          set_has_castimeout();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(184)) goto parse_casslow;
        break;
      }

      // optional int32 casslow = 23;
      case 23: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_casslow:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &casslow_)));
          set_has_casslow();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(197)) goto parse_caslatency;
        break;
      }

      // optional float caslatency = 24;
      case 24: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
         parse_caslatency:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                 input, &caslatency_)));
          set_has_caslatency();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(200)) goto parse_getifallok;
        break;
      }

      // optional int32 getifallok = 25;
      case 25: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getifallok:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getifallok_)));
          set_has_getifallok();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(208)) goto parse_getifallnotfoud;
        break;
      }

      // optional int32 getifallnotfoud = 26;
      case 26: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getifallnotfoud:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getifallnotfoud_)));
          set_has_getifallnotfoud();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(216)) goto parse_getifallnotstrict;
        break;
      }

      // optional int32 getifallnotstrict = 27;
      case 27: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getifallnotstrict:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getifallnotstrict_)));
          set_has_getifallnotstrict();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(224)) goto parse_getifallnotenough;
        break;
      }

      // optional int32 getifallnotenough = 28;
      case 28: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getifallnotenough:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getifallnotenough_)));
          set_has_getifallnotenough();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(232)) goto parse_getifalltimeout;
        break;
      }

      // optional int32 getifalltimeout = 29;
      case 29: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getifalltimeout:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getifalltimeout_)));
          set_has_getifalltimeout();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(240)) goto parse_getifallslow;
        break;
      }

      // optional int32 getifallslow = 30;
      case 30: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_getifallslow:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &getifallslow_)));
          set_has_getifallslow();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(253)) goto parse_getifalllatency;
        break;
      }

      // optional float getifalllatency = 31;
      case 31: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
         parse_getifalllatency:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                 input, &getifalllatency_)));
          set_has_getifalllatency();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(256)) goto parse_deleteok;
        break;
      }

      // optional int32 deleteok = 32;
      case 32: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_deleteok:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &deleteok_)));
          set_has_deleteok();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(264)) goto parse_deletetimeout;
        break;
      }

      // optional int32 deletetimeout = 33;
      case 33: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_deletetimeout:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &deletetimeout_)));
          set_has_deletetimeout();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(272)) goto parse_deleteslow;
        break;
      }

      // optional int32 deleteslow = 34;
      case 34: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
         parse_deleteslow:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &deleteslow_)));
          set_has_deleteslow();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectTag(285)) goto parse_deletelatency;
        break;
      }

      // optional float deletelatency = 35;
      case 35: {
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
         parse_deletelatency:
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                 input, &deletelatency_)));
          set_has_deletelatency();
        } else {
          goto handle_uninterpreted;
        }
        if (input->ExpectAtEnd()) return true;
        break;
      }

      default: {
      handle_uninterpreted:
        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
          return true;
        }
        DO_(::google::protobuf::internal::WireFormat::SkipField(
              input, tag, mutable_unknown_fields()));
        break;
      }
    }
  }
  return true;
#undef DO_
}

void BadaStatistics::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // required bytes topic = 1;
  if (has_topic()) {
    ::google::protobuf::internal::WireFormatLite::WriteBytes(
      1, this->topic(), output);
  }

  // required bytes hostname = 2;
  if (has_hostname()) {
    ::google::protobuf::internal::WireFormatLite::WriteBytes(
      2, this->hostname(), output);
  }

  // required int32 timestamp = 3;
  if (has_timestamp()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->timestamp(), output);
  }

  // optional int32 servererror = 4;
  if (has_servererror()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(4, this->servererror(), output);
  }

  // optional int32 notsupport = 5;
  if (has_notsupport()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(5, this->notsupport(), output);
  }

  // optional int32 othererror = 6;
  if (has_othererror()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(6, this->othererror(), output);
  }

  // optional int32 getok = 7;
  if (has_getok()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(7, this->getok(), output);
  }

  // optional int32 getnotfound = 8;
  if (has_getnotfound()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(8, this->getnotfound(), output);
  }

  // optional int32 gettimeout = 9;
  if (has_gettimeout()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(9, this->gettimeout(), output);
  }

  // optional int32 getslow = 10;
  if (has_getslow()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(10, this->getslow(), output);
  }

  // optional float getlatency = 11;
  if (has_getlatency()) {
    ::google::protobuf::internal::WireFormatLite::WriteFloat(11, this->getlatency(), output);
  }

  // optional int32 mgetok = 12;
  if (has_mgetok()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(12, this->mgetok(), output);
  }

  // optional int32 mgettimeout = 13;
  if (has_mgettimeout()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(13, this->mgettimeout(), output);
  }

  // optional int32 mgetkeylen = 14;
  if (has_mgetkeylen()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(14, this->mgetkeylen(), output);
  }

  // optional int32 mgetslow = 15;
  if (has_mgetslow()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(15, this->mgetslow(), output);
  }

  // optional float mgetlatency = 16;
  if (has_mgetlatency()) {
    ::google::protobuf::internal::WireFormatLite::WriteFloat(16, this->mgetlatency(), output);
  }

  // optional int32 setok = 17;
  if (has_setok()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(17, this->setok(), output);
  }

  // optional int32 settimeout = 18;
  if (has_settimeout()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(18, this->settimeout(), output);
  }

  // optional int32 setslow = 19;
  if (has_setslow()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(19, this->setslow(), output);
  }

  // optional float setlatency = 20;
  if (has_setlatency()) {
    ::google::protobuf::internal::WireFormatLite::WriteFloat(20, this->setlatency(), output);
  }

  // optional int32 casok = 21;
  if (has_casok()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(21, this->casok(), output);
  }

  // optional int32 castimeout = 22;
  if (has_castimeout()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(22, this->castimeout(), output);
  }

  // optional int32 casslow = 23;
  if (has_casslow()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(23, this->casslow(), output);
  }

  // optional float caslatency = 24;
  if (has_caslatency()) {
    ::google::protobuf::internal::WireFormatLite::WriteFloat(24, this->caslatency(), output);
  }

  // optional int32 getifallok = 25;
  if (has_getifallok()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(25, this->getifallok(), output);
  }

  // optional int32 getifallnotfoud = 26;
  if (has_getifallnotfoud()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(26, this->getifallnotfoud(), output);
  }

  // optional int32 getifallnotstrict = 27;
  if (has_getifallnotstrict()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(27, this->getifallnotstrict(), output);
  }

  // optional int32 getifallnotenough = 28;
  if (has_getifallnotenough()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(28, this->getifallnotenough(), output);
  }

  // optional int32 getifalltimeout = 29;
  if (has_getifalltimeout()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(29, this->getifalltimeout(), output);
  }

  // optional int32 getifallslow = 30;
  if (has_getifallslow()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(30, this->getifallslow(), output);
  }

  // optional float getifalllatency = 31;
  if (has_getifalllatency()) {
    ::google::protobuf::internal::WireFormatLite::WriteFloat(31, this->getifalllatency(), output);
  }

  // optional int32 deleteok = 32;
  if (has_deleteok()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(32, this->deleteok(), output);
  }

  // optional int32 deletetimeout = 33;
  if (has_deletetimeout()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(33, this->deletetimeout(), output);
  }

  // optional int32 deleteslow = 34;
  if (has_deleteslow()) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(34, this->deleteslow(), output);
  }

  // optional float deletelatency = 35;
  if (has_deletelatency()) {
    ::google::protobuf::internal::WireFormatLite::WriteFloat(35, this->deletelatency(), output);
  }

  if (!unknown_fields().empty()) {
    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
        unknown_fields(), output);
  }
}

::google::protobuf::uint8* BadaStatistics::SerializeWithCachedSizesToArray(
    ::google::protobuf::uint8* target) const {
  // required bytes topic = 1;
  if (has_topic()) {
    target =
      ::google::protobuf::internal::WireFormatLite::WriteBytesToArray(
        1, this->topic(), target);
  }

  // required bytes hostname = 2;
  if (has_hostname()) {
    target =
      ::google::protobuf::internal::WireFormatLite::WriteBytesToArray(
        2, this->hostname(), target);
  }

  // required int32 timestamp = 3;
  if (has_timestamp()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->timestamp(), target);
  }

  // optional int32 servererror = 4;
  if (has_servererror()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(4, this->servererror(), target);
  }

  // optional int32 notsupport = 5;
  if (has_notsupport()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(5, this->notsupport(), target);
  }

  // optional int32 othererror = 6;
  if (has_othererror()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(6, this->othererror(), target);
  }

  // optional int32 getok = 7;
  if (has_getok()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(7, this->getok(), target);
  }

  // optional int32 getnotfound = 8;
  if (has_getnotfound()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(8, this->getnotfound(), target);
  }

  // optional int32 gettimeout = 9;
  if (has_gettimeout()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(9, this->gettimeout(), target);
  }

  // optional int32 getslow = 10;
  if (has_getslow()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(10, this->getslow(), target);
  }

  // optional float getlatency = 11;
  if (has_getlatency()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(11, this->getlatency(), target);
  }

  // optional int32 mgetok = 12;
  if (has_mgetok()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(12, this->mgetok(), target);
  }

  // optional int32 mgettimeout = 13;
  if (has_mgettimeout()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(13, this->mgettimeout(), target);
  }

  // optional int32 mgetkeylen = 14;
  if (has_mgetkeylen()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(14, this->mgetkeylen(), target);
  }

  // optional int32 mgetslow = 15;
  if (has_mgetslow()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(15, this->mgetslow(), target);
  }

  // optional float mgetlatency = 16;
  if (has_mgetlatency()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(16, this->mgetlatency(), target);
  }

  // optional int32 setok = 17;
  if (has_setok()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(17, this->setok(), target);
  }

  // optional int32 settimeout = 18;
  if (has_settimeout()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(18, this->settimeout(), target);
  }

  // optional int32 setslow = 19;
  if (has_setslow()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(19, this->setslow(), target);
  }

  // optional float setlatency = 20;
  if (has_setlatency()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(20, this->setlatency(), target);
  }

  // optional int32 casok = 21;
  if (has_casok()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(21, this->casok(), target);
  }

  // optional int32 castimeout = 22;
  if (has_castimeout()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(22, this->castimeout(), target);
  }

  // optional int32 casslow = 23;
  if (has_casslow()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(23, this->casslow(), target);
  }

  // optional float caslatency = 24;
  if (has_caslatency()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(24, this->caslatency(), target);
  }

  // optional int32 getifallok = 25;
  if (has_getifallok()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(25, this->getifallok(), target);
  }

  // optional int32 getifallnotfoud = 26;
  if (has_getifallnotfoud()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(26, this->getifallnotfoud(), target);
  }

  // optional int32 getifallnotstrict = 27;
  if (has_getifallnotstrict()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(27, this->getifallnotstrict(), target);
  }

  // optional int32 getifallnotenough = 28;
  if (has_getifallnotenough()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(28, this->getifallnotenough(), target);
  }

  // optional int32 getifalltimeout = 29;
  if (has_getifalltimeout()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(29, this->getifalltimeout(), target);
  }

  // optional int32 getifallslow = 30;
  if (has_getifallslow()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(30, this->getifallslow(), target);
  }

  // optional float getifalllatency = 31;
  if (has_getifalllatency()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(31, this->getifalllatency(), target);
  }

  // optional int32 deleteok = 32;
  if (has_deleteok()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(32, this->deleteok(), target);
  }

  // optional int32 deletetimeout = 33;
  if (has_deletetimeout()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(33, this->deletetimeout(), target);
  }

  // optional int32 deleteslow = 34;
  if (has_deleteslow()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(34, this->deleteslow(), target);
  }

  // optional float deletelatency = 35;
  if (has_deletelatency()) {
    target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(35, this->deletelatency(), target);
  }

  if (!unknown_fields().empty()) {
    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
        unknown_fields(), target);
  }
  return target;
}

int BadaStatistics::ByteSize() const {
  int total_size = 0;

  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    // required bytes topic = 1;
    if (has_topic()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::BytesSize(
          this->topic());
    }

    // required bytes hostname = 2;
    if (has_hostname()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::BytesSize(
          this->hostname());
    }

    // required int32 timestamp = 3;
    if (has_timestamp()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->timestamp());
    }

    // optional int32 servererror = 4;
    if (has_servererror()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->servererror());
    }

    // optional int32 notsupport = 5;
    if (has_notsupport()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->notsupport());
    }

    // optional int32 othererror = 6;
    if (has_othererror()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->othererror());
    }

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

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

  }
  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
    // optional int32 gettimeout = 9;
    if (has_gettimeout()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->gettimeout());
    }

    // optional int32 getslow = 10;
    if (has_getslow()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getslow());
    }

    // optional float getlatency = 11;
    if (has_getlatency()) {
      total_size += 1 + 4;
    }

    // optional int32 mgetok = 12;
    if (has_mgetok()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->mgetok());
    }

    // optional int32 mgettimeout = 13;
    if (has_mgettimeout()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->mgettimeout());
    }

    // optional int32 mgetkeylen = 14;
    if (has_mgetkeylen()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->mgetkeylen());
    }

    // optional int32 mgetslow = 15;
    if (has_mgetslow()) {
      total_size += 1 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->mgetslow());
    }

    // optional float mgetlatency = 16;
    if (has_mgetlatency()) {
      total_size += 2 + 4;
    }

  }
  if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) {
    // optional int32 setok = 17;
    if (has_setok()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->setok());
    }

    // optional int32 settimeout = 18;
    if (has_settimeout()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->settimeout());
    }

    // optional int32 setslow = 19;
    if (has_setslow()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->setslow());
    }

    // optional float setlatency = 20;
    if (has_setlatency()) {
      total_size += 2 + 4;
    }

    // optional int32 casok = 21;
    if (has_casok()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->casok());
    }

    // optional int32 castimeout = 22;
    if (has_castimeout()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->castimeout());
    }

    // optional int32 casslow = 23;
    if (has_casslow()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->casslow());
    }

    // optional float caslatency = 24;
    if (has_caslatency()) {
      total_size += 2 + 4;
    }

  }
  if (_has_bits_[24 / 32] & (0xffu << (24 % 32))) {
    // optional int32 getifallok = 25;
    if (has_getifallok()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getifallok());
    }

    // optional int32 getifallnotfoud = 26;
    if (has_getifallnotfoud()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getifallnotfoud());
    }

    // optional int32 getifallnotstrict = 27;
    if (has_getifallnotstrict()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getifallnotstrict());
    }

    // optional int32 getifallnotenough = 28;
    if (has_getifallnotenough()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getifallnotenough());
    }

    // optional int32 getifalltimeout = 29;
    if (has_getifalltimeout()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getifalltimeout());
    }

    // optional int32 getifallslow = 30;
    if (has_getifallslow()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->getifallslow());
    }

    // optional float getifalllatency = 31;
    if (has_getifalllatency()) {
      total_size += 2 + 4;
    }

    // optional int32 deleteok = 32;
    if (has_deleteok()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->deleteok());
    }

  }
  if (_has_bits_[32 / 32] & (0xffu << (32 % 32))) {
    // optional int32 deletetimeout = 33;
    if (has_deletetimeout()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->deletetimeout());
    }

    // optional int32 deleteslow = 34;
    if (has_deleteslow()) {
      total_size += 2 +
        ::google::protobuf::internal::WireFormatLite::Int32Size(
          this->deleteslow());
    }

    // optional float deletelatency = 35;
    if (has_deletelatency()) {
      total_size += 2 + 4;
    }

  }
  if (!unknown_fields().empty()) {
    total_size +=
      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
        unknown_fields());
  }
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = total_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void BadaStatistics::MergeFrom(const ::google::protobuf::Message& from) {
  GOOGLE_CHECK_NE(&from, this);
  const BadaStatistics* source =
    ::google::protobuf::internal::dynamic_cast_if_available<const BadaStatistics*>(
      &from);
  if (source == NULL) {
    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
  } else {
    MergeFrom(*source);
  }
}

void BadaStatistics::MergeFrom(const BadaStatistics& from) {
  GOOGLE_CHECK_NE(&from, this);
  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    if (from.has_topic()) {
      set_topic(from.topic());
    }
    if (from.has_hostname()) {
      set_hostname(from.hostname());
    }
    if (from.has_timestamp()) {
      set_timestamp(from.timestamp());
    }
    if (from.has_servererror()) {
      set_servererror(from.servererror());
    }
    if (from.has_notsupport()) {
      set_notsupport(from.notsupport());
    }
    if (from.has_othererror()) {
      set_othererror(from.othererror());
    }
    if (from.has_getok()) {
      set_getok(from.getok());
    }
    if (from.has_getnotfound()) {
      set_getnotfound(from.getnotfound());
    }
  }
  if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) {
    if (from.has_gettimeout()) {
      set_gettimeout(from.gettimeout());
    }
    if (from.has_getslow()) {
      set_getslow(from.getslow());
    }
    if (from.has_getlatency()) {
      set_getlatency(from.getlatency());
    }
    if (from.has_mgetok()) {
      set_mgetok(from.mgetok());
    }
    if (from.has_mgettimeout()) {
      set_mgettimeout(from.mgettimeout());
    }
    if (from.has_mgetkeylen()) {
      set_mgetkeylen(from.mgetkeylen());
    }
    if (from.has_mgetslow()) {
      set_mgetslow(from.mgetslow());
    }
    if (from.has_mgetlatency()) {
      set_mgetlatency(from.mgetlatency());
    }
  }
  if (from._has_bits_[16 / 32] & (0xffu << (16 % 32))) {
    if (from.has_setok()) {
      set_setok(from.setok());
    }
    if (from.has_settimeout()) {
      set_settimeout(from.settimeout());
    }
    if (from.has_setslow()) {
      set_setslow(from.setslow());
    }
    if (from.has_setlatency()) {
      set_setlatency(from.setlatency());
    }
    if (from.has_casok()) {
      set_casok(from.casok());
    }
    if (from.has_castimeout()) {
      set_castimeout(from.castimeout());
    }
    if (from.has_casslow()) {
      set_casslow(from.casslow());
    }
    if (from.has_caslatency()) {
      set_caslatency(from.caslatency());
    }
  }
  if (from._has_bits_[24 / 32] & (0xffu << (24 % 32))) {
    if (from.has_getifallok()) {
      set_getifallok(from.getifallok());
    }
    if (from.has_getifallnotfoud()) {
      set_getifallnotfoud(from.getifallnotfoud());
    }
    if (from.has_getifallnotstrict()) {
      set_getifallnotstrict(from.getifallnotstrict());
    }
    if (from.has_getifallnotenough()) {
      set_getifallnotenough(from.getifallnotenough());
    }
    if (from.has_getifalltimeout()) {
      set_getifalltimeout(from.getifalltimeout());
    }
    if (from.has_getifallslow()) {
      set_getifallslow(from.getifallslow());
    }
    if (from.has_getifalllatency()) {
      set_getifalllatency(from.getifalllatency());
    }
    if (from.has_deleteok()) {
      set_deleteok(from.deleteok());
    }
  }
  if (from._has_bits_[32 / 32] & (0xffu << (32 % 32))) {
    if (from.has_deletetimeout()) {
      set_deletetimeout(from.deletetimeout());
    }
    if (from.has_deleteslow()) {
      set_deleteslow(from.deleteslow());
    }
    if (from.has_deletelatency()) {
      set_deletelatency(from.deletelatency());
    }
  }
  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
}

void BadaStatistics::CopyFrom(const ::google::protobuf::Message& from) {
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

void BadaStatistics::CopyFrom(const BadaStatistics& from) {
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool BadaStatistics::IsInitialized() const {
  if ((_has_bits_[0] & 0x00000007) != 0x00000007) return false;

  return true;
}

void BadaStatistics::Swap(BadaStatistics* other) {
  if (other != this) {
    std::swap(topic_, other->topic_);
    std::swap(hostname_, other->hostname_);
    std::swap(timestamp_, other->timestamp_);
    std::swap(servererror_, other->servererror_);
    std::swap(notsupport_, other->notsupport_);
    std::swap(othererror_, other->othererror_);
    std::swap(getok_, other->getok_);
    std::swap(getnotfound_, other->getnotfound_);
    std::swap(gettimeout_, other->gettimeout_);
    std::swap(getslow_, other->getslow_);
    std::swap(getlatency_, other->getlatency_);
    std::swap(mgetok_, other->mgetok_);
    std::swap(mgettimeout_, other->mgettimeout_);
    std::swap(mgetkeylen_, other->mgetkeylen_);
    std::swap(mgetslow_, other->mgetslow_);
    std::swap(mgetlatency_, other->mgetlatency_);
    std::swap(setok_, other->setok_);
    std::swap(settimeout_, other->settimeout_);
    std::swap(setslow_, other->setslow_);
    std::swap(setlatency_, other->setlatency_);
    std::swap(casok_, other->casok_);
    std::swap(castimeout_, other->castimeout_);
    std::swap(casslow_, other->casslow_);
    std::swap(caslatency_, other->caslatency_);
    std::swap(getifallok_, other->getifallok_);
    std::swap(getifallnotfoud_, other->getifallnotfoud_);
    std::swap(getifallnotstrict_, other->getifallnotstrict_);
    std::swap(getifallnotenough_, other->getifallnotenough_);
    std::swap(getifalltimeout_, other->getifalltimeout_);
    std::swap(getifallslow_, other->getifallslow_);
    std::swap(getifalllatency_, other->getifalllatency_);
    std::swap(deleteok_, other->deleteok_);
    std::swap(deletetimeout_, other->deletetimeout_);
    std::swap(deleteslow_, other->deleteslow_);
    std::swap(deletelatency_, other->deletelatency_);
    std::swap(_has_bits_[0], other->_has_bits_[0]);
    std::swap(_has_bits_[1], other->_has_bits_[1]);
    _unknown_fields_.Swap(&other->_unknown_fields_);
    std::swap(_cached_size_, other->_cached_size_);
  }
}

::google::protobuf::Metadata BadaStatistics::GetMetadata() const {
  protobuf_AssignDescriptorsOnce();
  ::google::protobuf::Metadata metadata;
  metadata.descriptor = BadaStatistics_descriptor_;
  metadata.reflection = BadaStatistics_reflection_;
  return metadata;
}


// @@protoc_insertion_point(namespace_scope)

// @@protoc_insertion_point(global_scope)
