// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: calculator.proto

#include "calculator.pb.h"

#include <algorithm>

#include <google/protobuf/stubs/common.h>
#include <google/protobuf/stubs/port.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>
// This is a temporary google only hack
#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
#include "third_party/protobuf/version.h"
#endif
// @@protoc_insertion_point(includes)
namespace Calculator {
class AddRequestDefaultTypeInternal {
 public:
  ::google::protobuf::internal::ExplicitlyConstructed<AddRequest>
      _instance;
} _AddRequest_default_instance_;
class AddResultDefaultTypeInternal {
 public:
  ::google::protobuf::internal::ExplicitlyConstructed<AddResult>
      _instance;
} _AddResult_default_instance_;
class SubRequestDefaultTypeInternal {
 public:
  ::google::protobuf::internal::ExplicitlyConstructed<SubRequest>
      _instance;
} _SubRequest_default_instance_;
class SubResultDefaultTypeInternal {
 public:
  ::google::protobuf::internal::ExplicitlyConstructed<SubResult>
      _instance;
} _SubResult_default_instance_;
class MulRequestDefaultTypeInternal {
 public:
  ::google::protobuf::internal::ExplicitlyConstructed<MulRequest>
      _instance;
} _MulRequest_default_instance_;
class MulResultDefaultTypeInternal {
 public:
  ::google::protobuf::internal::ExplicitlyConstructed<MulResult>
      _instance;
} _MulResult_default_instance_;
class DivRequestDefaultTypeInternal {
 public:
  ::google::protobuf::internal::ExplicitlyConstructed<DivRequest>
      _instance;
} _DivRequest_default_instance_;
class DivResultDefaultTypeInternal {
 public:
  ::google::protobuf::internal::ExplicitlyConstructed<DivResult>
      _instance;
} _DivResult_default_instance_;
}  // namespace Calculator
namespace protobuf_calculator_2eproto {
void InitDefaultsAddRequestImpl() {
  GOOGLE_PROTOBUF_VERIFY_VERSION;

#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  ::google::protobuf::internal::InitProtobufDefaultsForceUnique();
#else
  ::google::protobuf::internal::InitProtobufDefaults();
#endif  // GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  {
    void* ptr = &::Calculator::_AddRequest_default_instance_;
    new (ptr) ::Calculator::AddRequest();
    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
  }
  ::Calculator::AddRequest::InitAsDefaultInstance();
}

void InitDefaultsAddRequest() {
  static GOOGLE_PROTOBUF_DECLARE_ONCE(once);
  ::google::protobuf::GoogleOnceInit(&once, &InitDefaultsAddRequestImpl);
}

void InitDefaultsAddResultImpl() {
  GOOGLE_PROTOBUF_VERIFY_VERSION;

#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  ::google::protobuf::internal::InitProtobufDefaultsForceUnique();
#else
  ::google::protobuf::internal::InitProtobufDefaults();
#endif  // GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  {
    void* ptr = &::Calculator::_AddResult_default_instance_;
    new (ptr) ::Calculator::AddResult();
    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
  }
  ::Calculator::AddResult::InitAsDefaultInstance();
}

void InitDefaultsAddResult() {
  static GOOGLE_PROTOBUF_DECLARE_ONCE(once);
  ::google::protobuf::GoogleOnceInit(&once, &InitDefaultsAddResultImpl);
}

void InitDefaultsSubRequestImpl() {
  GOOGLE_PROTOBUF_VERIFY_VERSION;

#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  ::google::protobuf::internal::InitProtobufDefaultsForceUnique();
#else
  ::google::protobuf::internal::InitProtobufDefaults();
#endif  // GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  {
    void* ptr = &::Calculator::_SubRequest_default_instance_;
    new (ptr) ::Calculator::SubRequest();
    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
  }
  ::Calculator::SubRequest::InitAsDefaultInstance();
}

void InitDefaultsSubRequest() {
  static GOOGLE_PROTOBUF_DECLARE_ONCE(once);
  ::google::protobuf::GoogleOnceInit(&once, &InitDefaultsSubRequestImpl);
}

void InitDefaultsSubResultImpl() {
  GOOGLE_PROTOBUF_VERIFY_VERSION;

#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  ::google::protobuf::internal::InitProtobufDefaultsForceUnique();
#else
  ::google::protobuf::internal::InitProtobufDefaults();
#endif  // GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  {
    void* ptr = &::Calculator::_SubResult_default_instance_;
    new (ptr) ::Calculator::SubResult();
    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
  }
  ::Calculator::SubResult::InitAsDefaultInstance();
}

void InitDefaultsSubResult() {
  static GOOGLE_PROTOBUF_DECLARE_ONCE(once);
  ::google::protobuf::GoogleOnceInit(&once, &InitDefaultsSubResultImpl);
}

void InitDefaultsMulRequestImpl() {
  GOOGLE_PROTOBUF_VERIFY_VERSION;

#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  ::google::protobuf::internal::InitProtobufDefaultsForceUnique();
#else
  ::google::protobuf::internal::InitProtobufDefaults();
#endif  // GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  {
    void* ptr = &::Calculator::_MulRequest_default_instance_;
    new (ptr) ::Calculator::MulRequest();
    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
  }
  ::Calculator::MulRequest::InitAsDefaultInstance();
}

void InitDefaultsMulRequest() {
  static GOOGLE_PROTOBUF_DECLARE_ONCE(once);
  ::google::protobuf::GoogleOnceInit(&once, &InitDefaultsMulRequestImpl);
}

void InitDefaultsMulResultImpl() {
  GOOGLE_PROTOBUF_VERIFY_VERSION;

#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  ::google::protobuf::internal::InitProtobufDefaultsForceUnique();
#else
  ::google::protobuf::internal::InitProtobufDefaults();
#endif  // GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  {
    void* ptr = &::Calculator::_MulResult_default_instance_;
    new (ptr) ::Calculator::MulResult();
    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
  }
  ::Calculator::MulResult::InitAsDefaultInstance();
}

void InitDefaultsMulResult() {
  static GOOGLE_PROTOBUF_DECLARE_ONCE(once);
  ::google::protobuf::GoogleOnceInit(&once, &InitDefaultsMulResultImpl);
}

void InitDefaultsDivRequestImpl() {
  GOOGLE_PROTOBUF_VERIFY_VERSION;

#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  ::google::protobuf::internal::InitProtobufDefaultsForceUnique();
#else
  ::google::protobuf::internal::InitProtobufDefaults();
#endif  // GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  {
    void* ptr = &::Calculator::_DivRequest_default_instance_;
    new (ptr) ::Calculator::DivRequest();
    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
  }
  ::Calculator::DivRequest::InitAsDefaultInstance();
}

void InitDefaultsDivRequest() {
  static GOOGLE_PROTOBUF_DECLARE_ONCE(once);
  ::google::protobuf::GoogleOnceInit(&once, &InitDefaultsDivRequestImpl);
}

void InitDefaultsDivResultImpl() {
  GOOGLE_PROTOBUF_VERIFY_VERSION;

#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  ::google::protobuf::internal::InitProtobufDefaultsForceUnique();
#else
  ::google::protobuf::internal::InitProtobufDefaults();
#endif  // GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
  {
    void* ptr = &::Calculator::_DivResult_default_instance_;
    new (ptr) ::Calculator::DivResult();
    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
  }
  ::Calculator::DivResult::InitAsDefaultInstance();
}

void InitDefaultsDivResult() {
  static GOOGLE_PROTOBUF_DECLARE_ONCE(once);
  ::google::protobuf::GoogleOnceInit(&once, &InitDefaultsDivResultImpl);
}

::google::protobuf::Metadata file_level_metadata[8];

const ::google::protobuf::uint32 TableStruct::offsets[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
  ~0u,  // no _has_bits_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::AddRequest, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::AddRequest, lhs_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::AddRequest, rhs_),
  ~0u,  // no _has_bits_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::AddResult, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::AddResult, value_),
  ~0u,  // no _has_bits_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::SubRequest, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::SubRequest, lhs_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::SubRequest, rhs_),
  ~0u,  // no _has_bits_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::SubResult, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::SubResult, value_),
  ~0u,  // no _has_bits_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::MulRequest, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::MulRequest, lhs_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::MulRequest, rhs_),
  ~0u,  // no _has_bits_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::MulResult, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::MulResult, value_),
  ~0u,  // no _has_bits_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::DivRequest, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::DivRequest, lhs_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::DivRequest, rhs_),
  ~0u,  // no _has_bits_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::DivResult, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::Calculator::DivResult, value_),
};
static const ::google::protobuf::internal::MigrationSchema schemas[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
  { 0, -1, sizeof(::Calculator::AddRequest)},
  { 7, -1, sizeof(::Calculator::AddResult)},
  { 13, -1, sizeof(::Calculator::SubRequest)},
  { 20, -1, sizeof(::Calculator::SubResult)},
  { 26, -1, sizeof(::Calculator::MulRequest)},
  { 33, -1, sizeof(::Calculator::MulResult)},
  { 39, -1, sizeof(::Calculator::DivRequest)},
  { 46, -1, sizeof(::Calculator::DivResult)},
};

static ::google::protobuf::Message const * const file_default_instances[] = {
  reinterpret_cast<const ::google::protobuf::Message*>(&::Calculator::_AddRequest_default_instance_),
  reinterpret_cast<const ::google::protobuf::Message*>(&::Calculator::_AddResult_default_instance_),
  reinterpret_cast<const ::google::protobuf::Message*>(&::Calculator::_SubRequest_default_instance_),
  reinterpret_cast<const ::google::protobuf::Message*>(&::Calculator::_SubResult_default_instance_),
  reinterpret_cast<const ::google::protobuf::Message*>(&::Calculator::_MulRequest_default_instance_),
  reinterpret_cast<const ::google::protobuf::Message*>(&::Calculator::_MulResult_default_instance_),
  reinterpret_cast<const ::google::protobuf::Message*>(&::Calculator::_DivRequest_default_instance_),
  reinterpret_cast<const ::google::protobuf::Message*>(&::Calculator::_DivResult_default_instance_),
};

void protobuf_AssignDescriptors() {
  AddDescriptors();
  ::google::protobuf::MessageFactory* factory = NULL;
  AssignDescriptors(
      "calculator.proto", schemas, file_default_instances, TableStruct::offsets, factory,
      file_level_metadata, NULL, NULL);
}

void protobuf_AssignDescriptorsOnce() {
  static GOOGLE_PROTOBUF_DECLARE_ONCE(once);
  ::google::protobuf::GoogleOnceInit(&once, &protobuf_AssignDescriptors);
}

void protobuf_RegisterTypes(const ::std::string&) GOOGLE_PROTOBUF_ATTRIBUTE_COLD;
void protobuf_RegisterTypes(const ::std::string&) {
  protobuf_AssignDescriptorsOnce();
  ::google::protobuf::internal::RegisterAllTypes(file_level_metadata, 8);
}

void AddDescriptorsImpl() {
  InitDefaults();
  static const char descriptor[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
      "\n\020calculator.proto\022\nCalculator\"&\n\nAddReq"
      "uest\022\013\n\003lhs\030\001 \001(\005\022\013\n\003rhs\030\002 \001(\005\"\032\n\tAddRes"
      "ult\022\r\n\005value\030\001 \001(\005\"&\n\nSubRequest\022\013\n\003lhs\030"
      "\001 \001(\005\022\013\n\003rhs\030\002 \001(\005\"\032\n\tSubResult\022\r\n\005value"
      "\030\001 \001(\005\"&\n\nMulRequest\022\013\n\003lhs\030\001 \001(\005\022\013\n\003rhs"
      "\030\002 \001(\005\"\032\n\tMulResult\022\r\n\005value\030\001 \001(\005\"&\n\nDi"
      "vRequest\022\013\n\003lhs\030\001 \001(\005\022\013\n\003rhs\030\002 \001(\005\"\032\n\tDi"
      "vResult\022\r\n\005value\030\001 \001(\0052\341\001\n\007Service\0224\n\003ad"
      "d\022\026.Calculator.AddRequest\032\025.Calculator.A"
      "ddResult\0224\n\003sub\022\026.Calculator.SubRequest\032"
      "\025.Calculator.SubResult\0224\n\003mul\022\026.Calculat"
      "or.MulRequest\032\025.Calculator.MulResult\0224\n\003"
      "div\022\026.Calculator.DivRequest\032\025.Calculator"
      ".DivResultb\006proto3"
  };
  ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
      descriptor, 538);
  ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
    "calculator.proto", &protobuf_RegisterTypes);
}

void AddDescriptors() {
  static GOOGLE_PROTOBUF_DECLARE_ONCE(once);
  ::google::protobuf::GoogleOnceInit(&once, &AddDescriptorsImpl);
}
// Force AddDescriptors() to be called at dynamic initialization time.
struct StaticDescriptorInitializer {
  StaticDescriptorInitializer() {
    AddDescriptors();
  }
} static_descriptor_initializer;
}  // namespace protobuf_calculator_2eproto
namespace Calculator {

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

void AddRequest::InitAsDefaultInstance() {
}
#if !defined(_MSC_VER) || _MSC_VER >= 1900
const int AddRequest::kLhsFieldNumber;
const int AddRequest::kRhsFieldNumber;
#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900

AddRequest::AddRequest()
  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
  if (GOOGLE_PREDICT_TRUE(this != internal_default_instance())) {
    ::protobuf_calculator_2eproto::InitDefaultsAddRequest();
  }
  SharedCtor();
  // @@protoc_insertion_point(constructor:Calculator.AddRequest)
}
AddRequest::AddRequest(const AddRequest& from)
  : ::google::protobuf::Message(),
      _internal_metadata_(NULL),
      _cached_size_(0) {
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::memcpy(&lhs_, &from.lhs_,
    static_cast<size_t>(reinterpret_cast<char*>(&rhs_) -
    reinterpret_cast<char*>(&lhs_)) + sizeof(rhs_));
  // @@protoc_insertion_point(copy_constructor:Calculator.AddRequest)
}

void AddRequest::SharedCtor() {
  ::memset(&lhs_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&rhs_) -
      reinterpret_cast<char*>(&lhs_)) + sizeof(rhs_));
  _cached_size_ = 0;
}

AddRequest::~AddRequest() {
  // @@protoc_insertion_point(destructor:Calculator.AddRequest)
  SharedDtor();
}

void AddRequest::SharedDtor() {
}

void AddRequest::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const ::google::protobuf::Descriptor* AddRequest::descriptor() {
  ::protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
}

const AddRequest& AddRequest::default_instance() {
  ::protobuf_calculator_2eproto::InitDefaultsAddRequest();
  return *internal_default_instance();
}

AddRequest* AddRequest::New(::google::protobuf::Arena* arena) const {
  AddRequest* n = new AddRequest;
  if (arena != NULL) {
    arena->Own(n);
  }
  return n;
}

void AddRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:Calculator.AddRequest)
  ::google::protobuf::uint32 cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  ::memset(&lhs_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&rhs_) -
      reinterpret_cast<char*>(&lhs_)) + sizeof(rhs_));
  _internal_metadata_.Clear();
}

bool AddRequest::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
  ::google::protobuf::uint32 tag;
  // @@protoc_insertion_point(parse_start:Calculator.AddRequest)
  for (;;) {
    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
    tag = p.first;
    if (!p.second) goto handle_unusual;
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // int32 lhs = 1;
      case 1: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &lhs_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 rhs = 2;
      case 2: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &rhs_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      default: {
      handle_unusual:
        if (tag == 0) {
          goto success;
        }
        DO_(::google::protobuf::internal::WireFormat::SkipField(
              input, tag, _internal_metadata_.mutable_unknown_fields()));
        break;
      }
    }
  }
success:
  // @@protoc_insertion_point(parse_success:Calculator.AddRequest)
  return true;
failure:
  // @@protoc_insertion_point(parse_failure:Calculator.AddRequest)
  return false;
#undef DO_
}

void AddRequest::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // @@protoc_insertion_point(serialize_start:Calculator.AddRequest)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 lhs = 1;
  if (this->lhs() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->lhs(), output);
  }

  // int32 rhs = 2;
  if (this->rhs() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->rhs(), output);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), output);
  }
  // @@protoc_insertion_point(serialize_end:Calculator.AddRequest)
}

::google::protobuf::uint8* AddRequest::InternalSerializeWithCachedSizesToArray(
    bool deterministic, ::google::protobuf::uint8* target) const {
  (void)deterministic; // Unused
  // @@protoc_insertion_point(serialize_to_array_start:Calculator.AddRequest)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 lhs = 1;
  if (this->lhs() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->lhs(), target);
  }

  // int32 rhs = 2;
  if (this->rhs() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->rhs(), target);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:Calculator.AddRequest)
  return target;
}

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

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    total_size +=
      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()));
  }
  // int32 lhs = 1;
  if (this->lhs() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->lhs());
  }

  // int32 rhs = 2;
  if (this->rhs() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->rhs());
  }

  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = cached_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void AddRequest::MergeFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_merge_from_start:Calculator.AddRequest)
  GOOGLE_DCHECK_NE(&from, this);
  const AddRequest* source =
      ::google::protobuf::internal::DynamicCastToGenerated<const AddRequest>(
          &from);
  if (source == NULL) {
  // @@protoc_insertion_point(generalized_merge_from_cast_fail:Calculator.AddRequest)
    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
  } else {
  // @@protoc_insertion_point(generalized_merge_from_cast_success:Calculator.AddRequest)
    MergeFrom(*source);
  }
}

void AddRequest::MergeFrom(const AddRequest& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:Calculator.AddRequest)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  if (from.lhs() != 0) {
    set_lhs(from.lhs());
  }
  if (from.rhs() != 0) {
    set_rhs(from.rhs());
  }
}

void AddRequest::CopyFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_copy_from_start:Calculator.AddRequest)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

void AddRequest::Swap(AddRequest* other) {
  if (other == this) return;
  InternalSwap(other);
}
void AddRequest::InternalSwap(AddRequest* other) {
  using std::swap;
  swap(lhs_, other->lhs_);
  swap(rhs_, other->rhs_);
  _internal_metadata_.Swap(&other->_internal_metadata_);
  swap(_cached_size_, other->_cached_size_);
}

::google::protobuf::Metadata AddRequest::GetMetadata() const {
  protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages];
}


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

void AddResult::InitAsDefaultInstance() {
}
#if !defined(_MSC_VER) || _MSC_VER >= 1900
const int AddResult::kValueFieldNumber;
#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900

AddResult::AddResult()
  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
  if (GOOGLE_PREDICT_TRUE(this != internal_default_instance())) {
    ::protobuf_calculator_2eproto::InitDefaultsAddResult();
  }
  SharedCtor();
  // @@protoc_insertion_point(constructor:Calculator.AddResult)
}
AddResult::AddResult(const AddResult& from)
  : ::google::protobuf::Message(),
      _internal_metadata_(NULL),
      _cached_size_(0) {
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  value_ = from.value_;
  // @@protoc_insertion_point(copy_constructor:Calculator.AddResult)
}

void AddResult::SharedCtor() {
  value_ = 0;
  _cached_size_ = 0;
}

AddResult::~AddResult() {
  // @@protoc_insertion_point(destructor:Calculator.AddResult)
  SharedDtor();
}

void AddResult::SharedDtor() {
}

void AddResult::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const ::google::protobuf::Descriptor* AddResult::descriptor() {
  ::protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
}

const AddResult& AddResult::default_instance() {
  ::protobuf_calculator_2eproto::InitDefaultsAddResult();
  return *internal_default_instance();
}

AddResult* AddResult::New(::google::protobuf::Arena* arena) const {
  AddResult* n = new AddResult;
  if (arena != NULL) {
    arena->Own(n);
  }
  return n;
}

void AddResult::Clear() {
// @@protoc_insertion_point(message_clear_start:Calculator.AddResult)
  ::google::protobuf::uint32 cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  value_ = 0;
  _internal_metadata_.Clear();
}

bool AddResult::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
  ::google::protobuf::uint32 tag;
  // @@protoc_insertion_point(parse_start:Calculator.AddResult)
  for (;;) {
    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
    tag = p.first;
    if (!p.second) goto handle_unusual;
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // int32 value = 1;
      case 1: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &value_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      default: {
      handle_unusual:
        if (tag == 0) {
          goto success;
        }
        DO_(::google::protobuf::internal::WireFormat::SkipField(
              input, tag, _internal_metadata_.mutable_unknown_fields()));
        break;
      }
    }
  }
success:
  // @@protoc_insertion_point(parse_success:Calculator.AddResult)
  return true;
failure:
  // @@protoc_insertion_point(parse_failure:Calculator.AddResult)
  return false;
#undef DO_
}

void AddResult::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // @@protoc_insertion_point(serialize_start:Calculator.AddResult)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 value = 1;
  if (this->value() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->value(), output);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), output);
  }
  // @@protoc_insertion_point(serialize_end:Calculator.AddResult)
}

::google::protobuf::uint8* AddResult::InternalSerializeWithCachedSizesToArray(
    bool deterministic, ::google::protobuf::uint8* target) const {
  (void)deterministic; // Unused
  // @@protoc_insertion_point(serialize_to_array_start:Calculator.AddResult)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 value = 1;
  if (this->value() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->value(), target);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:Calculator.AddResult)
  return target;
}

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

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    total_size +=
      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()));
  }
  // int32 value = 1;
  if (this->value() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->value());
  }

  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = cached_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void AddResult::MergeFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_merge_from_start:Calculator.AddResult)
  GOOGLE_DCHECK_NE(&from, this);
  const AddResult* source =
      ::google::protobuf::internal::DynamicCastToGenerated<const AddResult>(
          &from);
  if (source == NULL) {
  // @@protoc_insertion_point(generalized_merge_from_cast_fail:Calculator.AddResult)
    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
  } else {
  // @@protoc_insertion_point(generalized_merge_from_cast_success:Calculator.AddResult)
    MergeFrom(*source);
  }
}

void AddResult::MergeFrom(const AddResult& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:Calculator.AddResult)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  if (from.value() != 0) {
    set_value(from.value());
  }
}

void AddResult::CopyFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_copy_from_start:Calculator.AddResult)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

void AddResult::Swap(AddResult* other) {
  if (other == this) return;
  InternalSwap(other);
}
void AddResult::InternalSwap(AddResult* other) {
  using std::swap;
  swap(value_, other->value_);
  _internal_metadata_.Swap(&other->_internal_metadata_);
  swap(_cached_size_, other->_cached_size_);
}

::google::protobuf::Metadata AddResult::GetMetadata() const {
  protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages];
}


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

void SubRequest::InitAsDefaultInstance() {
}
#if !defined(_MSC_VER) || _MSC_VER >= 1900
const int SubRequest::kLhsFieldNumber;
const int SubRequest::kRhsFieldNumber;
#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900

SubRequest::SubRequest()
  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
  if (GOOGLE_PREDICT_TRUE(this != internal_default_instance())) {
    ::protobuf_calculator_2eproto::InitDefaultsSubRequest();
  }
  SharedCtor();
  // @@protoc_insertion_point(constructor:Calculator.SubRequest)
}
SubRequest::SubRequest(const SubRequest& from)
  : ::google::protobuf::Message(),
      _internal_metadata_(NULL),
      _cached_size_(0) {
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::memcpy(&lhs_, &from.lhs_,
    static_cast<size_t>(reinterpret_cast<char*>(&rhs_) -
    reinterpret_cast<char*>(&lhs_)) + sizeof(rhs_));
  // @@protoc_insertion_point(copy_constructor:Calculator.SubRequest)
}

void SubRequest::SharedCtor() {
  ::memset(&lhs_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&rhs_) -
      reinterpret_cast<char*>(&lhs_)) + sizeof(rhs_));
  _cached_size_ = 0;
}

SubRequest::~SubRequest() {
  // @@protoc_insertion_point(destructor:Calculator.SubRequest)
  SharedDtor();
}

void SubRequest::SharedDtor() {
}

void SubRequest::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const ::google::protobuf::Descriptor* SubRequest::descriptor() {
  ::protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
}

const SubRequest& SubRequest::default_instance() {
  ::protobuf_calculator_2eproto::InitDefaultsSubRequest();
  return *internal_default_instance();
}

SubRequest* SubRequest::New(::google::protobuf::Arena* arena) const {
  SubRequest* n = new SubRequest;
  if (arena != NULL) {
    arena->Own(n);
  }
  return n;
}

void SubRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:Calculator.SubRequest)
  ::google::protobuf::uint32 cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  ::memset(&lhs_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&rhs_) -
      reinterpret_cast<char*>(&lhs_)) + sizeof(rhs_));
  _internal_metadata_.Clear();
}

bool SubRequest::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
  ::google::protobuf::uint32 tag;
  // @@protoc_insertion_point(parse_start:Calculator.SubRequest)
  for (;;) {
    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
    tag = p.first;
    if (!p.second) goto handle_unusual;
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // int32 lhs = 1;
      case 1: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &lhs_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 rhs = 2;
      case 2: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &rhs_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      default: {
      handle_unusual:
        if (tag == 0) {
          goto success;
        }
        DO_(::google::protobuf::internal::WireFormat::SkipField(
              input, tag, _internal_metadata_.mutable_unknown_fields()));
        break;
      }
    }
  }
success:
  // @@protoc_insertion_point(parse_success:Calculator.SubRequest)
  return true;
failure:
  // @@protoc_insertion_point(parse_failure:Calculator.SubRequest)
  return false;
#undef DO_
}

void SubRequest::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // @@protoc_insertion_point(serialize_start:Calculator.SubRequest)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 lhs = 1;
  if (this->lhs() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->lhs(), output);
  }

  // int32 rhs = 2;
  if (this->rhs() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->rhs(), output);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), output);
  }
  // @@protoc_insertion_point(serialize_end:Calculator.SubRequest)
}

::google::protobuf::uint8* SubRequest::InternalSerializeWithCachedSizesToArray(
    bool deterministic, ::google::protobuf::uint8* target) const {
  (void)deterministic; // Unused
  // @@protoc_insertion_point(serialize_to_array_start:Calculator.SubRequest)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 lhs = 1;
  if (this->lhs() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->lhs(), target);
  }

  // int32 rhs = 2;
  if (this->rhs() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->rhs(), target);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:Calculator.SubRequest)
  return target;
}

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

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    total_size +=
      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()));
  }
  // int32 lhs = 1;
  if (this->lhs() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->lhs());
  }

  // int32 rhs = 2;
  if (this->rhs() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->rhs());
  }

  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = cached_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void SubRequest::MergeFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_merge_from_start:Calculator.SubRequest)
  GOOGLE_DCHECK_NE(&from, this);
  const SubRequest* source =
      ::google::protobuf::internal::DynamicCastToGenerated<const SubRequest>(
          &from);
  if (source == NULL) {
  // @@protoc_insertion_point(generalized_merge_from_cast_fail:Calculator.SubRequest)
    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
  } else {
  // @@protoc_insertion_point(generalized_merge_from_cast_success:Calculator.SubRequest)
    MergeFrom(*source);
  }
}

void SubRequest::MergeFrom(const SubRequest& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:Calculator.SubRequest)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  if (from.lhs() != 0) {
    set_lhs(from.lhs());
  }
  if (from.rhs() != 0) {
    set_rhs(from.rhs());
  }
}

void SubRequest::CopyFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_copy_from_start:Calculator.SubRequest)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

void SubRequest::Swap(SubRequest* other) {
  if (other == this) return;
  InternalSwap(other);
}
void SubRequest::InternalSwap(SubRequest* other) {
  using std::swap;
  swap(lhs_, other->lhs_);
  swap(rhs_, other->rhs_);
  _internal_metadata_.Swap(&other->_internal_metadata_);
  swap(_cached_size_, other->_cached_size_);
}

::google::protobuf::Metadata SubRequest::GetMetadata() const {
  protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages];
}


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

void SubResult::InitAsDefaultInstance() {
}
#if !defined(_MSC_VER) || _MSC_VER >= 1900
const int SubResult::kValueFieldNumber;
#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900

SubResult::SubResult()
  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
  if (GOOGLE_PREDICT_TRUE(this != internal_default_instance())) {
    ::protobuf_calculator_2eproto::InitDefaultsSubResult();
  }
  SharedCtor();
  // @@protoc_insertion_point(constructor:Calculator.SubResult)
}
SubResult::SubResult(const SubResult& from)
  : ::google::protobuf::Message(),
      _internal_metadata_(NULL),
      _cached_size_(0) {
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  value_ = from.value_;
  // @@protoc_insertion_point(copy_constructor:Calculator.SubResult)
}

void SubResult::SharedCtor() {
  value_ = 0;
  _cached_size_ = 0;
}

SubResult::~SubResult() {
  // @@protoc_insertion_point(destructor:Calculator.SubResult)
  SharedDtor();
}

void SubResult::SharedDtor() {
}

void SubResult::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const ::google::protobuf::Descriptor* SubResult::descriptor() {
  ::protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
}

const SubResult& SubResult::default_instance() {
  ::protobuf_calculator_2eproto::InitDefaultsSubResult();
  return *internal_default_instance();
}

SubResult* SubResult::New(::google::protobuf::Arena* arena) const {
  SubResult* n = new SubResult;
  if (arena != NULL) {
    arena->Own(n);
  }
  return n;
}

void SubResult::Clear() {
// @@protoc_insertion_point(message_clear_start:Calculator.SubResult)
  ::google::protobuf::uint32 cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  value_ = 0;
  _internal_metadata_.Clear();
}

bool SubResult::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
  ::google::protobuf::uint32 tag;
  // @@protoc_insertion_point(parse_start:Calculator.SubResult)
  for (;;) {
    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
    tag = p.first;
    if (!p.second) goto handle_unusual;
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // int32 value = 1;
      case 1: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &value_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      default: {
      handle_unusual:
        if (tag == 0) {
          goto success;
        }
        DO_(::google::protobuf::internal::WireFormat::SkipField(
              input, tag, _internal_metadata_.mutable_unknown_fields()));
        break;
      }
    }
  }
success:
  // @@protoc_insertion_point(parse_success:Calculator.SubResult)
  return true;
failure:
  // @@protoc_insertion_point(parse_failure:Calculator.SubResult)
  return false;
#undef DO_
}

void SubResult::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // @@protoc_insertion_point(serialize_start:Calculator.SubResult)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 value = 1;
  if (this->value() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->value(), output);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), output);
  }
  // @@protoc_insertion_point(serialize_end:Calculator.SubResult)
}

::google::protobuf::uint8* SubResult::InternalSerializeWithCachedSizesToArray(
    bool deterministic, ::google::protobuf::uint8* target) const {
  (void)deterministic; // Unused
  // @@protoc_insertion_point(serialize_to_array_start:Calculator.SubResult)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 value = 1;
  if (this->value() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->value(), target);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:Calculator.SubResult)
  return target;
}

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

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    total_size +=
      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()));
  }
  // int32 value = 1;
  if (this->value() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->value());
  }

  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = cached_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void SubResult::MergeFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_merge_from_start:Calculator.SubResult)
  GOOGLE_DCHECK_NE(&from, this);
  const SubResult* source =
      ::google::protobuf::internal::DynamicCastToGenerated<const SubResult>(
          &from);
  if (source == NULL) {
  // @@protoc_insertion_point(generalized_merge_from_cast_fail:Calculator.SubResult)
    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
  } else {
  // @@protoc_insertion_point(generalized_merge_from_cast_success:Calculator.SubResult)
    MergeFrom(*source);
  }
}

void SubResult::MergeFrom(const SubResult& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:Calculator.SubResult)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  if (from.value() != 0) {
    set_value(from.value());
  }
}

void SubResult::CopyFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_copy_from_start:Calculator.SubResult)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

void SubResult::Swap(SubResult* other) {
  if (other == this) return;
  InternalSwap(other);
}
void SubResult::InternalSwap(SubResult* other) {
  using std::swap;
  swap(value_, other->value_);
  _internal_metadata_.Swap(&other->_internal_metadata_);
  swap(_cached_size_, other->_cached_size_);
}

::google::protobuf::Metadata SubResult::GetMetadata() const {
  protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages];
}


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

void MulRequest::InitAsDefaultInstance() {
}
#if !defined(_MSC_VER) || _MSC_VER >= 1900
const int MulRequest::kLhsFieldNumber;
const int MulRequest::kRhsFieldNumber;
#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900

MulRequest::MulRequest()
  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
  if (GOOGLE_PREDICT_TRUE(this != internal_default_instance())) {
    ::protobuf_calculator_2eproto::InitDefaultsMulRequest();
  }
  SharedCtor();
  // @@protoc_insertion_point(constructor:Calculator.MulRequest)
}
MulRequest::MulRequest(const MulRequest& from)
  : ::google::protobuf::Message(),
      _internal_metadata_(NULL),
      _cached_size_(0) {
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::memcpy(&lhs_, &from.lhs_,
    static_cast<size_t>(reinterpret_cast<char*>(&rhs_) -
    reinterpret_cast<char*>(&lhs_)) + sizeof(rhs_));
  // @@protoc_insertion_point(copy_constructor:Calculator.MulRequest)
}

void MulRequest::SharedCtor() {
  ::memset(&lhs_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&rhs_) -
      reinterpret_cast<char*>(&lhs_)) + sizeof(rhs_));
  _cached_size_ = 0;
}

MulRequest::~MulRequest() {
  // @@protoc_insertion_point(destructor:Calculator.MulRequest)
  SharedDtor();
}

void MulRequest::SharedDtor() {
}

void MulRequest::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const ::google::protobuf::Descriptor* MulRequest::descriptor() {
  ::protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
}

const MulRequest& MulRequest::default_instance() {
  ::protobuf_calculator_2eproto::InitDefaultsMulRequest();
  return *internal_default_instance();
}

MulRequest* MulRequest::New(::google::protobuf::Arena* arena) const {
  MulRequest* n = new MulRequest;
  if (arena != NULL) {
    arena->Own(n);
  }
  return n;
}

void MulRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:Calculator.MulRequest)
  ::google::protobuf::uint32 cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  ::memset(&lhs_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&rhs_) -
      reinterpret_cast<char*>(&lhs_)) + sizeof(rhs_));
  _internal_metadata_.Clear();
}

bool MulRequest::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
  ::google::protobuf::uint32 tag;
  // @@protoc_insertion_point(parse_start:Calculator.MulRequest)
  for (;;) {
    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
    tag = p.first;
    if (!p.second) goto handle_unusual;
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // int32 lhs = 1;
      case 1: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &lhs_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 rhs = 2;
      case 2: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &rhs_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      default: {
      handle_unusual:
        if (tag == 0) {
          goto success;
        }
        DO_(::google::protobuf::internal::WireFormat::SkipField(
              input, tag, _internal_metadata_.mutable_unknown_fields()));
        break;
      }
    }
  }
success:
  // @@protoc_insertion_point(parse_success:Calculator.MulRequest)
  return true;
failure:
  // @@protoc_insertion_point(parse_failure:Calculator.MulRequest)
  return false;
#undef DO_
}

void MulRequest::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // @@protoc_insertion_point(serialize_start:Calculator.MulRequest)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 lhs = 1;
  if (this->lhs() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->lhs(), output);
  }

  // int32 rhs = 2;
  if (this->rhs() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->rhs(), output);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), output);
  }
  // @@protoc_insertion_point(serialize_end:Calculator.MulRequest)
}

::google::protobuf::uint8* MulRequest::InternalSerializeWithCachedSizesToArray(
    bool deterministic, ::google::protobuf::uint8* target) const {
  (void)deterministic; // Unused
  // @@protoc_insertion_point(serialize_to_array_start:Calculator.MulRequest)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 lhs = 1;
  if (this->lhs() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->lhs(), target);
  }

  // int32 rhs = 2;
  if (this->rhs() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->rhs(), target);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:Calculator.MulRequest)
  return target;
}

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

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    total_size +=
      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()));
  }
  // int32 lhs = 1;
  if (this->lhs() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->lhs());
  }

  // int32 rhs = 2;
  if (this->rhs() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->rhs());
  }

  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = cached_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void MulRequest::MergeFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_merge_from_start:Calculator.MulRequest)
  GOOGLE_DCHECK_NE(&from, this);
  const MulRequest* source =
      ::google::protobuf::internal::DynamicCastToGenerated<const MulRequest>(
          &from);
  if (source == NULL) {
  // @@protoc_insertion_point(generalized_merge_from_cast_fail:Calculator.MulRequest)
    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
  } else {
  // @@protoc_insertion_point(generalized_merge_from_cast_success:Calculator.MulRequest)
    MergeFrom(*source);
  }
}

void MulRequest::MergeFrom(const MulRequest& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:Calculator.MulRequest)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  if (from.lhs() != 0) {
    set_lhs(from.lhs());
  }
  if (from.rhs() != 0) {
    set_rhs(from.rhs());
  }
}

void MulRequest::CopyFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_copy_from_start:Calculator.MulRequest)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

void MulRequest::Swap(MulRequest* other) {
  if (other == this) return;
  InternalSwap(other);
}
void MulRequest::InternalSwap(MulRequest* other) {
  using std::swap;
  swap(lhs_, other->lhs_);
  swap(rhs_, other->rhs_);
  _internal_metadata_.Swap(&other->_internal_metadata_);
  swap(_cached_size_, other->_cached_size_);
}

::google::protobuf::Metadata MulRequest::GetMetadata() const {
  protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages];
}


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

void MulResult::InitAsDefaultInstance() {
}
#if !defined(_MSC_VER) || _MSC_VER >= 1900
const int MulResult::kValueFieldNumber;
#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900

MulResult::MulResult()
  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
  if (GOOGLE_PREDICT_TRUE(this != internal_default_instance())) {
    ::protobuf_calculator_2eproto::InitDefaultsMulResult();
  }
  SharedCtor();
  // @@protoc_insertion_point(constructor:Calculator.MulResult)
}
MulResult::MulResult(const MulResult& from)
  : ::google::protobuf::Message(),
      _internal_metadata_(NULL),
      _cached_size_(0) {
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  value_ = from.value_;
  // @@protoc_insertion_point(copy_constructor:Calculator.MulResult)
}

void MulResult::SharedCtor() {
  value_ = 0;
  _cached_size_ = 0;
}

MulResult::~MulResult() {
  // @@protoc_insertion_point(destructor:Calculator.MulResult)
  SharedDtor();
}

void MulResult::SharedDtor() {
}

void MulResult::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const ::google::protobuf::Descriptor* MulResult::descriptor() {
  ::protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
}

const MulResult& MulResult::default_instance() {
  ::protobuf_calculator_2eproto::InitDefaultsMulResult();
  return *internal_default_instance();
}

MulResult* MulResult::New(::google::protobuf::Arena* arena) const {
  MulResult* n = new MulResult;
  if (arena != NULL) {
    arena->Own(n);
  }
  return n;
}

void MulResult::Clear() {
// @@protoc_insertion_point(message_clear_start:Calculator.MulResult)
  ::google::protobuf::uint32 cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  value_ = 0;
  _internal_metadata_.Clear();
}

bool MulResult::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
  ::google::protobuf::uint32 tag;
  // @@protoc_insertion_point(parse_start:Calculator.MulResult)
  for (;;) {
    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
    tag = p.first;
    if (!p.second) goto handle_unusual;
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // int32 value = 1;
      case 1: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &value_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      default: {
      handle_unusual:
        if (tag == 0) {
          goto success;
        }
        DO_(::google::protobuf::internal::WireFormat::SkipField(
              input, tag, _internal_metadata_.mutable_unknown_fields()));
        break;
      }
    }
  }
success:
  // @@protoc_insertion_point(parse_success:Calculator.MulResult)
  return true;
failure:
  // @@protoc_insertion_point(parse_failure:Calculator.MulResult)
  return false;
#undef DO_
}

void MulResult::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // @@protoc_insertion_point(serialize_start:Calculator.MulResult)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 value = 1;
  if (this->value() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->value(), output);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), output);
  }
  // @@protoc_insertion_point(serialize_end:Calculator.MulResult)
}

::google::protobuf::uint8* MulResult::InternalSerializeWithCachedSizesToArray(
    bool deterministic, ::google::protobuf::uint8* target) const {
  (void)deterministic; // Unused
  // @@protoc_insertion_point(serialize_to_array_start:Calculator.MulResult)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 value = 1;
  if (this->value() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->value(), target);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:Calculator.MulResult)
  return target;
}

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

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    total_size +=
      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()));
  }
  // int32 value = 1;
  if (this->value() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->value());
  }

  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = cached_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void MulResult::MergeFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_merge_from_start:Calculator.MulResult)
  GOOGLE_DCHECK_NE(&from, this);
  const MulResult* source =
      ::google::protobuf::internal::DynamicCastToGenerated<const MulResult>(
          &from);
  if (source == NULL) {
  // @@protoc_insertion_point(generalized_merge_from_cast_fail:Calculator.MulResult)
    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
  } else {
  // @@protoc_insertion_point(generalized_merge_from_cast_success:Calculator.MulResult)
    MergeFrom(*source);
  }
}

void MulResult::MergeFrom(const MulResult& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:Calculator.MulResult)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  if (from.value() != 0) {
    set_value(from.value());
  }
}

void MulResult::CopyFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_copy_from_start:Calculator.MulResult)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

void MulResult::Swap(MulResult* other) {
  if (other == this) return;
  InternalSwap(other);
}
void MulResult::InternalSwap(MulResult* other) {
  using std::swap;
  swap(value_, other->value_);
  _internal_metadata_.Swap(&other->_internal_metadata_);
  swap(_cached_size_, other->_cached_size_);
}

::google::protobuf::Metadata MulResult::GetMetadata() const {
  protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages];
}


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

void DivRequest::InitAsDefaultInstance() {
}
#if !defined(_MSC_VER) || _MSC_VER >= 1900
const int DivRequest::kLhsFieldNumber;
const int DivRequest::kRhsFieldNumber;
#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900

DivRequest::DivRequest()
  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
  if (GOOGLE_PREDICT_TRUE(this != internal_default_instance())) {
    ::protobuf_calculator_2eproto::InitDefaultsDivRequest();
  }
  SharedCtor();
  // @@protoc_insertion_point(constructor:Calculator.DivRequest)
}
DivRequest::DivRequest(const DivRequest& from)
  : ::google::protobuf::Message(),
      _internal_metadata_(NULL),
      _cached_size_(0) {
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::memcpy(&lhs_, &from.lhs_,
    static_cast<size_t>(reinterpret_cast<char*>(&rhs_) -
    reinterpret_cast<char*>(&lhs_)) + sizeof(rhs_));
  // @@protoc_insertion_point(copy_constructor:Calculator.DivRequest)
}

void DivRequest::SharedCtor() {
  ::memset(&lhs_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&rhs_) -
      reinterpret_cast<char*>(&lhs_)) + sizeof(rhs_));
  _cached_size_ = 0;
}

DivRequest::~DivRequest() {
  // @@protoc_insertion_point(destructor:Calculator.DivRequest)
  SharedDtor();
}

void DivRequest::SharedDtor() {
}

void DivRequest::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const ::google::protobuf::Descriptor* DivRequest::descriptor() {
  ::protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
}

const DivRequest& DivRequest::default_instance() {
  ::protobuf_calculator_2eproto::InitDefaultsDivRequest();
  return *internal_default_instance();
}

DivRequest* DivRequest::New(::google::protobuf::Arena* arena) const {
  DivRequest* n = new DivRequest;
  if (arena != NULL) {
    arena->Own(n);
  }
  return n;
}

void DivRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:Calculator.DivRequest)
  ::google::protobuf::uint32 cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  ::memset(&lhs_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&rhs_) -
      reinterpret_cast<char*>(&lhs_)) + sizeof(rhs_));
  _internal_metadata_.Clear();
}

bool DivRequest::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
  ::google::protobuf::uint32 tag;
  // @@protoc_insertion_point(parse_start:Calculator.DivRequest)
  for (;;) {
    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
    tag = p.first;
    if (!p.second) goto handle_unusual;
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // int32 lhs = 1;
      case 1: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &lhs_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 rhs = 2;
      case 2: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &rhs_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      default: {
      handle_unusual:
        if (tag == 0) {
          goto success;
        }
        DO_(::google::protobuf::internal::WireFormat::SkipField(
              input, tag, _internal_metadata_.mutable_unknown_fields()));
        break;
      }
    }
  }
success:
  // @@protoc_insertion_point(parse_success:Calculator.DivRequest)
  return true;
failure:
  // @@protoc_insertion_point(parse_failure:Calculator.DivRequest)
  return false;
#undef DO_
}

void DivRequest::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // @@protoc_insertion_point(serialize_start:Calculator.DivRequest)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 lhs = 1;
  if (this->lhs() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->lhs(), output);
  }

  // int32 rhs = 2;
  if (this->rhs() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->rhs(), output);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), output);
  }
  // @@protoc_insertion_point(serialize_end:Calculator.DivRequest)
}

::google::protobuf::uint8* DivRequest::InternalSerializeWithCachedSizesToArray(
    bool deterministic, ::google::protobuf::uint8* target) const {
  (void)deterministic; // Unused
  // @@protoc_insertion_point(serialize_to_array_start:Calculator.DivRequest)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 lhs = 1;
  if (this->lhs() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->lhs(), target);
  }

  // int32 rhs = 2;
  if (this->rhs() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->rhs(), target);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:Calculator.DivRequest)
  return target;
}

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

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    total_size +=
      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()));
  }
  // int32 lhs = 1;
  if (this->lhs() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->lhs());
  }

  // int32 rhs = 2;
  if (this->rhs() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->rhs());
  }

  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = cached_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void DivRequest::MergeFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_merge_from_start:Calculator.DivRequest)
  GOOGLE_DCHECK_NE(&from, this);
  const DivRequest* source =
      ::google::protobuf::internal::DynamicCastToGenerated<const DivRequest>(
          &from);
  if (source == NULL) {
  // @@protoc_insertion_point(generalized_merge_from_cast_fail:Calculator.DivRequest)
    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
  } else {
  // @@protoc_insertion_point(generalized_merge_from_cast_success:Calculator.DivRequest)
    MergeFrom(*source);
  }
}

void DivRequest::MergeFrom(const DivRequest& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:Calculator.DivRequest)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  if (from.lhs() != 0) {
    set_lhs(from.lhs());
  }
  if (from.rhs() != 0) {
    set_rhs(from.rhs());
  }
}

void DivRequest::CopyFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_copy_from_start:Calculator.DivRequest)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

void DivRequest::Swap(DivRequest* other) {
  if (other == this) return;
  InternalSwap(other);
}
void DivRequest::InternalSwap(DivRequest* other) {
  using std::swap;
  swap(lhs_, other->lhs_);
  swap(rhs_, other->rhs_);
  _internal_metadata_.Swap(&other->_internal_metadata_);
  swap(_cached_size_, other->_cached_size_);
}

::google::protobuf::Metadata DivRequest::GetMetadata() const {
  protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages];
}


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

void DivResult::InitAsDefaultInstance() {
}
#if !defined(_MSC_VER) || _MSC_VER >= 1900
const int DivResult::kValueFieldNumber;
#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900

DivResult::DivResult()
  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
  if (GOOGLE_PREDICT_TRUE(this != internal_default_instance())) {
    ::protobuf_calculator_2eproto::InitDefaultsDivResult();
  }
  SharedCtor();
  // @@protoc_insertion_point(constructor:Calculator.DivResult)
}
DivResult::DivResult(const DivResult& from)
  : ::google::protobuf::Message(),
      _internal_metadata_(NULL),
      _cached_size_(0) {
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  value_ = from.value_;
  // @@protoc_insertion_point(copy_constructor:Calculator.DivResult)
}

void DivResult::SharedCtor() {
  value_ = 0;
  _cached_size_ = 0;
}

DivResult::~DivResult() {
  // @@protoc_insertion_point(destructor:Calculator.DivResult)
  SharedDtor();
}

void DivResult::SharedDtor() {
}

void DivResult::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const ::google::protobuf::Descriptor* DivResult::descriptor() {
  ::protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
}

const DivResult& DivResult::default_instance() {
  ::protobuf_calculator_2eproto::InitDefaultsDivResult();
  return *internal_default_instance();
}

DivResult* DivResult::New(::google::protobuf::Arena* arena) const {
  DivResult* n = new DivResult;
  if (arena != NULL) {
    arena->Own(n);
  }
  return n;
}

void DivResult::Clear() {
// @@protoc_insertion_point(message_clear_start:Calculator.DivResult)
  ::google::protobuf::uint32 cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  value_ = 0;
  _internal_metadata_.Clear();
}

bool DivResult::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
  ::google::protobuf::uint32 tag;
  // @@protoc_insertion_point(parse_start:Calculator.DivResult)
  for (;;) {
    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
    tag = p.first;
    if (!p.second) goto handle_unusual;
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // int32 value = 1;
      case 1: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &value_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      default: {
      handle_unusual:
        if (tag == 0) {
          goto success;
        }
        DO_(::google::protobuf::internal::WireFormat::SkipField(
              input, tag, _internal_metadata_.mutable_unknown_fields()));
        break;
      }
    }
  }
success:
  // @@protoc_insertion_point(parse_success:Calculator.DivResult)
  return true;
failure:
  // @@protoc_insertion_point(parse_failure:Calculator.DivResult)
  return false;
#undef DO_
}

void DivResult::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // @@protoc_insertion_point(serialize_start:Calculator.DivResult)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 value = 1;
  if (this->value() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->value(), output);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), output);
  }
  // @@protoc_insertion_point(serialize_end:Calculator.DivResult)
}

::google::protobuf::uint8* DivResult::InternalSerializeWithCachedSizesToArray(
    bool deterministic, ::google::protobuf::uint8* target) const {
  (void)deterministic; // Unused
  // @@protoc_insertion_point(serialize_to_array_start:Calculator.DivResult)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // int32 value = 1;
  if (this->value() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->value(), target);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:Calculator.DivResult)
  return target;
}

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

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    total_size +=
      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()));
  }
  // int32 value = 1;
  if (this->value() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->value());
  }

  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = cached_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void DivResult::MergeFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_merge_from_start:Calculator.DivResult)
  GOOGLE_DCHECK_NE(&from, this);
  const DivResult* source =
      ::google::protobuf::internal::DynamicCastToGenerated<const DivResult>(
          &from);
  if (source == NULL) {
  // @@protoc_insertion_point(generalized_merge_from_cast_fail:Calculator.DivResult)
    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
  } else {
  // @@protoc_insertion_point(generalized_merge_from_cast_success:Calculator.DivResult)
    MergeFrom(*source);
  }
}

void DivResult::MergeFrom(const DivResult& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:Calculator.DivResult)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  if (from.value() != 0) {
    set_value(from.value());
  }
}

void DivResult::CopyFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_copy_from_start:Calculator.DivResult)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

void DivResult::Swap(DivResult* other) {
  if (other == this) return;
  InternalSwap(other);
}
void DivResult::InternalSwap(DivResult* other) {
  using std::swap;
  swap(value_, other->value_);
  _internal_metadata_.Swap(&other->_internal_metadata_);
  swap(_cached_size_, other->_cached_size_);
}

::google::protobuf::Metadata DivResult::GetMetadata() const {
  protobuf_calculator_2eproto::protobuf_AssignDescriptorsOnce();
  return ::protobuf_calculator_2eproto::file_level_metadata[kIndexInFileMessages];
}


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

// @@protoc_insertion_point(global_scope)
