// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: keyapis/invoice/v1/keyapis_invoice_paymethod_v1.proto

#ifndef GOOGLE_PROTOBUF_INCLUDED_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto_2epb_2eh
#define GOOGLE_PROTOBUF_INCLUDED_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto_2epb_2eh

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

#include "google/protobuf/port_def.inc"
#if PROTOBUF_VERSION < 4023000
#error "This file was generated by a newer version of protoc which is"
#error "incompatible with your Protocol Buffer headers. Please update"
#error "your headers."
#endif  // PROTOBUF_VERSION

#if 4023001 < PROTOBUF_MIN_PROTOC_VERSION
#error "This file was generated by an older version of protoc which is"
#error "incompatible with your Protocol Buffer headers. Please"
#error "regenerate this file with a newer version of protoc."
#endif  // PROTOBUF_MIN_PROTOC_VERSION
#include "google/protobuf/port_undef.inc"
#include "google/protobuf/io/coded_stream.h"
#include "google/protobuf/arena.h"
#include "google/protobuf/arenastring.h"
#include "google/protobuf/generated_message_util.h"
#include "google/protobuf/metadata_lite.h"
#include "google/protobuf/message_lite.h"
#include "google/protobuf/repeated_field.h"  // IWYU pragma: export
#include "google/protobuf/extension_set.h"  // IWYU pragma: export
#include "google/protobuf/generated_enum_util.h"
#include "google/protobuf/timestamp.pb.h"
#include "google/api/annotations.pb.h"
#include "google/api/field_behavior.pb.h"
#include "google/protobuf/field_mask.pb.h"
// @@protoc_insertion_point(includes)

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

#define PROTOBUF_INTERNAL_EXPORT_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto

PROTOBUF_NAMESPACE_OPEN
namespace internal {
class AnyMetadata;
}  // namespace internal
PROTOBUF_NAMESPACE_CLOSE

// Internal implementation detail -- do not use these members.
struct TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto {
  static const ::uint32_t offsets[];
};
namespace keyapis {
namespace invoice {
namespace v1 {
class DeletePayMethodRequest;
struct DeletePayMethodRequestDefaultTypeInternal;
extern DeletePayMethodRequestDefaultTypeInternal _DeletePayMethodRequest_default_instance_;
class DeletePayMethodResponse;
struct DeletePayMethodResponseDefaultTypeInternal;
extern DeletePayMethodResponseDefaultTypeInternal _DeletePayMethodResponse_default_instance_;
class GetPayMethodListRequest;
struct GetPayMethodListRequestDefaultTypeInternal;
extern GetPayMethodListRequestDefaultTypeInternal _GetPayMethodListRequest_default_instance_;
class GetPayMethodListResponse;
struct GetPayMethodListResponseDefaultTypeInternal;
extern GetPayMethodListResponseDefaultTypeInternal _GetPayMethodListResponse_default_instance_;
class PayMethod;
struct PayMethodDefaultTypeInternal;
extern PayMethodDefaultTypeInternal _PayMethod_default_instance_;
class PostPayMethodBankcardRequest;
struct PostPayMethodBankcardRequestDefaultTypeInternal;
extern PostPayMethodBankcardRequestDefaultTypeInternal _PostPayMethodBankcardRequest_default_instance_;
class PostPayMethodBankcardResponse;
struct PostPayMethodBankcardResponseDefaultTypeInternal;
extern PostPayMethodBankcardResponseDefaultTypeInternal _PostPayMethodBankcardResponse_default_instance_;
class PostPayMethodBankcardResponse_Error;
struct PostPayMethodBankcardResponse_ErrorDefaultTypeInternal;
extern PostPayMethodBankcardResponse_ErrorDefaultTypeInternal _PostPayMethodBankcardResponse_Error_default_instance_;
class PostPayMethodBankcardResponse_RegisterData;
struct PostPayMethodBankcardResponse_RegisterDataDefaultTypeInternal;
extern PostPayMethodBankcardResponse_RegisterDataDefaultTypeInternal _PostPayMethodBankcardResponse_RegisterData_default_instance_;
class PostPayMethodDefaultRequest;
struct PostPayMethodDefaultRequestDefaultTypeInternal;
extern PostPayMethodDefaultRequestDefaultTypeInternal _PostPayMethodDefaultRequest_default_instance_;
class PostPayMethodDefaultResponse;
struct PostPayMethodDefaultResponseDefaultTypeInternal;
extern PostPayMethodDefaultResponseDefaultTypeInternal _PostPayMethodDefaultResponse_default_instance_;
class PostPayMethodDefaultResponse_Error;
struct PostPayMethodDefaultResponse_ErrorDefaultTypeInternal;
extern PostPayMethodDefaultResponse_ErrorDefaultTypeInternal _PostPayMethodDefaultResponse_Error_default_instance_;
class PostPayMethodSbpRequest;
struct PostPayMethodSbpRequestDefaultTypeInternal;
extern PostPayMethodSbpRequestDefaultTypeInternal _PostPayMethodSbpRequest_default_instance_;
class PostPayMethodSbpResponse;
struct PostPayMethodSbpResponseDefaultTypeInternal;
extern PostPayMethodSbpResponseDefaultTypeInternal _PostPayMethodSbpResponse_default_instance_;
class PostPayMethodSbpResponse_Error;
struct PostPayMethodSbpResponse_ErrorDefaultTypeInternal;
extern PostPayMethodSbpResponse_ErrorDefaultTypeInternal _PostPayMethodSbpResponse_Error_default_instance_;
class PostPayMethodSbpResponse_RegisterData;
struct PostPayMethodSbpResponse_RegisterDataDefaultTypeInternal;
extern PostPayMethodSbpResponse_RegisterDataDefaultTypeInternal _PostPayMethodSbpResponse_RegisterData_default_instance_;
class ValidationError;
struct ValidationErrorDefaultTypeInternal;
extern ValidationErrorDefaultTypeInternal _ValidationError_default_instance_;
}  // namespace v1
}  // namespace invoice
}  // namespace keyapis
PROTOBUF_NAMESPACE_OPEN
template <>
::keyapis::invoice::v1::DeletePayMethodRequest* Arena::CreateMaybeMessage<::keyapis::invoice::v1::DeletePayMethodRequest>(Arena*);
template <>
::keyapis::invoice::v1::DeletePayMethodResponse* Arena::CreateMaybeMessage<::keyapis::invoice::v1::DeletePayMethodResponse>(Arena*);
template <>
::keyapis::invoice::v1::GetPayMethodListRequest* Arena::CreateMaybeMessage<::keyapis::invoice::v1::GetPayMethodListRequest>(Arena*);
template <>
::keyapis::invoice::v1::GetPayMethodListResponse* Arena::CreateMaybeMessage<::keyapis::invoice::v1::GetPayMethodListResponse>(Arena*);
template <>
::keyapis::invoice::v1::PayMethod* Arena::CreateMaybeMessage<::keyapis::invoice::v1::PayMethod>(Arena*);
template <>
::keyapis::invoice::v1::PostPayMethodBankcardRequest* Arena::CreateMaybeMessage<::keyapis::invoice::v1::PostPayMethodBankcardRequest>(Arena*);
template <>
::keyapis::invoice::v1::PostPayMethodBankcardResponse* Arena::CreateMaybeMessage<::keyapis::invoice::v1::PostPayMethodBankcardResponse>(Arena*);
template <>
::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* Arena::CreateMaybeMessage<::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error>(Arena*);
template <>
::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* Arena::CreateMaybeMessage<::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData>(Arena*);
template <>
::keyapis::invoice::v1::PostPayMethodDefaultRequest* Arena::CreateMaybeMessage<::keyapis::invoice::v1::PostPayMethodDefaultRequest>(Arena*);
template <>
::keyapis::invoice::v1::PostPayMethodDefaultResponse* Arena::CreateMaybeMessage<::keyapis::invoice::v1::PostPayMethodDefaultResponse>(Arena*);
template <>
::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* Arena::CreateMaybeMessage<::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error>(Arena*);
template <>
::keyapis::invoice::v1::PostPayMethodSbpRequest* Arena::CreateMaybeMessage<::keyapis::invoice::v1::PostPayMethodSbpRequest>(Arena*);
template <>
::keyapis::invoice::v1::PostPayMethodSbpResponse* Arena::CreateMaybeMessage<::keyapis::invoice::v1::PostPayMethodSbpResponse>(Arena*);
template <>
::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* Arena::CreateMaybeMessage<::keyapis::invoice::v1::PostPayMethodSbpResponse_Error>(Arena*);
template <>
::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* Arena::CreateMaybeMessage<::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData>(Arena*);
template <>
::keyapis::invoice::v1::ValidationError* Arena::CreateMaybeMessage<::keyapis::invoice::v1::ValidationError>(Arena*);
PROTOBUF_NAMESPACE_CLOSE

namespace keyapis {
namespace invoice {
namespace v1 {
enum PayMethod_Type : int {
  PayMethod_Type_TYPE_UNKNOWN = 0,
  PayMethod_Type_BANK_CARD = 1,
  PayMethod_Type_SBP = 2,
  PayMethod_Type_SBER_BIND = 3,
  PayMethod_Type_PayMethod_Type_INT_MIN_SENTINEL_DO_NOT_USE_ =
      std::numeric_limits<::int32_t>::min(),
  PayMethod_Type_PayMethod_Type_INT_MAX_SENTINEL_DO_NOT_USE_ =
      std::numeric_limits<::int32_t>::max(),
};

bool PayMethod_Type_IsValid(int value);
constexpr PayMethod_Type PayMethod_Type_Type_MIN = static_cast<PayMethod_Type>(0);
constexpr PayMethod_Type PayMethod_Type_Type_MAX = static_cast<PayMethod_Type>(3);
constexpr int PayMethod_Type_Type_ARRAYSIZE = 3 + 1;
const std::string& PayMethod_Type_Name(PayMethod_Type value);
template <typename T>
const std::string& PayMethod_Type_Name(T value) {
  static_assert(std::is_same<T, PayMethod_Type>::value ||
                    std::is_integral<T>::value,
                "Incorrect type passed to Type_Name().");
  return PayMethod_Type_Name(static_cast<PayMethod_Type>(value));
}
const std::string& PayMethod_Type_Name(PayMethod_Type value);
bool PayMethod_Type_Parse(absl::string_view name, PayMethod_Type* value);
enum PayMethod_CardType : int {
  PayMethod_CardType_CARD_TYPE_UNKNOWN = 0,
  PayMethod_CardType_VISA = 1,
  PayMethod_CardType_EC_MC = 2,
  PayMethod_CardType_DCL = 3,
  PayMethod_CardType_JCB = 4,
  PayMethod_CardType_AMEX = 5,
  PayMethod_CardType_MIR = 6,
  PayMethod_CardType_PayMethod_CardType_INT_MIN_SENTINEL_DO_NOT_USE_ =
      std::numeric_limits<::int32_t>::min(),
  PayMethod_CardType_PayMethod_CardType_INT_MAX_SENTINEL_DO_NOT_USE_ =
      std::numeric_limits<::int32_t>::max(),
};

bool PayMethod_CardType_IsValid(int value);
constexpr PayMethod_CardType PayMethod_CardType_CardType_MIN = static_cast<PayMethod_CardType>(0);
constexpr PayMethod_CardType PayMethod_CardType_CardType_MAX = static_cast<PayMethod_CardType>(6);
constexpr int PayMethod_CardType_CardType_ARRAYSIZE = 6 + 1;
const std::string& PayMethod_CardType_Name(PayMethod_CardType value);
template <typename T>
const std::string& PayMethod_CardType_Name(T value) {
  static_assert(std::is_same<T, PayMethod_CardType>::value ||
                    std::is_integral<T>::value,
                "Incorrect type passed to CardType_Name().");
  return PayMethod_CardType_Name(static_cast<PayMethod_CardType>(value));
}
const std::string& PayMethod_CardType_Name(PayMethod_CardType value);
bool PayMethod_CardType_Parse(absl::string_view name, PayMethod_CardType* value);
enum PayMethod_StatusType : int {
  PayMethod_StatusType_STATUS_TYPE_UNKNOWN = 0,
  PayMethod_StatusType_VALID = 1,
  PayMethod_StatusType_EXPIRED = 2,
  PayMethod_StatusType_BLOCKED = 3,
  PayMethod_StatusType_PayMethod_StatusType_INT_MIN_SENTINEL_DO_NOT_USE_ =
      std::numeric_limits<::int32_t>::min(),
  PayMethod_StatusType_PayMethod_StatusType_INT_MAX_SENTINEL_DO_NOT_USE_ =
      std::numeric_limits<::int32_t>::max(),
};

bool PayMethod_StatusType_IsValid(int value);
constexpr PayMethod_StatusType PayMethod_StatusType_StatusType_MIN = static_cast<PayMethod_StatusType>(0);
constexpr PayMethod_StatusType PayMethod_StatusType_StatusType_MAX = static_cast<PayMethod_StatusType>(3);
constexpr int PayMethod_StatusType_StatusType_ARRAYSIZE = 3 + 1;
const std::string& PayMethod_StatusType_Name(PayMethod_StatusType value);
template <typename T>
const std::string& PayMethod_StatusType_Name(T value) {
  static_assert(std::is_same<T, PayMethod_StatusType>::value ||
                    std::is_integral<T>::value,
                "Incorrect type passed to StatusType_Name().");
  return PayMethod_StatusType_Name(static_cast<PayMethod_StatusType>(value));
}
const std::string& PayMethod_StatusType_Name(PayMethod_StatusType value);
bool PayMethod_StatusType_Parse(absl::string_view name, PayMethod_StatusType* value);

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


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

class PayMethod final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.PayMethod) */ {
 public:
  inline PayMethod() : PayMethod(nullptr) {}
  ~PayMethod() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR PayMethod(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  PayMethod(const PayMethod& from);
  PayMethod(PayMethod&& from) noexcept
    : PayMethod() {
    *this = ::std::move(from);
  }

  inline PayMethod& operator=(const PayMethod& from) {
    CopyFrom(from);
    return *this;
  }
  inline PayMethod& operator=(PayMethod&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const PayMethod& default_instance() {
    return *internal_default_instance();
  }
  static inline const PayMethod* internal_default_instance() {
    return reinterpret_cast<const PayMethod*>(
               &_PayMethod_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    0;

  friend void swap(PayMethod& a, PayMethod& b) {
    a.Swap(&b);
  }
  inline void Swap(PayMethod* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PayMethod* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  PayMethod* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<PayMethod>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const PayMethod& from);
  void MergeFrom(const PayMethod& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(PayMethod* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.PayMethod";
  }
  protected:
  explicit PayMethod(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  using Type = PayMethod_Type;
  static constexpr Type TYPE_UNKNOWN = PayMethod_Type_TYPE_UNKNOWN;
  static constexpr Type BANK_CARD = PayMethod_Type_BANK_CARD;
  static constexpr Type SBP = PayMethod_Type_SBP;
  static constexpr Type SBER_BIND = PayMethod_Type_SBER_BIND;
  static inline bool Type_IsValid(int value) {
    return PayMethod_Type_IsValid(value);
  }
  static constexpr Type Type_MIN = PayMethod_Type_Type_MIN;
  static constexpr Type Type_MAX = PayMethod_Type_Type_MAX;
  static constexpr int Type_ARRAYSIZE = PayMethod_Type_Type_ARRAYSIZE;
  template <typename T>
  static inline const std::string& Type_Name(T value) {
    return PayMethod_Type_Name(value);
  }
  static inline bool Type_Parse(absl::string_view name, Type* value) {
    return PayMethod_Type_Parse(name, value);
  }

  using CardType = PayMethod_CardType;
  static constexpr CardType CARD_TYPE_UNKNOWN = PayMethod_CardType_CARD_TYPE_UNKNOWN;
  static constexpr CardType VISA = PayMethod_CardType_VISA;
  static constexpr CardType EC_MC = PayMethod_CardType_EC_MC;
  static constexpr CardType DCL = PayMethod_CardType_DCL;
  static constexpr CardType JCB = PayMethod_CardType_JCB;
  static constexpr CardType AMEX = PayMethod_CardType_AMEX;
  static constexpr CardType MIR = PayMethod_CardType_MIR;
  static inline bool CardType_IsValid(int value) {
    return PayMethod_CardType_IsValid(value);
  }
  static constexpr CardType CardType_MIN = PayMethod_CardType_CardType_MIN;
  static constexpr CardType CardType_MAX = PayMethod_CardType_CardType_MAX;
  static constexpr int CardType_ARRAYSIZE = PayMethod_CardType_CardType_ARRAYSIZE;
  template <typename T>
  static inline const std::string& CardType_Name(T value) {
    return PayMethod_CardType_Name(value);
  }
  static inline bool CardType_Parse(absl::string_view name, CardType* value) {
    return PayMethod_CardType_Parse(name, value);
  }

  using StatusType = PayMethod_StatusType;
  static constexpr StatusType STATUS_TYPE_UNKNOWN = PayMethod_StatusType_STATUS_TYPE_UNKNOWN;
  static constexpr StatusType VALID = PayMethod_StatusType_VALID;
  static constexpr StatusType EXPIRED = PayMethod_StatusType_EXPIRED;
  static constexpr StatusType BLOCKED = PayMethod_StatusType_BLOCKED;
  static inline bool StatusType_IsValid(int value) {
    return PayMethod_StatusType_IsValid(value);
  }
  static constexpr StatusType StatusType_MIN = PayMethod_StatusType_StatusType_MIN;
  static constexpr StatusType StatusType_MAX = PayMethod_StatusType_StatusType_MAX;
  static constexpr int StatusType_ARRAYSIZE = PayMethod_StatusType_StatusType_ARRAYSIZE;
  template <typename T>
  static inline const std::string& StatusType_Name(T value) {
    return PayMethod_StatusType_Name(value);
  }
  static inline bool StatusType_Parse(absl::string_view name, StatusType* value) {
    return PayMethod_StatusType_Parse(name, value);
  }

  // accessors -------------------------------------------------------

  enum : int {
    kPayMethodIdFieldNumber = 1,
    kPayMethodContactFieldNumber = 6,
    kPayMethodDescriptionFieldNumber = 7,
    kPayMethodAliasFieldNumber = 8,
    kMaskedNumFieldNumber = 10,
    kBankNameFieldNumber = 11,
    kRegisterAtFieldNumber = 14,
    kUserIdFieldNumber = 2,
    kTypeFieldNumber = 3,
    kIsActiveFieldNumber = 4,
    kIsDefaultFieldNumber = 5,
    kIsAuthFieldNumber = 12,
    kCardTypeFieldNumber = 9,
    kStatusTypeFieldNumber = 13,
  };
  // string pay_method_id = 1 [(.google.api.field_behavior) = REQUIRED];
  void clear_pay_method_id() ;
  const std::string& pay_method_id() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_pay_method_id(Arg_&& arg, Args_... args);
  std::string* mutable_pay_method_id();
  PROTOBUF_NODISCARD std::string* release_pay_method_id();
  void set_allocated_pay_method_id(std::string* ptr);

  private:
  const std::string& _internal_pay_method_id() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_pay_method_id(
      const std::string& value);
  std::string* _internal_mutable_pay_method_id();

  public:
  // string pay_method_contact = 6;
  void clear_pay_method_contact() ;
  const std::string& pay_method_contact() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_pay_method_contact(Arg_&& arg, Args_... args);
  std::string* mutable_pay_method_contact();
  PROTOBUF_NODISCARD std::string* release_pay_method_contact();
  void set_allocated_pay_method_contact(std::string* ptr);

  private:
  const std::string& _internal_pay_method_contact() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_pay_method_contact(
      const std::string& value);
  std::string* _internal_mutable_pay_method_contact();

  public:
  // string pay_method_description = 7;
  void clear_pay_method_description() ;
  const std::string& pay_method_description() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_pay_method_description(Arg_&& arg, Args_... args);
  std::string* mutable_pay_method_description();
  PROTOBUF_NODISCARD std::string* release_pay_method_description();
  void set_allocated_pay_method_description(std::string* ptr);

  private:
  const std::string& _internal_pay_method_description() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_pay_method_description(
      const std::string& value);
  std::string* _internal_mutable_pay_method_description();

  public:
  // string pay_method_alias = 8;
  void clear_pay_method_alias() ;
  const std::string& pay_method_alias() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_pay_method_alias(Arg_&& arg, Args_... args);
  std::string* mutable_pay_method_alias();
  PROTOBUF_NODISCARD std::string* release_pay_method_alias();
  void set_allocated_pay_method_alias(std::string* ptr);

  private:
  const std::string& _internal_pay_method_alias() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_pay_method_alias(
      const std::string& value);
  std::string* _internal_mutable_pay_method_alias();

  public:
  // string masked_num = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];
  void clear_masked_num() ;
  const std::string& masked_num() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_masked_num(Arg_&& arg, Args_... args);
  std::string* mutable_masked_num();
  PROTOBUF_NODISCARD std::string* release_masked_num();
  void set_allocated_masked_num(std::string* ptr);

  private:
  const std::string& _internal_masked_num() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_masked_num(
      const std::string& value);
  std::string* _internal_mutable_masked_num();

  public:
  // string bank_name = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
  void clear_bank_name() ;
  const std::string& bank_name() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_bank_name(Arg_&& arg, Args_... args);
  std::string* mutable_bank_name();
  PROTOBUF_NODISCARD std::string* release_bank_name();
  void set_allocated_bank_name(std::string* ptr);

  private:
  const std::string& _internal_bank_name() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_bank_name(
      const std::string& value);
  std::string* _internal_mutable_bank_name();

  public:
  // .google.protobuf.Timestamp register_at = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
  bool has_register_at() const;
  void clear_register_at() ;
  const ::PROTOBUF_NAMESPACE_ID::Timestamp& register_at() const;
  PROTOBUF_NODISCARD ::PROTOBUF_NAMESPACE_ID::Timestamp* release_register_at();
  ::PROTOBUF_NAMESPACE_ID::Timestamp* mutable_register_at();
  void set_allocated_register_at(::PROTOBUF_NAMESPACE_ID::Timestamp* register_at);
  private:
  const ::PROTOBUF_NAMESPACE_ID::Timestamp& _internal_register_at() const;
  ::PROTOBUF_NAMESPACE_ID::Timestamp* _internal_mutable_register_at();
  public:
  void unsafe_arena_set_allocated_register_at(
      ::PROTOBUF_NAMESPACE_ID::Timestamp* register_at);
  ::PROTOBUF_NAMESPACE_ID::Timestamp* unsafe_arena_release_register_at();
  // int32 user_id = 2 [(.google.api.field_behavior) = REQUIRED];
  void clear_user_id() ;
  ::int32_t user_id() const;
  void set_user_id(::int32_t value);

  private:
  ::int32_t _internal_user_id() const;
  void _internal_set_user_id(::int32_t value);

  public:
  // .keyapis.invoice.v1.PayMethod.Type type = 3 [(.google.api.field_behavior) = REQUIRED];
  void clear_type() ;
  ::keyapis::invoice::v1::PayMethod_Type type() const;
  void set_type(::keyapis::invoice::v1::PayMethod_Type value);

  private:
  ::keyapis::invoice::v1::PayMethod_Type _internal_type() const;
  void _internal_set_type(::keyapis::invoice::v1::PayMethod_Type value);

  public:
  // bool is_active = 4 [(.google.api.field_behavior) = REQUIRED];
  void clear_is_active() ;
  bool is_active() const;
  void set_is_active(bool value);

  private:
  bool _internal_is_active() const;
  void _internal_set_is_active(bool value);

  public:
  // bool is_default = 5 [(.google.api.field_behavior) = REQUIRED];
  void clear_is_default() ;
  bool is_default() const;
  void set_is_default(bool value);

  private:
  bool _internal_is_default() const;
  void _internal_set_is_default(bool value);

  public:
  // bool is_auth = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
  void clear_is_auth() ;
  bool is_auth() const;
  void set_is_auth(bool value);

  private:
  bool _internal_is_auth() const;
  void _internal_set_is_auth(bool value);

  public:
  // .keyapis.invoice.v1.PayMethod.CardType card_type = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];
  void clear_card_type() ;
  ::keyapis::invoice::v1::PayMethod_CardType card_type() const;
  void set_card_type(::keyapis::invoice::v1::PayMethod_CardType value);

  private:
  ::keyapis::invoice::v1::PayMethod_CardType _internal_card_type() const;
  void _internal_set_card_type(::keyapis::invoice::v1::PayMethod_CardType value);

  public:
  // .keyapis.invoice.v1.PayMethod.StatusType status_type = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
  void clear_status_type() ;
  ::keyapis::invoice::v1::PayMethod_StatusType status_type() const;
  void set_status_type(::keyapis::invoice::v1::PayMethod_StatusType value);

  private:
  ::keyapis::invoice::v1::PayMethod_StatusType _internal_status_type() const;
  void _internal_set_status_type(::keyapis::invoice::v1::PayMethod_StatusType value);

  public:
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.PayMethod)
 private:
  class _Internal;

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr pay_method_id_;
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr pay_method_contact_;
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr pay_method_description_;
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr pay_method_alias_;
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr masked_num_;
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr bank_name_;
    ::PROTOBUF_NAMESPACE_ID::Timestamp* register_at_;
    ::int32_t user_id_;
    int type_;
    bool is_active_;
    bool is_default_;
    bool is_auth_;
    int card_type_;
    int status_type_;
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class GetPayMethodListRequest final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.GetPayMethodListRequest) */ {
 public:
  inline GetPayMethodListRequest() : GetPayMethodListRequest(nullptr) {}
  ~GetPayMethodListRequest() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR GetPayMethodListRequest(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  GetPayMethodListRequest(const GetPayMethodListRequest& from);
  GetPayMethodListRequest(GetPayMethodListRequest&& from) noexcept
    : GetPayMethodListRequest() {
    *this = ::std::move(from);
  }

  inline GetPayMethodListRequest& operator=(const GetPayMethodListRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline GetPayMethodListRequest& operator=(GetPayMethodListRequest&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const GetPayMethodListRequest& default_instance() {
    return *internal_default_instance();
  }
  static inline const GetPayMethodListRequest* internal_default_instance() {
    return reinterpret_cast<const GetPayMethodListRequest*>(
               &_GetPayMethodListRequest_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    1;

  friend void swap(GetPayMethodListRequest& a, GetPayMethodListRequest& b) {
    a.Swap(&b);
  }
  inline void Swap(GetPayMethodListRequest* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(GetPayMethodListRequest* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  GetPayMethodListRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<GetPayMethodListRequest>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const GetPayMethodListRequest& from);
  void MergeFrom(const GetPayMethodListRequest& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(GetPayMethodListRequest* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.GetPayMethodListRequest";
  }
  protected:
  explicit GetPayMethodListRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kUserIdFieldNumber = 1,
  };
  // int32 user_id = 1;
  void clear_user_id() ;
  ::int32_t user_id() const;
  void set_user_id(::int32_t value);

  private:
  ::int32_t _internal_user_id() const;
  void _internal_set_user_id(::int32_t value);

  public:
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.GetPayMethodListRequest)
 private:
  class _Internal;

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    ::int32_t user_id_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class GetPayMethodListResponse final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.GetPayMethodListResponse) */ {
 public:
  inline GetPayMethodListResponse() : GetPayMethodListResponse(nullptr) {}
  ~GetPayMethodListResponse() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR GetPayMethodListResponse(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  GetPayMethodListResponse(const GetPayMethodListResponse& from);
  GetPayMethodListResponse(GetPayMethodListResponse&& from) noexcept
    : GetPayMethodListResponse() {
    *this = ::std::move(from);
  }

  inline GetPayMethodListResponse& operator=(const GetPayMethodListResponse& from) {
    CopyFrom(from);
    return *this;
  }
  inline GetPayMethodListResponse& operator=(GetPayMethodListResponse&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const GetPayMethodListResponse& default_instance() {
    return *internal_default_instance();
  }
  static inline const GetPayMethodListResponse* internal_default_instance() {
    return reinterpret_cast<const GetPayMethodListResponse*>(
               &_GetPayMethodListResponse_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    2;

  friend void swap(GetPayMethodListResponse& a, GetPayMethodListResponse& b) {
    a.Swap(&b);
  }
  inline void Swap(GetPayMethodListResponse* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(GetPayMethodListResponse* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  GetPayMethodListResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<GetPayMethodListResponse>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const GetPayMethodListResponse& from);
  void MergeFrom(const GetPayMethodListResponse& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(GetPayMethodListResponse* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.GetPayMethodListResponse";
  }
  protected:
  explicit GetPayMethodListResponse(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kDataFieldNumber = 1,
  };
  // repeated .keyapis.invoice.v1.PayMethod data = 1;
  int data_size() const;
  private:
  int _internal_data_size() const;

  public:
  void clear_data() ;
  ::keyapis::invoice::v1::PayMethod* mutable_data(int index);
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::keyapis::invoice::v1::PayMethod >*
      mutable_data();
  private:
  const ::keyapis::invoice::v1::PayMethod& _internal_data(int index) const;
  ::keyapis::invoice::v1::PayMethod* _internal_add_data();
  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::keyapis::invoice::v1::PayMethod>& _internal_data() const;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::keyapis::invoice::v1::PayMethod>* _internal_mutable_data();
  public:
  const ::keyapis::invoice::v1::PayMethod& data(int index) const;
  ::keyapis::invoice::v1::PayMethod* add_data();
  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::keyapis::invoice::v1::PayMethod >&
      data() const;
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.GetPayMethodListResponse)
 private:
  class _Internal;

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::keyapis::invoice::v1::PayMethod > data_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class DeletePayMethodRequest final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.DeletePayMethodRequest) */ {
 public:
  inline DeletePayMethodRequest() : DeletePayMethodRequest(nullptr) {}
  ~DeletePayMethodRequest() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR DeletePayMethodRequest(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  DeletePayMethodRequest(const DeletePayMethodRequest& from);
  DeletePayMethodRequest(DeletePayMethodRequest&& from) noexcept
    : DeletePayMethodRequest() {
    *this = ::std::move(from);
  }

  inline DeletePayMethodRequest& operator=(const DeletePayMethodRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline DeletePayMethodRequest& operator=(DeletePayMethodRequest&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const DeletePayMethodRequest& default_instance() {
    return *internal_default_instance();
  }
  static inline const DeletePayMethodRequest* internal_default_instance() {
    return reinterpret_cast<const DeletePayMethodRequest*>(
               &_DeletePayMethodRequest_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    3;

  friend void swap(DeletePayMethodRequest& a, DeletePayMethodRequest& b) {
    a.Swap(&b);
  }
  inline void Swap(DeletePayMethodRequest* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(DeletePayMethodRequest* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  DeletePayMethodRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<DeletePayMethodRequest>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const DeletePayMethodRequest& from);
  void MergeFrom(const DeletePayMethodRequest& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(DeletePayMethodRequest* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.DeletePayMethodRequest";
  }
  protected:
  explicit DeletePayMethodRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kPayMethodIdFieldNumber = 1,
  };
  // string pay_method_id = 1 [(.google.api.field_behavior) = REQUIRED];
  void clear_pay_method_id() ;
  const std::string& pay_method_id() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_pay_method_id(Arg_&& arg, Args_... args);
  std::string* mutable_pay_method_id();
  PROTOBUF_NODISCARD std::string* release_pay_method_id();
  void set_allocated_pay_method_id(std::string* ptr);

  private:
  const std::string& _internal_pay_method_id() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_pay_method_id(
      const std::string& value);
  std::string* _internal_mutable_pay_method_id();

  public:
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.DeletePayMethodRequest)
 private:
  class _Internal;

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr pay_method_id_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class DeletePayMethodResponse final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.DeletePayMethodResponse) */ {
 public:
  inline DeletePayMethodResponse() : DeletePayMethodResponse(nullptr) {}
  ~DeletePayMethodResponse() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR DeletePayMethodResponse(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  DeletePayMethodResponse(const DeletePayMethodResponse& from);
  DeletePayMethodResponse(DeletePayMethodResponse&& from) noexcept
    : DeletePayMethodResponse() {
    *this = ::std::move(from);
  }

  inline DeletePayMethodResponse& operator=(const DeletePayMethodResponse& from) {
    CopyFrom(from);
    return *this;
  }
  inline DeletePayMethodResponse& operator=(DeletePayMethodResponse&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const DeletePayMethodResponse& default_instance() {
    return *internal_default_instance();
  }
  static inline const DeletePayMethodResponse* internal_default_instance() {
    return reinterpret_cast<const DeletePayMethodResponse*>(
               &_DeletePayMethodResponse_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    4;

  friend void swap(DeletePayMethodResponse& a, DeletePayMethodResponse& b) {
    a.Swap(&b);
  }
  inline void Swap(DeletePayMethodResponse* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(DeletePayMethodResponse* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  DeletePayMethodResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<DeletePayMethodResponse>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const DeletePayMethodResponse& from);
  void MergeFrom(const DeletePayMethodResponse& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(DeletePayMethodResponse* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.DeletePayMethodResponse";
  }
  protected:
  explicit DeletePayMethodResponse(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.DeletePayMethodResponse)
 private:
  class _Internal;

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class PostPayMethodDefaultRequest final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.PostPayMethodDefaultRequest) */ {
 public:
  inline PostPayMethodDefaultRequest() : PostPayMethodDefaultRequest(nullptr) {}
  ~PostPayMethodDefaultRequest() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR PostPayMethodDefaultRequest(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  PostPayMethodDefaultRequest(const PostPayMethodDefaultRequest& from);
  PostPayMethodDefaultRequest(PostPayMethodDefaultRequest&& from) noexcept
    : PostPayMethodDefaultRequest() {
    *this = ::std::move(from);
  }

  inline PostPayMethodDefaultRequest& operator=(const PostPayMethodDefaultRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline PostPayMethodDefaultRequest& operator=(PostPayMethodDefaultRequest&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const PostPayMethodDefaultRequest& default_instance() {
    return *internal_default_instance();
  }
  static inline const PostPayMethodDefaultRequest* internal_default_instance() {
    return reinterpret_cast<const PostPayMethodDefaultRequest*>(
               &_PostPayMethodDefaultRequest_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    5;

  friend void swap(PostPayMethodDefaultRequest& a, PostPayMethodDefaultRequest& b) {
    a.Swap(&b);
  }
  inline void Swap(PostPayMethodDefaultRequest* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PostPayMethodDefaultRequest* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  PostPayMethodDefaultRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<PostPayMethodDefaultRequest>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const PostPayMethodDefaultRequest& from);
  void MergeFrom(const PostPayMethodDefaultRequest& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(PostPayMethodDefaultRequest* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.PostPayMethodDefaultRequest";
  }
  protected:
  explicit PostPayMethodDefaultRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kPayMethodIdFieldNumber = 1,
  };
  // string pay_method_id = 1 [(.google.api.field_behavior) = REQUIRED];
  void clear_pay_method_id() ;
  const std::string& pay_method_id() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_pay_method_id(Arg_&& arg, Args_... args);
  std::string* mutable_pay_method_id();
  PROTOBUF_NODISCARD std::string* release_pay_method_id();
  void set_allocated_pay_method_id(std::string* ptr);

  private:
  const std::string& _internal_pay_method_id() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_pay_method_id(
      const std::string& value);
  std::string* _internal_mutable_pay_method_id();

  public:
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.PostPayMethodDefaultRequest)
 private:
  class _Internal;

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr pay_method_id_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class PostPayMethodDefaultResponse_Error final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.PostPayMethodDefaultResponse.Error) */ {
 public:
  inline PostPayMethodDefaultResponse_Error() : PostPayMethodDefaultResponse_Error(nullptr) {}
  ~PostPayMethodDefaultResponse_Error() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR PostPayMethodDefaultResponse_Error(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  PostPayMethodDefaultResponse_Error(const PostPayMethodDefaultResponse_Error& from);
  PostPayMethodDefaultResponse_Error(PostPayMethodDefaultResponse_Error&& from) noexcept
    : PostPayMethodDefaultResponse_Error() {
    *this = ::std::move(from);
  }

  inline PostPayMethodDefaultResponse_Error& operator=(const PostPayMethodDefaultResponse_Error& from) {
    CopyFrom(from);
    return *this;
  }
  inline PostPayMethodDefaultResponse_Error& operator=(PostPayMethodDefaultResponse_Error&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const PostPayMethodDefaultResponse_Error& default_instance() {
    return *internal_default_instance();
  }
  enum ReasonCase {
    kValidation = 1,
    REASON_NOT_SET = 0,
  };

  static inline const PostPayMethodDefaultResponse_Error* internal_default_instance() {
    return reinterpret_cast<const PostPayMethodDefaultResponse_Error*>(
               &_PostPayMethodDefaultResponse_Error_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    6;

  friend void swap(PostPayMethodDefaultResponse_Error& a, PostPayMethodDefaultResponse_Error& b) {
    a.Swap(&b);
  }
  inline void Swap(PostPayMethodDefaultResponse_Error* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PostPayMethodDefaultResponse_Error* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  PostPayMethodDefaultResponse_Error* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<PostPayMethodDefaultResponse_Error>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const PostPayMethodDefaultResponse_Error& from);
  void MergeFrom(const PostPayMethodDefaultResponse_Error& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(PostPayMethodDefaultResponse_Error* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.PostPayMethodDefaultResponse.Error";
  }
  protected:
  explicit PostPayMethodDefaultResponse_Error(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kValidationFieldNumber = 1,
  };
  // .keyapis.invoice.v1.ValidationError validation = 1;
  bool has_validation() const;
  private:
  bool _internal_has_validation() const;

  public:
  void clear_validation() ;
  const ::keyapis::invoice::v1::ValidationError& validation() const;
  PROTOBUF_NODISCARD ::keyapis::invoice::v1::ValidationError* release_validation();
  ::keyapis::invoice::v1::ValidationError* mutable_validation();
  void set_allocated_validation(::keyapis::invoice::v1::ValidationError* validation);
  private:
  const ::keyapis::invoice::v1::ValidationError& _internal_validation() const;
  ::keyapis::invoice::v1::ValidationError* _internal_mutable_validation();
  public:
  void unsafe_arena_set_allocated_validation(
      ::keyapis::invoice::v1::ValidationError* validation);
  ::keyapis::invoice::v1::ValidationError* unsafe_arena_release_validation();
  void clear_reason();
  ReasonCase reason_case() const;
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.PostPayMethodDefaultResponse.Error)
 private:
  class _Internal;
  void set_has_validation();

  inline bool has_reason() const;
  inline void clear_has_reason();

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    union ReasonUnion {
      constexpr ReasonUnion() : _constinit_{} {}
        ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_;
      ::keyapis::invoice::v1::ValidationError* validation_;
    } reason_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    ::uint32_t _oneof_case_[1];

  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class PostPayMethodDefaultResponse final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.PostPayMethodDefaultResponse) */ {
 public:
  inline PostPayMethodDefaultResponse() : PostPayMethodDefaultResponse(nullptr) {}
  ~PostPayMethodDefaultResponse() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR PostPayMethodDefaultResponse(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  PostPayMethodDefaultResponse(const PostPayMethodDefaultResponse& from);
  PostPayMethodDefaultResponse(PostPayMethodDefaultResponse&& from) noexcept
    : PostPayMethodDefaultResponse() {
    *this = ::std::move(from);
  }

  inline PostPayMethodDefaultResponse& operator=(const PostPayMethodDefaultResponse& from) {
    CopyFrom(from);
    return *this;
  }
  inline PostPayMethodDefaultResponse& operator=(PostPayMethodDefaultResponse&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const PostPayMethodDefaultResponse& default_instance() {
    return *internal_default_instance();
  }
  enum TypeCase {
    kError = 1,
    TYPE_NOT_SET = 0,
  };

  static inline const PostPayMethodDefaultResponse* internal_default_instance() {
    return reinterpret_cast<const PostPayMethodDefaultResponse*>(
               &_PostPayMethodDefaultResponse_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    7;

  friend void swap(PostPayMethodDefaultResponse& a, PostPayMethodDefaultResponse& b) {
    a.Swap(&b);
  }
  inline void Swap(PostPayMethodDefaultResponse* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PostPayMethodDefaultResponse* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  PostPayMethodDefaultResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<PostPayMethodDefaultResponse>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const PostPayMethodDefaultResponse& from);
  void MergeFrom(const PostPayMethodDefaultResponse& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(PostPayMethodDefaultResponse* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.PostPayMethodDefaultResponse";
  }
  protected:
  explicit PostPayMethodDefaultResponse(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  typedef PostPayMethodDefaultResponse_Error Error;

  // accessors -------------------------------------------------------

  enum : int {
    kErrorFieldNumber = 1,
  };
  // .keyapis.invoice.v1.PostPayMethodDefaultResponse.Error error = 1;
  bool has_error() const;
  private:
  bool _internal_has_error() const;

  public:
  void clear_error() ;
  const ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error& error() const;
  PROTOBUF_NODISCARD ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* release_error();
  ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* mutable_error();
  void set_allocated_error(::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* error);
  private:
  const ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error& _internal_error() const;
  ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* _internal_mutable_error();
  public:
  void unsafe_arena_set_allocated_error(
      ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* error);
  ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* unsafe_arena_release_error();
  void clear_type();
  TypeCase type_case() const;
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.PostPayMethodDefaultResponse)
 private:
  class _Internal;
  void set_has_error();

  inline bool has_type() const;
  inline void clear_has_type();

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    union TypeUnion {
      constexpr TypeUnion() : _constinit_{} {}
        ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_;
      ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* error_;
    } type_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    ::uint32_t _oneof_case_[1];

  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class PostPayMethodBankcardRequest final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.PostPayMethodBankcardRequest) */ {
 public:
  inline PostPayMethodBankcardRequest() : PostPayMethodBankcardRequest(nullptr) {}
  ~PostPayMethodBankcardRequest() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR PostPayMethodBankcardRequest(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  PostPayMethodBankcardRequest(const PostPayMethodBankcardRequest& from);
  PostPayMethodBankcardRequest(PostPayMethodBankcardRequest&& from) noexcept
    : PostPayMethodBankcardRequest() {
    *this = ::std::move(from);
  }

  inline PostPayMethodBankcardRequest& operator=(const PostPayMethodBankcardRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline PostPayMethodBankcardRequest& operator=(PostPayMethodBankcardRequest&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const PostPayMethodBankcardRequest& default_instance() {
    return *internal_default_instance();
  }
  static inline const PostPayMethodBankcardRequest* internal_default_instance() {
    return reinterpret_cast<const PostPayMethodBankcardRequest*>(
               &_PostPayMethodBankcardRequest_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    8;

  friend void swap(PostPayMethodBankcardRequest& a, PostPayMethodBankcardRequest& b) {
    a.Swap(&b);
  }
  inline void Swap(PostPayMethodBankcardRequest* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PostPayMethodBankcardRequest* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  PostPayMethodBankcardRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<PostPayMethodBankcardRequest>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const PostPayMethodBankcardRequest& from);
  void MergeFrom(const PostPayMethodBankcardRequest& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(PostPayMethodBankcardRequest* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.PostPayMethodBankcardRequest";
  }
  protected:
  explicit PostPayMethodBankcardRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kUrlReturnOkFieldNumber = 1,
    kUrlReturnNoFieldNumber = 2,
  };
  // string url_return_ok = 1 [(.google.api.field_behavior) = REQUIRED];
  void clear_url_return_ok() ;
  const std::string& url_return_ok() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_url_return_ok(Arg_&& arg, Args_... args);
  std::string* mutable_url_return_ok();
  PROTOBUF_NODISCARD std::string* release_url_return_ok();
  void set_allocated_url_return_ok(std::string* ptr);

  private:
  const std::string& _internal_url_return_ok() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_url_return_ok(
      const std::string& value);
  std::string* _internal_mutable_url_return_ok();

  public:
  // string url_return_no = 2;
  void clear_url_return_no() ;
  const std::string& url_return_no() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_url_return_no(Arg_&& arg, Args_... args);
  std::string* mutable_url_return_no();
  PROTOBUF_NODISCARD std::string* release_url_return_no();
  void set_allocated_url_return_no(std::string* ptr);

  private:
  const std::string& _internal_url_return_no() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_url_return_no(
      const std::string& value);
  std::string* _internal_mutable_url_return_no();

  public:
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.PostPayMethodBankcardRequest)
 private:
  class _Internal;

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr url_return_ok_;
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr url_return_no_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class PostPayMethodBankcardResponse_Error final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.PostPayMethodBankcardResponse.Error) */ {
 public:
  inline PostPayMethodBankcardResponse_Error() : PostPayMethodBankcardResponse_Error(nullptr) {}
  ~PostPayMethodBankcardResponse_Error() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR PostPayMethodBankcardResponse_Error(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  PostPayMethodBankcardResponse_Error(const PostPayMethodBankcardResponse_Error& from);
  PostPayMethodBankcardResponse_Error(PostPayMethodBankcardResponse_Error&& from) noexcept
    : PostPayMethodBankcardResponse_Error() {
    *this = ::std::move(from);
  }

  inline PostPayMethodBankcardResponse_Error& operator=(const PostPayMethodBankcardResponse_Error& from) {
    CopyFrom(from);
    return *this;
  }
  inline PostPayMethodBankcardResponse_Error& operator=(PostPayMethodBankcardResponse_Error&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const PostPayMethodBankcardResponse_Error& default_instance() {
    return *internal_default_instance();
  }
  enum ReasonCase {
    kValidation = 1,
    REASON_NOT_SET = 0,
  };

  static inline const PostPayMethodBankcardResponse_Error* internal_default_instance() {
    return reinterpret_cast<const PostPayMethodBankcardResponse_Error*>(
               &_PostPayMethodBankcardResponse_Error_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    9;

  friend void swap(PostPayMethodBankcardResponse_Error& a, PostPayMethodBankcardResponse_Error& b) {
    a.Swap(&b);
  }
  inline void Swap(PostPayMethodBankcardResponse_Error* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PostPayMethodBankcardResponse_Error* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  PostPayMethodBankcardResponse_Error* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<PostPayMethodBankcardResponse_Error>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const PostPayMethodBankcardResponse_Error& from);
  void MergeFrom(const PostPayMethodBankcardResponse_Error& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(PostPayMethodBankcardResponse_Error* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.PostPayMethodBankcardResponse.Error";
  }
  protected:
  explicit PostPayMethodBankcardResponse_Error(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kValidationFieldNumber = 1,
  };
  // .keyapis.invoice.v1.ValidationError validation = 1;
  bool has_validation() const;
  private:
  bool _internal_has_validation() const;

  public:
  void clear_validation() ;
  const ::keyapis::invoice::v1::ValidationError& validation() const;
  PROTOBUF_NODISCARD ::keyapis::invoice::v1::ValidationError* release_validation();
  ::keyapis::invoice::v1::ValidationError* mutable_validation();
  void set_allocated_validation(::keyapis::invoice::v1::ValidationError* validation);
  private:
  const ::keyapis::invoice::v1::ValidationError& _internal_validation() const;
  ::keyapis::invoice::v1::ValidationError* _internal_mutable_validation();
  public:
  void unsafe_arena_set_allocated_validation(
      ::keyapis::invoice::v1::ValidationError* validation);
  ::keyapis::invoice::v1::ValidationError* unsafe_arena_release_validation();
  void clear_reason();
  ReasonCase reason_case() const;
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.PostPayMethodBankcardResponse.Error)
 private:
  class _Internal;
  void set_has_validation();

  inline bool has_reason() const;
  inline void clear_has_reason();

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    union ReasonUnion {
      constexpr ReasonUnion() : _constinit_{} {}
        ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_;
      ::keyapis::invoice::v1::ValidationError* validation_;
    } reason_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    ::uint32_t _oneof_case_[1];

  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class PostPayMethodBankcardResponse_RegisterData final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.PostPayMethodBankcardResponse.RegisterData) */ {
 public:
  inline PostPayMethodBankcardResponse_RegisterData() : PostPayMethodBankcardResponse_RegisterData(nullptr) {}
  ~PostPayMethodBankcardResponse_RegisterData() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR PostPayMethodBankcardResponse_RegisterData(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  PostPayMethodBankcardResponse_RegisterData(const PostPayMethodBankcardResponse_RegisterData& from);
  PostPayMethodBankcardResponse_RegisterData(PostPayMethodBankcardResponse_RegisterData&& from) noexcept
    : PostPayMethodBankcardResponse_RegisterData() {
    *this = ::std::move(from);
  }

  inline PostPayMethodBankcardResponse_RegisterData& operator=(const PostPayMethodBankcardResponse_RegisterData& from) {
    CopyFrom(from);
    return *this;
  }
  inline PostPayMethodBankcardResponse_RegisterData& operator=(PostPayMethodBankcardResponse_RegisterData&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const PostPayMethodBankcardResponse_RegisterData& default_instance() {
    return *internal_default_instance();
  }
  static inline const PostPayMethodBankcardResponse_RegisterData* internal_default_instance() {
    return reinterpret_cast<const PostPayMethodBankcardResponse_RegisterData*>(
               &_PostPayMethodBankcardResponse_RegisterData_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    10;

  friend void swap(PostPayMethodBankcardResponse_RegisterData& a, PostPayMethodBankcardResponse_RegisterData& b) {
    a.Swap(&b);
  }
  inline void Swap(PostPayMethodBankcardResponse_RegisterData* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PostPayMethodBankcardResponse_RegisterData* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  PostPayMethodBankcardResponse_RegisterData* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<PostPayMethodBankcardResponse_RegisterData>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const PostPayMethodBankcardResponse_RegisterData& from);
  void MergeFrom(const PostPayMethodBankcardResponse_RegisterData& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(PostPayMethodBankcardResponse_RegisterData* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.PostPayMethodBankcardResponse.RegisterData";
  }
  protected:
  explicit PostPayMethodBankcardResponse_RegisterData(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kReqIdFieldNumber = 1,
    kUrlRegistrationFieldNumber = 2,
  };
  // string req_id = 1;
  void clear_req_id() ;
  const std::string& req_id() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_req_id(Arg_&& arg, Args_... args);
  std::string* mutable_req_id();
  PROTOBUF_NODISCARD std::string* release_req_id();
  void set_allocated_req_id(std::string* ptr);

  private:
  const std::string& _internal_req_id() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_req_id(
      const std::string& value);
  std::string* _internal_mutable_req_id();

  public:
  // string url_registration = 2;
  void clear_url_registration() ;
  const std::string& url_registration() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_url_registration(Arg_&& arg, Args_... args);
  std::string* mutable_url_registration();
  PROTOBUF_NODISCARD std::string* release_url_registration();
  void set_allocated_url_registration(std::string* ptr);

  private:
  const std::string& _internal_url_registration() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_url_registration(
      const std::string& value);
  std::string* _internal_mutable_url_registration();

  public:
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.PostPayMethodBankcardResponse.RegisterData)
 private:
  class _Internal;

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr req_id_;
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr url_registration_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class PostPayMethodBankcardResponse final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.PostPayMethodBankcardResponse) */ {
 public:
  inline PostPayMethodBankcardResponse() : PostPayMethodBankcardResponse(nullptr) {}
  ~PostPayMethodBankcardResponse() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR PostPayMethodBankcardResponse(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  PostPayMethodBankcardResponse(const PostPayMethodBankcardResponse& from);
  PostPayMethodBankcardResponse(PostPayMethodBankcardResponse&& from) noexcept
    : PostPayMethodBankcardResponse() {
    *this = ::std::move(from);
  }

  inline PostPayMethodBankcardResponse& operator=(const PostPayMethodBankcardResponse& from) {
    CopyFrom(from);
    return *this;
  }
  inline PostPayMethodBankcardResponse& operator=(PostPayMethodBankcardResponse&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const PostPayMethodBankcardResponse& default_instance() {
    return *internal_default_instance();
  }
  enum TypeCase {
    kError = 1,
    kData = 2,
    TYPE_NOT_SET = 0,
  };

  static inline const PostPayMethodBankcardResponse* internal_default_instance() {
    return reinterpret_cast<const PostPayMethodBankcardResponse*>(
               &_PostPayMethodBankcardResponse_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    11;

  friend void swap(PostPayMethodBankcardResponse& a, PostPayMethodBankcardResponse& b) {
    a.Swap(&b);
  }
  inline void Swap(PostPayMethodBankcardResponse* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PostPayMethodBankcardResponse* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  PostPayMethodBankcardResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<PostPayMethodBankcardResponse>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const PostPayMethodBankcardResponse& from);
  void MergeFrom(const PostPayMethodBankcardResponse& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(PostPayMethodBankcardResponse* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.PostPayMethodBankcardResponse";
  }
  protected:
  explicit PostPayMethodBankcardResponse(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  typedef PostPayMethodBankcardResponse_Error Error;
  typedef PostPayMethodBankcardResponse_RegisterData RegisterData;

  // accessors -------------------------------------------------------

  enum : int {
    kErrorFieldNumber = 1,
    kDataFieldNumber = 2,
  };
  // .keyapis.invoice.v1.PostPayMethodBankcardResponse.Error error = 1;
  bool has_error() const;
  private:
  bool _internal_has_error() const;

  public:
  void clear_error() ;
  const ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error& error() const;
  PROTOBUF_NODISCARD ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* release_error();
  ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* mutable_error();
  void set_allocated_error(::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* error);
  private:
  const ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error& _internal_error() const;
  ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* _internal_mutable_error();
  public:
  void unsafe_arena_set_allocated_error(
      ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* error);
  ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* unsafe_arena_release_error();
  // .keyapis.invoice.v1.PostPayMethodBankcardResponse.RegisterData data = 2;
  bool has_data() const;
  private:
  bool _internal_has_data() const;

  public:
  void clear_data() ;
  const ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData& data() const;
  PROTOBUF_NODISCARD ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* release_data();
  ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* mutable_data();
  void set_allocated_data(::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* data);
  private:
  const ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData& _internal_data() const;
  ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* _internal_mutable_data();
  public:
  void unsafe_arena_set_allocated_data(
      ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* data);
  ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* unsafe_arena_release_data();
  void clear_type();
  TypeCase type_case() const;
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.PostPayMethodBankcardResponse)
 private:
  class _Internal;
  void set_has_error();
  void set_has_data();

  inline bool has_type() const;
  inline void clear_has_type();

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    union TypeUnion {
      constexpr TypeUnion() : _constinit_{} {}
        ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_;
      ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* error_;
      ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* data_;
    } type_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    ::uint32_t _oneof_case_[1];

  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class PostPayMethodSbpRequest final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.PostPayMethodSbpRequest) */ {
 public:
  inline PostPayMethodSbpRequest() : PostPayMethodSbpRequest(nullptr) {}
  ~PostPayMethodSbpRequest() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR PostPayMethodSbpRequest(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  PostPayMethodSbpRequest(const PostPayMethodSbpRequest& from);
  PostPayMethodSbpRequest(PostPayMethodSbpRequest&& from) noexcept
    : PostPayMethodSbpRequest() {
    *this = ::std::move(from);
  }

  inline PostPayMethodSbpRequest& operator=(const PostPayMethodSbpRequest& from) {
    CopyFrom(from);
    return *this;
  }
  inline PostPayMethodSbpRequest& operator=(PostPayMethodSbpRequest&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const PostPayMethodSbpRequest& default_instance() {
    return *internal_default_instance();
  }
  static inline const PostPayMethodSbpRequest* internal_default_instance() {
    return reinterpret_cast<const PostPayMethodSbpRequest*>(
               &_PostPayMethodSbpRequest_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    12;

  friend void swap(PostPayMethodSbpRequest& a, PostPayMethodSbpRequest& b) {
    a.Swap(&b);
  }
  inline void Swap(PostPayMethodSbpRequest* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PostPayMethodSbpRequest* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  PostPayMethodSbpRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<PostPayMethodSbpRequest>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const PostPayMethodSbpRequest& from);
  void MergeFrom(const PostPayMethodSbpRequest& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(PostPayMethodSbpRequest* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.PostPayMethodSbpRequest";
  }
  protected:
  explicit PostPayMethodSbpRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kUrlReturnOkFieldNumber = 1,
    kUrlReturnNoFieldNumber = 2,
  };
  // string url_return_ok = 1 [(.google.api.field_behavior) = REQUIRED];
  void clear_url_return_ok() ;
  const std::string& url_return_ok() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_url_return_ok(Arg_&& arg, Args_... args);
  std::string* mutable_url_return_ok();
  PROTOBUF_NODISCARD std::string* release_url_return_ok();
  void set_allocated_url_return_ok(std::string* ptr);

  private:
  const std::string& _internal_url_return_ok() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_url_return_ok(
      const std::string& value);
  std::string* _internal_mutable_url_return_ok();

  public:
  // string url_return_no = 2;
  void clear_url_return_no() ;
  const std::string& url_return_no() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_url_return_no(Arg_&& arg, Args_... args);
  std::string* mutable_url_return_no();
  PROTOBUF_NODISCARD std::string* release_url_return_no();
  void set_allocated_url_return_no(std::string* ptr);

  private:
  const std::string& _internal_url_return_no() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_url_return_no(
      const std::string& value);
  std::string* _internal_mutable_url_return_no();

  public:
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.PostPayMethodSbpRequest)
 private:
  class _Internal;

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr url_return_ok_;
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr url_return_no_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class PostPayMethodSbpResponse_Error final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.PostPayMethodSbpResponse.Error) */ {
 public:
  inline PostPayMethodSbpResponse_Error() : PostPayMethodSbpResponse_Error(nullptr) {}
  ~PostPayMethodSbpResponse_Error() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR PostPayMethodSbpResponse_Error(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  PostPayMethodSbpResponse_Error(const PostPayMethodSbpResponse_Error& from);
  PostPayMethodSbpResponse_Error(PostPayMethodSbpResponse_Error&& from) noexcept
    : PostPayMethodSbpResponse_Error() {
    *this = ::std::move(from);
  }

  inline PostPayMethodSbpResponse_Error& operator=(const PostPayMethodSbpResponse_Error& from) {
    CopyFrom(from);
    return *this;
  }
  inline PostPayMethodSbpResponse_Error& operator=(PostPayMethodSbpResponse_Error&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const PostPayMethodSbpResponse_Error& default_instance() {
    return *internal_default_instance();
  }
  enum ReasonCase {
    kValidation = 1,
    REASON_NOT_SET = 0,
  };

  static inline const PostPayMethodSbpResponse_Error* internal_default_instance() {
    return reinterpret_cast<const PostPayMethodSbpResponse_Error*>(
               &_PostPayMethodSbpResponse_Error_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    13;

  friend void swap(PostPayMethodSbpResponse_Error& a, PostPayMethodSbpResponse_Error& b) {
    a.Swap(&b);
  }
  inline void Swap(PostPayMethodSbpResponse_Error* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PostPayMethodSbpResponse_Error* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  PostPayMethodSbpResponse_Error* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<PostPayMethodSbpResponse_Error>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const PostPayMethodSbpResponse_Error& from);
  void MergeFrom(const PostPayMethodSbpResponse_Error& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(PostPayMethodSbpResponse_Error* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.PostPayMethodSbpResponse.Error";
  }
  protected:
  explicit PostPayMethodSbpResponse_Error(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kValidationFieldNumber = 1,
  };
  // .keyapis.invoice.v1.ValidationError validation = 1;
  bool has_validation() const;
  private:
  bool _internal_has_validation() const;

  public:
  void clear_validation() ;
  const ::keyapis::invoice::v1::ValidationError& validation() const;
  PROTOBUF_NODISCARD ::keyapis::invoice::v1::ValidationError* release_validation();
  ::keyapis::invoice::v1::ValidationError* mutable_validation();
  void set_allocated_validation(::keyapis::invoice::v1::ValidationError* validation);
  private:
  const ::keyapis::invoice::v1::ValidationError& _internal_validation() const;
  ::keyapis::invoice::v1::ValidationError* _internal_mutable_validation();
  public:
  void unsafe_arena_set_allocated_validation(
      ::keyapis::invoice::v1::ValidationError* validation);
  ::keyapis::invoice::v1::ValidationError* unsafe_arena_release_validation();
  void clear_reason();
  ReasonCase reason_case() const;
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.PostPayMethodSbpResponse.Error)
 private:
  class _Internal;
  void set_has_validation();

  inline bool has_reason() const;
  inline void clear_has_reason();

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    union ReasonUnion {
      constexpr ReasonUnion() : _constinit_{} {}
        ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_;
      ::keyapis::invoice::v1::ValidationError* validation_;
    } reason_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    ::uint32_t _oneof_case_[1];

  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class PostPayMethodSbpResponse_RegisterData final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData) */ {
 public:
  inline PostPayMethodSbpResponse_RegisterData() : PostPayMethodSbpResponse_RegisterData(nullptr) {}
  ~PostPayMethodSbpResponse_RegisterData() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR PostPayMethodSbpResponse_RegisterData(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  PostPayMethodSbpResponse_RegisterData(const PostPayMethodSbpResponse_RegisterData& from);
  PostPayMethodSbpResponse_RegisterData(PostPayMethodSbpResponse_RegisterData&& from) noexcept
    : PostPayMethodSbpResponse_RegisterData() {
    *this = ::std::move(from);
  }

  inline PostPayMethodSbpResponse_RegisterData& operator=(const PostPayMethodSbpResponse_RegisterData& from) {
    CopyFrom(from);
    return *this;
  }
  inline PostPayMethodSbpResponse_RegisterData& operator=(PostPayMethodSbpResponse_RegisterData&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const PostPayMethodSbpResponse_RegisterData& default_instance() {
    return *internal_default_instance();
  }
  static inline const PostPayMethodSbpResponse_RegisterData* internal_default_instance() {
    return reinterpret_cast<const PostPayMethodSbpResponse_RegisterData*>(
               &_PostPayMethodSbpResponse_RegisterData_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    14;

  friend void swap(PostPayMethodSbpResponse_RegisterData& a, PostPayMethodSbpResponse_RegisterData& b) {
    a.Swap(&b);
  }
  inline void Swap(PostPayMethodSbpResponse_RegisterData* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PostPayMethodSbpResponse_RegisterData* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  PostPayMethodSbpResponse_RegisterData* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<PostPayMethodSbpResponse_RegisterData>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const PostPayMethodSbpResponse_RegisterData& from);
  void MergeFrom(const PostPayMethodSbpResponse_RegisterData& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(PostPayMethodSbpResponse_RegisterData* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData";
  }
  protected:
  explicit PostPayMethodSbpResponse_RegisterData(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kReqIdFieldNumber = 1,
    kUrlRegistrationFieldNumber = 2,
    kSbpPayloadFieldNumber = 3,
  };
  // string req_id = 1;
  void clear_req_id() ;
  const std::string& req_id() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_req_id(Arg_&& arg, Args_... args);
  std::string* mutable_req_id();
  PROTOBUF_NODISCARD std::string* release_req_id();
  void set_allocated_req_id(std::string* ptr);

  private:
  const std::string& _internal_req_id() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_req_id(
      const std::string& value);
  std::string* _internal_mutable_req_id();

  public:
  // string url_registration = 2;
  void clear_url_registration() ;
  const std::string& url_registration() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_url_registration(Arg_&& arg, Args_... args);
  std::string* mutable_url_registration();
  PROTOBUF_NODISCARD std::string* release_url_registration();
  void set_allocated_url_registration(std::string* ptr);

  private:
  const std::string& _internal_url_registration() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_url_registration(
      const std::string& value);
  std::string* _internal_mutable_url_registration();

  public:
  // string sbp_payload = 3;
  void clear_sbp_payload() ;
  const std::string& sbp_payload() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_sbp_payload(Arg_&& arg, Args_... args);
  std::string* mutable_sbp_payload();
  PROTOBUF_NODISCARD std::string* release_sbp_payload();
  void set_allocated_sbp_payload(std::string* ptr);

  private:
  const std::string& _internal_sbp_payload() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_sbp_payload(
      const std::string& value);
  std::string* _internal_mutable_sbp_payload();

  public:
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData)
 private:
  class _Internal;

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr req_id_;
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr url_registration_;
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr sbp_payload_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class PostPayMethodSbpResponse final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.PostPayMethodSbpResponse) */ {
 public:
  inline PostPayMethodSbpResponse() : PostPayMethodSbpResponse(nullptr) {}
  ~PostPayMethodSbpResponse() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR PostPayMethodSbpResponse(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  PostPayMethodSbpResponse(const PostPayMethodSbpResponse& from);
  PostPayMethodSbpResponse(PostPayMethodSbpResponse&& from) noexcept
    : PostPayMethodSbpResponse() {
    *this = ::std::move(from);
  }

  inline PostPayMethodSbpResponse& operator=(const PostPayMethodSbpResponse& from) {
    CopyFrom(from);
    return *this;
  }
  inline PostPayMethodSbpResponse& operator=(PostPayMethodSbpResponse&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const PostPayMethodSbpResponse& default_instance() {
    return *internal_default_instance();
  }
  enum TypeCase {
    kError = 1,
    kData = 2,
    TYPE_NOT_SET = 0,
  };

  static inline const PostPayMethodSbpResponse* internal_default_instance() {
    return reinterpret_cast<const PostPayMethodSbpResponse*>(
               &_PostPayMethodSbpResponse_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    15;

  friend void swap(PostPayMethodSbpResponse& a, PostPayMethodSbpResponse& b) {
    a.Swap(&b);
  }
  inline void Swap(PostPayMethodSbpResponse* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(PostPayMethodSbpResponse* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  PostPayMethodSbpResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<PostPayMethodSbpResponse>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const PostPayMethodSbpResponse& from);
  void MergeFrom(const PostPayMethodSbpResponse& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(PostPayMethodSbpResponse* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.PostPayMethodSbpResponse";
  }
  protected:
  explicit PostPayMethodSbpResponse(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  typedef PostPayMethodSbpResponse_Error Error;
  typedef PostPayMethodSbpResponse_RegisterData RegisterData;

  // accessors -------------------------------------------------------

  enum : int {
    kErrorFieldNumber = 1,
    kDataFieldNumber = 2,
  };
  // .keyapis.invoice.v1.PostPayMethodSbpResponse.Error error = 1;
  bool has_error() const;
  private:
  bool _internal_has_error() const;

  public:
  void clear_error() ;
  const ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error& error() const;
  PROTOBUF_NODISCARD ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* release_error();
  ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* mutable_error();
  void set_allocated_error(::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* error);
  private:
  const ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error& _internal_error() const;
  ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* _internal_mutable_error();
  public:
  void unsafe_arena_set_allocated_error(
      ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* error);
  ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* unsafe_arena_release_error();
  // .keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData data = 2;
  bool has_data() const;
  private:
  bool _internal_has_data() const;

  public:
  void clear_data() ;
  const ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData& data() const;
  PROTOBUF_NODISCARD ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* release_data();
  ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* mutable_data();
  void set_allocated_data(::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* data);
  private:
  const ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData& _internal_data() const;
  ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* _internal_mutable_data();
  public:
  void unsafe_arena_set_allocated_data(
      ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* data);
  ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* unsafe_arena_release_data();
  void clear_type();
  TypeCase type_case() const;
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.PostPayMethodSbpResponse)
 private:
  class _Internal;
  void set_has_error();
  void set_has_data();

  inline bool has_type() const;
  inline void clear_has_type();

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    union TypeUnion {
      constexpr TypeUnion() : _constinit_{} {}
        ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_;
      ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* error_;
      ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* data_;
    } type_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    ::uint32_t _oneof_case_[1];

  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};// -------------------------------------------------------------------

class ValidationError final :
    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:keyapis.invoice.v1.ValidationError) */ {
 public:
  inline ValidationError() : ValidationError(nullptr) {}
  ~ValidationError() override;
  template<typename = void>
  explicit PROTOBUF_CONSTEXPR ValidationError(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);

  ValidationError(const ValidationError& from);
  ValidationError(ValidationError&& from) noexcept
    : ValidationError() {
    *this = ::std::move(from);
  }

  inline ValidationError& operator=(const ValidationError& from) {
    CopyFrom(from);
    return *this;
  }
  inline ValidationError& operator=(ValidationError&& from) noexcept {
    if (this == &from) return *this;
    if (GetOwningArena() == from.GetOwningArena()
  #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
        && GetOwningArena() != nullptr
  #endif  // !PROTOBUF_FORCE_COPY_IN_MOVE
    ) {
      InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  inline const std::string& unknown_fields() const {
    return _internal_metadata_.unknown_fields<std::string>(::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString);
  }
  inline std::string* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields<std::string>();
  }

  static const ValidationError& default_instance() {
    return *internal_default_instance();
  }
  static inline const ValidationError* internal_default_instance() {
    return reinterpret_cast<const ValidationError*>(
               &_ValidationError_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    16;

  friend void swap(ValidationError& a, ValidationError& b) {
    a.Swap(&b);
  }
  inline void Swap(ValidationError* other) {
    if (other == this) return;
  #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() != nullptr &&
        GetOwningArena() == other->GetOwningArena()) {
   #else  // PROTOBUF_FORCE_COPY_IN_SWAP
    if (GetOwningArena() == other->GetOwningArena()) {
  #endif  // !PROTOBUF_FORCE_COPY_IN_SWAP
      InternalSwap(other);
    } else {
      ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
    }
  }
  void UnsafeArenaSwap(ValidationError* other) {
    if (other == this) return;
    ABSL_DCHECK(GetOwningArena() == other->GetOwningArena());
    InternalSwap(other);
  }

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

  ValidationError* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
    return CreateMaybeMessage<ValidationError>(arena);
  }
  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)  final;
  void CopyFrom(const ValidationError& from);
  void MergeFrom(const ValidationError& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  ::size_t ByteSizeLong() const final;
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  ::uint8_t* _InternalSerialize(
      ::uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
  int GetCachedSize() const final { return _impl_._cached_size_.Get(); }

  private:
  void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  void SharedDtor();
  void SetCachedSize(int size) const;
  void InternalSwap(ValidationError* other);

  private:
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::absl::string_view FullMessageName() {
    return "keyapis.invoice.v1.ValidationError";
  }
  protected:
  explicit ValidationError(::PROTOBUF_NAMESPACE_ID::Arena* arena);
  public:

  std::string GetTypeName() const final;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kPathFieldNumber = 1,
    kMessageFieldNumber = 2,
  };
  // string path = 1 [(.google.api.field_behavior) = REQUIRED];
  void clear_path() ;
  const std::string& path() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_path(Arg_&& arg, Args_... args);
  std::string* mutable_path();
  PROTOBUF_NODISCARD std::string* release_path();
  void set_allocated_path(std::string* ptr);

  private:
  const std::string& _internal_path() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_path(
      const std::string& value);
  std::string* _internal_mutable_path();

  public:
  // string message = 2 [(.google.api.field_behavior) = REQUIRED];
  void clear_message() ;
  const std::string& message() const;




  template <typename Arg_ = const std::string&, typename... Args_>
  void set_message(Arg_&& arg, Args_... args);
  std::string* mutable_message();
  PROTOBUF_NODISCARD std::string* release_message();
  void set_allocated_message(std::string* ptr);

  private:
  const std::string& _internal_message() const;
  inline PROTOBUF_ALWAYS_INLINE void _internal_set_message(
      const std::string& value);
  std::string* _internal_mutable_message();

  public:
  // @@protoc_insertion_point(class_scope:keyapis.invoice.v1.ValidationError)
 private:
  class _Internal;

  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
  typedef void InternalArenaConstructable_;
  typedef void DestructorSkippable_;
  struct Impl_ {
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr path_;
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr message_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  };
  union { Impl_ _impl_; };
  friend struct ::TableStruct_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto;
};

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




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


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

// PayMethod

// string pay_method_id = 1 [(.google.api.field_behavior) = REQUIRED];
inline void PayMethod::clear_pay_method_id() {
  _impl_.pay_method_id_.ClearToEmpty();
}
inline const std::string& PayMethod::pay_method_id() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PayMethod.pay_method_id)
  return _internal_pay_method_id();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PayMethod::set_pay_method_id(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.pay_method_id_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PayMethod.pay_method_id)
}
inline std::string* PayMethod::mutable_pay_method_id() {
  std::string* _s = _internal_mutable_pay_method_id();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PayMethod.pay_method_id)
  return _s;
}
inline const std::string& PayMethod::_internal_pay_method_id() const {
  return _impl_.pay_method_id_.Get();
}
inline void PayMethod::_internal_set_pay_method_id(const std::string& value) {
  ;


  _impl_.pay_method_id_.Set(value, GetArenaForAllocation());
}
inline std::string* PayMethod::_internal_mutable_pay_method_id() {
  ;
  return _impl_.pay_method_id_.Mutable( GetArenaForAllocation());
}
inline std::string* PayMethod::release_pay_method_id() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PayMethod.pay_method_id)
  return _impl_.pay_method_id_.Release();
}
inline void PayMethod::set_allocated_pay_method_id(std::string* value) {
  _impl_.pay_method_id_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.pay_method_id_.IsDefault()) {
          _impl_.pay_method_id_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PayMethod.pay_method_id)
}

// int32 user_id = 2 [(.google.api.field_behavior) = REQUIRED];
inline void PayMethod::clear_user_id() {
  _impl_.user_id_ = 0;
}
inline ::int32_t PayMethod::user_id() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PayMethod.user_id)
  return _internal_user_id();
}
inline void PayMethod::set_user_id(::int32_t value) {
  _internal_set_user_id(value);
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PayMethod.user_id)
}
inline ::int32_t PayMethod::_internal_user_id() const {
  return _impl_.user_id_;
}
inline void PayMethod::_internal_set_user_id(::int32_t value) {
  ;
  _impl_.user_id_ = value;
}

// .keyapis.invoice.v1.PayMethod.Type type = 3 [(.google.api.field_behavior) = REQUIRED];
inline void PayMethod::clear_type() {
  _impl_.type_ = 0;
}
inline ::keyapis::invoice::v1::PayMethod_Type PayMethod::type() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PayMethod.type)
  return _internal_type();
}
inline void PayMethod::set_type(::keyapis::invoice::v1::PayMethod_Type value) {
   _internal_set_type(value);
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PayMethod.type)
}
inline ::keyapis::invoice::v1::PayMethod_Type PayMethod::_internal_type() const {
  return static_cast<::keyapis::invoice::v1::PayMethod_Type>(_impl_.type_);
}
inline void PayMethod::_internal_set_type(::keyapis::invoice::v1::PayMethod_Type value) {
  ;
  _impl_.type_ = value;
}

// bool is_active = 4 [(.google.api.field_behavior) = REQUIRED];
inline void PayMethod::clear_is_active() {
  _impl_.is_active_ = false;
}
inline bool PayMethod::is_active() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PayMethod.is_active)
  return _internal_is_active();
}
inline void PayMethod::set_is_active(bool value) {
  _internal_set_is_active(value);
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PayMethod.is_active)
}
inline bool PayMethod::_internal_is_active() const {
  return _impl_.is_active_;
}
inline void PayMethod::_internal_set_is_active(bool value) {
  ;
  _impl_.is_active_ = value;
}

// bool is_default = 5 [(.google.api.field_behavior) = REQUIRED];
inline void PayMethod::clear_is_default() {
  _impl_.is_default_ = false;
}
inline bool PayMethod::is_default() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PayMethod.is_default)
  return _internal_is_default();
}
inline void PayMethod::set_is_default(bool value) {
  _internal_set_is_default(value);
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PayMethod.is_default)
}
inline bool PayMethod::_internal_is_default() const {
  return _impl_.is_default_;
}
inline void PayMethod::_internal_set_is_default(bool value) {
  ;
  _impl_.is_default_ = value;
}

// string pay_method_contact = 6;
inline void PayMethod::clear_pay_method_contact() {
  _impl_.pay_method_contact_.ClearToEmpty();
}
inline const std::string& PayMethod::pay_method_contact() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PayMethod.pay_method_contact)
  return _internal_pay_method_contact();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PayMethod::set_pay_method_contact(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.pay_method_contact_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PayMethod.pay_method_contact)
}
inline std::string* PayMethod::mutable_pay_method_contact() {
  std::string* _s = _internal_mutable_pay_method_contact();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PayMethod.pay_method_contact)
  return _s;
}
inline const std::string& PayMethod::_internal_pay_method_contact() const {
  return _impl_.pay_method_contact_.Get();
}
inline void PayMethod::_internal_set_pay_method_contact(const std::string& value) {
  ;


  _impl_.pay_method_contact_.Set(value, GetArenaForAllocation());
}
inline std::string* PayMethod::_internal_mutable_pay_method_contact() {
  ;
  return _impl_.pay_method_contact_.Mutable( GetArenaForAllocation());
}
inline std::string* PayMethod::release_pay_method_contact() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PayMethod.pay_method_contact)
  return _impl_.pay_method_contact_.Release();
}
inline void PayMethod::set_allocated_pay_method_contact(std::string* value) {
  _impl_.pay_method_contact_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.pay_method_contact_.IsDefault()) {
          _impl_.pay_method_contact_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PayMethod.pay_method_contact)
}

// string pay_method_description = 7;
inline void PayMethod::clear_pay_method_description() {
  _impl_.pay_method_description_.ClearToEmpty();
}
inline const std::string& PayMethod::pay_method_description() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PayMethod.pay_method_description)
  return _internal_pay_method_description();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PayMethod::set_pay_method_description(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.pay_method_description_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PayMethod.pay_method_description)
}
inline std::string* PayMethod::mutable_pay_method_description() {
  std::string* _s = _internal_mutable_pay_method_description();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PayMethod.pay_method_description)
  return _s;
}
inline const std::string& PayMethod::_internal_pay_method_description() const {
  return _impl_.pay_method_description_.Get();
}
inline void PayMethod::_internal_set_pay_method_description(const std::string& value) {
  ;


  _impl_.pay_method_description_.Set(value, GetArenaForAllocation());
}
inline std::string* PayMethod::_internal_mutable_pay_method_description() {
  ;
  return _impl_.pay_method_description_.Mutable( GetArenaForAllocation());
}
inline std::string* PayMethod::release_pay_method_description() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PayMethod.pay_method_description)
  return _impl_.pay_method_description_.Release();
}
inline void PayMethod::set_allocated_pay_method_description(std::string* value) {
  _impl_.pay_method_description_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.pay_method_description_.IsDefault()) {
          _impl_.pay_method_description_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PayMethod.pay_method_description)
}

// string pay_method_alias = 8;
inline void PayMethod::clear_pay_method_alias() {
  _impl_.pay_method_alias_.ClearToEmpty();
}
inline const std::string& PayMethod::pay_method_alias() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PayMethod.pay_method_alias)
  return _internal_pay_method_alias();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PayMethod::set_pay_method_alias(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.pay_method_alias_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PayMethod.pay_method_alias)
}
inline std::string* PayMethod::mutable_pay_method_alias() {
  std::string* _s = _internal_mutable_pay_method_alias();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PayMethod.pay_method_alias)
  return _s;
}
inline const std::string& PayMethod::_internal_pay_method_alias() const {
  return _impl_.pay_method_alias_.Get();
}
inline void PayMethod::_internal_set_pay_method_alias(const std::string& value) {
  ;


  _impl_.pay_method_alias_.Set(value, GetArenaForAllocation());
}
inline std::string* PayMethod::_internal_mutable_pay_method_alias() {
  ;
  return _impl_.pay_method_alias_.Mutable( GetArenaForAllocation());
}
inline std::string* PayMethod::release_pay_method_alias() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PayMethod.pay_method_alias)
  return _impl_.pay_method_alias_.Release();
}
inline void PayMethod::set_allocated_pay_method_alias(std::string* value) {
  _impl_.pay_method_alias_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.pay_method_alias_.IsDefault()) {
          _impl_.pay_method_alias_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PayMethod.pay_method_alias)
}

// .keyapis.invoice.v1.PayMethod.CardType card_type = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];
inline void PayMethod::clear_card_type() {
  _impl_.card_type_ = 0;
}
inline ::keyapis::invoice::v1::PayMethod_CardType PayMethod::card_type() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PayMethod.card_type)
  return _internal_card_type();
}
inline void PayMethod::set_card_type(::keyapis::invoice::v1::PayMethod_CardType value) {
   _internal_set_card_type(value);
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PayMethod.card_type)
}
inline ::keyapis::invoice::v1::PayMethod_CardType PayMethod::_internal_card_type() const {
  return static_cast<::keyapis::invoice::v1::PayMethod_CardType>(_impl_.card_type_);
}
inline void PayMethod::_internal_set_card_type(::keyapis::invoice::v1::PayMethod_CardType value) {
  ;
  _impl_.card_type_ = value;
}

// string masked_num = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];
inline void PayMethod::clear_masked_num() {
  _impl_.masked_num_.ClearToEmpty();
}
inline const std::string& PayMethod::masked_num() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PayMethod.masked_num)
  return _internal_masked_num();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PayMethod::set_masked_num(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.masked_num_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PayMethod.masked_num)
}
inline std::string* PayMethod::mutable_masked_num() {
  std::string* _s = _internal_mutable_masked_num();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PayMethod.masked_num)
  return _s;
}
inline const std::string& PayMethod::_internal_masked_num() const {
  return _impl_.masked_num_.Get();
}
inline void PayMethod::_internal_set_masked_num(const std::string& value) {
  ;


  _impl_.masked_num_.Set(value, GetArenaForAllocation());
}
inline std::string* PayMethod::_internal_mutable_masked_num() {
  ;
  return _impl_.masked_num_.Mutable( GetArenaForAllocation());
}
inline std::string* PayMethod::release_masked_num() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PayMethod.masked_num)
  return _impl_.masked_num_.Release();
}
inline void PayMethod::set_allocated_masked_num(std::string* value) {
  _impl_.masked_num_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.masked_num_.IsDefault()) {
          _impl_.masked_num_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PayMethod.masked_num)
}

// string bank_name = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
inline void PayMethod::clear_bank_name() {
  _impl_.bank_name_.ClearToEmpty();
}
inline const std::string& PayMethod::bank_name() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PayMethod.bank_name)
  return _internal_bank_name();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PayMethod::set_bank_name(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.bank_name_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PayMethod.bank_name)
}
inline std::string* PayMethod::mutable_bank_name() {
  std::string* _s = _internal_mutable_bank_name();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PayMethod.bank_name)
  return _s;
}
inline const std::string& PayMethod::_internal_bank_name() const {
  return _impl_.bank_name_.Get();
}
inline void PayMethod::_internal_set_bank_name(const std::string& value) {
  ;


  _impl_.bank_name_.Set(value, GetArenaForAllocation());
}
inline std::string* PayMethod::_internal_mutable_bank_name() {
  ;
  return _impl_.bank_name_.Mutable( GetArenaForAllocation());
}
inline std::string* PayMethod::release_bank_name() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PayMethod.bank_name)
  return _impl_.bank_name_.Release();
}
inline void PayMethod::set_allocated_bank_name(std::string* value) {
  _impl_.bank_name_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.bank_name_.IsDefault()) {
          _impl_.bank_name_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PayMethod.bank_name)
}

// bool is_auth = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
inline void PayMethod::clear_is_auth() {
  _impl_.is_auth_ = false;
}
inline bool PayMethod::is_auth() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PayMethod.is_auth)
  return _internal_is_auth();
}
inline void PayMethod::set_is_auth(bool value) {
  _internal_set_is_auth(value);
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PayMethod.is_auth)
}
inline bool PayMethod::_internal_is_auth() const {
  return _impl_.is_auth_;
}
inline void PayMethod::_internal_set_is_auth(bool value) {
  ;
  _impl_.is_auth_ = value;
}

// .keyapis.invoice.v1.PayMethod.StatusType status_type = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
inline void PayMethod::clear_status_type() {
  _impl_.status_type_ = 0;
}
inline ::keyapis::invoice::v1::PayMethod_StatusType PayMethod::status_type() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PayMethod.status_type)
  return _internal_status_type();
}
inline void PayMethod::set_status_type(::keyapis::invoice::v1::PayMethod_StatusType value) {
   _internal_set_status_type(value);
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PayMethod.status_type)
}
inline ::keyapis::invoice::v1::PayMethod_StatusType PayMethod::_internal_status_type() const {
  return static_cast<::keyapis::invoice::v1::PayMethod_StatusType>(_impl_.status_type_);
}
inline void PayMethod::_internal_set_status_type(::keyapis::invoice::v1::PayMethod_StatusType value) {
  ;
  _impl_.status_type_ = value;
}

// .google.protobuf.Timestamp register_at = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
inline bool PayMethod::has_register_at() const {
  bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
  PROTOBUF_ASSUME(!value || _impl_.register_at_ != nullptr);
  return value;
}
inline const ::PROTOBUF_NAMESPACE_ID::Timestamp& PayMethod::_internal_register_at() const {
  const ::PROTOBUF_NAMESPACE_ID::Timestamp* p = _impl_.register_at_;
  return p != nullptr ? *p : reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Timestamp&>(
      ::PROTOBUF_NAMESPACE_ID::_Timestamp_default_instance_);
}
inline const ::PROTOBUF_NAMESPACE_ID::Timestamp& PayMethod::register_at() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PayMethod.register_at)
  return _internal_register_at();
}
inline void PayMethod::unsafe_arena_set_allocated_register_at(
    ::PROTOBUF_NAMESPACE_ID::Timestamp* register_at) {
  if (GetArenaForAllocation() == nullptr) {
    delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.register_at_);
  }
  _impl_.register_at_ = register_at;
  if (register_at) {
    _impl_._has_bits_[0] |= 0x00000001u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000001u;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:keyapis.invoice.v1.PayMethod.register_at)
}
inline ::PROTOBUF_NAMESPACE_ID::Timestamp* PayMethod::release_register_at() {
  _impl_._has_bits_[0] &= ~0x00000001u;
  ::PROTOBUF_NAMESPACE_ID::Timestamp* temp = _impl_.register_at_;
  _impl_.register_at_ = nullptr;
#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
  auto* old =  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  if (GetArenaForAllocation() == nullptr) { delete old; }
#else  // PROTOBUF_FORCE_COPY_IN_RELEASE
  if (GetArenaForAllocation() != nullptr) {
    temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
  }
#endif  // !PROTOBUF_FORCE_COPY_IN_RELEASE
  return temp;
}
inline ::PROTOBUF_NAMESPACE_ID::Timestamp* PayMethod::unsafe_arena_release_register_at() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PayMethod.register_at)
  _impl_._has_bits_[0] &= ~0x00000001u;
  ::PROTOBUF_NAMESPACE_ID::Timestamp* temp = _impl_.register_at_;
  _impl_.register_at_ = nullptr;
  return temp;
}
inline ::PROTOBUF_NAMESPACE_ID::Timestamp* PayMethod::_internal_mutable_register_at() {
  _impl_._has_bits_[0] |= 0x00000001u;
  if (_impl_.register_at_ == nullptr) {
    auto* p = CreateMaybeMessage<::PROTOBUF_NAMESPACE_ID::Timestamp>(GetArenaForAllocation());
    _impl_.register_at_ = p;
  }
  return _impl_.register_at_;
}
inline ::PROTOBUF_NAMESPACE_ID::Timestamp* PayMethod::mutable_register_at() {
  ::PROTOBUF_NAMESPACE_ID::Timestamp* _msg = _internal_mutable_register_at();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PayMethod.register_at)
  return _msg;
}
inline void PayMethod::set_allocated_register_at(::PROTOBUF_NAMESPACE_ID::Timestamp* register_at) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  if (message_arena == nullptr) {
    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.register_at_);
  }
  if (register_at) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
        ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(
                reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(register_at));
    if (message_arena != submessage_arena) {
      register_at = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, register_at, submessage_arena);
    }
    _impl_._has_bits_[0] |= 0x00000001u;
  } else {
    _impl_._has_bits_[0] &= ~0x00000001u;
  }
  _impl_.register_at_ = register_at;
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PayMethod.register_at)
}

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

// GetPayMethodListRequest

// int32 user_id = 1;
inline void GetPayMethodListRequest::clear_user_id() {
  _impl_.user_id_ = 0;
}
inline ::int32_t GetPayMethodListRequest::user_id() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.GetPayMethodListRequest.user_id)
  return _internal_user_id();
}
inline void GetPayMethodListRequest::set_user_id(::int32_t value) {
  _internal_set_user_id(value);
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.GetPayMethodListRequest.user_id)
}
inline ::int32_t GetPayMethodListRequest::_internal_user_id() const {
  return _impl_.user_id_;
}
inline void GetPayMethodListRequest::_internal_set_user_id(::int32_t value) {
  ;
  _impl_.user_id_ = value;
}

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

// GetPayMethodListResponse

// repeated .keyapis.invoice.v1.PayMethod data = 1;
inline int GetPayMethodListResponse::_internal_data_size() const {
  return _impl_.data_.size();
}
inline int GetPayMethodListResponse::data_size() const {
  return _internal_data_size();
}
inline void GetPayMethodListResponse::clear_data() {
  _internal_mutable_data()->Clear();
}
inline ::keyapis::invoice::v1::PayMethod* GetPayMethodListResponse::mutable_data(int index) {
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.GetPayMethodListResponse.data)
  return _internal_mutable_data()->Mutable(index);
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::keyapis::invoice::v1::PayMethod >*
GetPayMethodListResponse::mutable_data() {
  // @@protoc_insertion_point(field_mutable_list:keyapis.invoice.v1.GetPayMethodListResponse.data)
  return _internal_mutable_data();
}
inline const ::keyapis::invoice::v1::PayMethod& GetPayMethodListResponse::_internal_data(int index) const {
  return _internal_data().Get(index);
}
inline const ::keyapis::invoice::v1::PayMethod& GetPayMethodListResponse::data(int index) const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.GetPayMethodListResponse.data)
  return _internal_data(index);
}
inline ::keyapis::invoice::v1::PayMethod* GetPayMethodListResponse::_internal_add_data() {
  return _internal_mutable_data()->Add();
}
inline ::keyapis::invoice::v1::PayMethod* GetPayMethodListResponse::add_data() {
  ::keyapis::invoice::v1::PayMethod* _add = _internal_add_data();
  // @@protoc_insertion_point(field_add:keyapis.invoice.v1.GetPayMethodListResponse.data)
  return _add;
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::keyapis::invoice::v1::PayMethod >&
GetPayMethodListResponse::data() const {
  // @@protoc_insertion_point(field_list:keyapis.invoice.v1.GetPayMethodListResponse.data)
  return _internal_data();
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::keyapis::invoice::v1::PayMethod>&
GetPayMethodListResponse::_internal_data() const {
  return _impl_.data_;
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<::keyapis::invoice::v1::PayMethod>*
GetPayMethodListResponse::_internal_mutable_data() {
  return &_impl_.data_;
}

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

// DeletePayMethodRequest

// string pay_method_id = 1 [(.google.api.field_behavior) = REQUIRED];
inline void DeletePayMethodRequest::clear_pay_method_id() {
  _impl_.pay_method_id_.ClearToEmpty();
}
inline const std::string& DeletePayMethodRequest::pay_method_id() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.DeletePayMethodRequest.pay_method_id)
  return _internal_pay_method_id();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void DeletePayMethodRequest::set_pay_method_id(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.pay_method_id_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.DeletePayMethodRequest.pay_method_id)
}
inline std::string* DeletePayMethodRequest::mutable_pay_method_id() {
  std::string* _s = _internal_mutable_pay_method_id();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.DeletePayMethodRequest.pay_method_id)
  return _s;
}
inline const std::string& DeletePayMethodRequest::_internal_pay_method_id() const {
  return _impl_.pay_method_id_.Get();
}
inline void DeletePayMethodRequest::_internal_set_pay_method_id(const std::string& value) {
  ;


  _impl_.pay_method_id_.Set(value, GetArenaForAllocation());
}
inline std::string* DeletePayMethodRequest::_internal_mutable_pay_method_id() {
  ;
  return _impl_.pay_method_id_.Mutable( GetArenaForAllocation());
}
inline std::string* DeletePayMethodRequest::release_pay_method_id() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.DeletePayMethodRequest.pay_method_id)
  return _impl_.pay_method_id_.Release();
}
inline void DeletePayMethodRequest::set_allocated_pay_method_id(std::string* value) {
  _impl_.pay_method_id_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.pay_method_id_.IsDefault()) {
          _impl_.pay_method_id_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.DeletePayMethodRequest.pay_method_id)
}

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

// DeletePayMethodResponse

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

// PostPayMethodDefaultRequest

// string pay_method_id = 1 [(.google.api.field_behavior) = REQUIRED];
inline void PostPayMethodDefaultRequest::clear_pay_method_id() {
  _impl_.pay_method_id_.ClearToEmpty();
}
inline const std::string& PostPayMethodDefaultRequest::pay_method_id() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodDefaultRequest.pay_method_id)
  return _internal_pay_method_id();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PostPayMethodDefaultRequest::set_pay_method_id(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.pay_method_id_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PostPayMethodDefaultRequest.pay_method_id)
}
inline std::string* PostPayMethodDefaultRequest::mutable_pay_method_id() {
  std::string* _s = _internal_mutable_pay_method_id();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodDefaultRequest.pay_method_id)
  return _s;
}
inline const std::string& PostPayMethodDefaultRequest::_internal_pay_method_id() const {
  return _impl_.pay_method_id_.Get();
}
inline void PostPayMethodDefaultRequest::_internal_set_pay_method_id(const std::string& value) {
  ;


  _impl_.pay_method_id_.Set(value, GetArenaForAllocation());
}
inline std::string* PostPayMethodDefaultRequest::_internal_mutable_pay_method_id() {
  ;
  return _impl_.pay_method_id_.Mutable( GetArenaForAllocation());
}
inline std::string* PostPayMethodDefaultRequest::release_pay_method_id() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodDefaultRequest.pay_method_id)
  return _impl_.pay_method_id_.Release();
}
inline void PostPayMethodDefaultRequest::set_allocated_pay_method_id(std::string* value) {
  _impl_.pay_method_id_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.pay_method_id_.IsDefault()) {
          _impl_.pay_method_id_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PostPayMethodDefaultRequest.pay_method_id)
}

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

// PostPayMethodDefaultResponse_Error

// .keyapis.invoice.v1.ValidationError validation = 1;
inline bool PostPayMethodDefaultResponse_Error::has_validation() const {
  return reason_case() == kValidation;
}
inline bool PostPayMethodDefaultResponse_Error::_internal_has_validation() const {
  return reason_case() == kValidation;
}
inline void PostPayMethodDefaultResponse_Error::set_has_validation() {
  _impl_._oneof_case_[0] = kValidation;
}
inline void PostPayMethodDefaultResponse_Error::clear_validation() {
  if (reason_case() == kValidation) {
    if (GetArenaForAllocation() == nullptr) {
      delete _impl_.reason_.validation_;
    }
    clear_has_reason();
  }
}
inline ::keyapis::invoice::v1::ValidationError* PostPayMethodDefaultResponse_Error::release_validation() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodDefaultResponse.Error.validation)
  if (reason_case() == kValidation) {
    clear_has_reason();
    ::keyapis::invoice::v1::ValidationError* temp = _impl_.reason_.validation_;
    if (GetArenaForAllocation() != nullptr) {
      temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
    }
    _impl_.reason_.validation_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline const ::keyapis::invoice::v1::ValidationError& PostPayMethodDefaultResponse_Error::_internal_validation() const {
  return reason_case() == kValidation
      ? *_impl_.reason_.validation_
      : reinterpret_cast<::keyapis::invoice::v1::ValidationError&>(::keyapis::invoice::v1::_ValidationError_default_instance_);
}
inline const ::keyapis::invoice::v1::ValidationError& PostPayMethodDefaultResponse_Error::validation() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodDefaultResponse.Error.validation)
  return _internal_validation();
}
inline ::keyapis::invoice::v1::ValidationError* PostPayMethodDefaultResponse_Error::unsafe_arena_release_validation() {
  // @@protoc_insertion_point(field_unsafe_arena_release:keyapis.invoice.v1.PostPayMethodDefaultResponse.Error.validation)
  if (reason_case() == kValidation) {
    clear_has_reason();
    ::keyapis::invoice::v1::ValidationError* temp = _impl_.reason_.validation_;
    _impl_.reason_.validation_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline void PostPayMethodDefaultResponse_Error::unsafe_arena_set_allocated_validation(::keyapis::invoice::v1::ValidationError* validation) {
  clear_reason();
  if (validation) {
    set_has_validation();
    _impl_.reason_.validation_ = validation;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:keyapis.invoice.v1.PostPayMethodDefaultResponse.Error.validation)
}
inline ::keyapis::invoice::v1::ValidationError* PostPayMethodDefaultResponse_Error::_internal_mutable_validation() {
  if (reason_case() != kValidation) {
    clear_reason();
    set_has_validation();
    _impl_.reason_.validation_ = CreateMaybeMessage< ::keyapis::invoice::v1::ValidationError >(GetArenaForAllocation());
  }
  return _impl_.reason_.validation_;
}
inline ::keyapis::invoice::v1::ValidationError* PostPayMethodDefaultResponse_Error::mutable_validation() {
  ::keyapis::invoice::v1::ValidationError* _msg = _internal_mutable_validation();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodDefaultResponse.Error.validation)
  return _msg;
}

inline bool PostPayMethodDefaultResponse_Error::has_reason() const {
  return reason_case() != REASON_NOT_SET;
}
inline void PostPayMethodDefaultResponse_Error::clear_has_reason() {
  _impl_._oneof_case_[0] = REASON_NOT_SET;
}
inline PostPayMethodDefaultResponse_Error::ReasonCase PostPayMethodDefaultResponse_Error::reason_case() const {
  return PostPayMethodDefaultResponse_Error::ReasonCase(_impl_._oneof_case_[0]);
}
// -------------------------------------------------------------------

// PostPayMethodDefaultResponse

// .keyapis.invoice.v1.PostPayMethodDefaultResponse.Error error = 1;
inline bool PostPayMethodDefaultResponse::has_error() const {
  return type_case() == kError;
}
inline bool PostPayMethodDefaultResponse::_internal_has_error() const {
  return type_case() == kError;
}
inline void PostPayMethodDefaultResponse::set_has_error() {
  _impl_._oneof_case_[0] = kError;
}
inline void PostPayMethodDefaultResponse::clear_error() {
  if (type_case() == kError) {
    if (GetArenaForAllocation() == nullptr) {
      delete _impl_.type_.error_;
    }
    clear_has_type();
  }
}
inline ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* PostPayMethodDefaultResponse::release_error() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodDefaultResponse.error)
  if (type_case() == kError) {
    clear_has_type();
    ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* temp = _impl_.type_.error_;
    if (GetArenaForAllocation() != nullptr) {
      temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
    }
    _impl_.type_.error_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline const ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error& PostPayMethodDefaultResponse::_internal_error() const {
  return type_case() == kError
      ? *_impl_.type_.error_
      : reinterpret_cast<::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error&>(::keyapis::invoice::v1::_PostPayMethodDefaultResponse_Error_default_instance_);
}
inline const ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error& PostPayMethodDefaultResponse::error() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodDefaultResponse.error)
  return _internal_error();
}
inline ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* PostPayMethodDefaultResponse::unsafe_arena_release_error() {
  // @@protoc_insertion_point(field_unsafe_arena_release:keyapis.invoice.v1.PostPayMethodDefaultResponse.error)
  if (type_case() == kError) {
    clear_has_type();
    ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* temp = _impl_.type_.error_;
    _impl_.type_.error_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline void PostPayMethodDefaultResponse::unsafe_arena_set_allocated_error(::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* error) {
  clear_type();
  if (error) {
    set_has_error();
    _impl_.type_.error_ = error;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:keyapis.invoice.v1.PostPayMethodDefaultResponse.error)
}
inline ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* PostPayMethodDefaultResponse::_internal_mutable_error() {
  if (type_case() != kError) {
    clear_type();
    set_has_error();
    _impl_.type_.error_ = CreateMaybeMessage< ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error >(GetArenaForAllocation());
  }
  return _impl_.type_.error_;
}
inline ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* PostPayMethodDefaultResponse::mutable_error() {
  ::keyapis::invoice::v1::PostPayMethodDefaultResponse_Error* _msg = _internal_mutable_error();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodDefaultResponse.error)
  return _msg;
}

inline bool PostPayMethodDefaultResponse::has_type() const {
  return type_case() != TYPE_NOT_SET;
}
inline void PostPayMethodDefaultResponse::clear_has_type() {
  _impl_._oneof_case_[0] = TYPE_NOT_SET;
}
inline PostPayMethodDefaultResponse::TypeCase PostPayMethodDefaultResponse::type_case() const {
  return PostPayMethodDefaultResponse::TypeCase(_impl_._oneof_case_[0]);
}
// -------------------------------------------------------------------

// PostPayMethodBankcardRequest

// string url_return_ok = 1 [(.google.api.field_behavior) = REQUIRED];
inline void PostPayMethodBankcardRequest::clear_url_return_ok() {
  _impl_.url_return_ok_.ClearToEmpty();
}
inline const std::string& PostPayMethodBankcardRequest::url_return_ok() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodBankcardRequest.url_return_ok)
  return _internal_url_return_ok();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PostPayMethodBankcardRequest::set_url_return_ok(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.url_return_ok_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PostPayMethodBankcardRequest.url_return_ok)
}
inline std::string* PostPayMethodBankcardRequest::mutable_url_return_ok() {
  std::string* _s = _internal_mutable_url_return_ok();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodBankcardRequest.url_return_ok)
  return _s;
}
inline const std::string& PostPayMethodBankcardRequest::_internal_url_return_ok() const {
  return _impl_.url_return_ok_.Get();
}
inline void PostPayMethodBankcardRequest::_internal_set_url_return_ok(const std::string& value) {
  ;


  _impl_.url_return_ok_.Set(value, GetArenaForAllocation());
}
inline std::string* PostPayMethodBankcardRequest::_internal_mutable_url_return_ok() {
  ;
  return _impl_.url_return_ok_.Mutable( GetArenaForAllocation());
}
inline std::string* PostPayMethodBankcardRequest::release_url_return_ok() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodBankcardRequest.url_return_ok)
  return _impl_.url_return_ok_.Release();
}
inline void PostPayMethodBankcardRequest::set_allocated_url_return_ok(std::string* value) {
  _impl_.url_return_ok_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.url_return_ok_.IsDefault()) {
          _impl_.url_return_ok_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PostPayMethodBankcardRequest.url_return_ok)
}

// string url_return_no = 2;
inline void PostPayMethodBankcardRequest::clear_url_return_no() {
  _impl_.url_return_no_.ClearToEmpty();
}
inline const std::string& PostPayMethodBankcardRequest::url_return_no() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodBankcardRequest.url_return_no)
  return _internal_url_return_no();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PostPayMethodBankcardRequest::set_url_return_no(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.url_return_no_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PostPayMethodBankcardRequest.url_return_no)
}
inline std::string* PostPayMethodBankcardRequest::mutable_url_return_no() {
  std::string* _s = _internal_mutable_url_return_no();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodBankcardRequest.url_return_no)
  return _s;
}
inline const std::string& PostPayMethodBankcardRequest::_internal_url_return_no() const {
  return _impl_.url_return_no_.Get();
}
inline void PostPayMethodBankcardRequest::_internal_set_url_return_no(const std::string& value) {
  ;


  _impl_.url_return_no_.Set(value, GetArenaForAllocation());
}
inline std::string* PostPayMethodBankcardRequest::_internal_mutable_url_return_no() {
  ;
  return _impl_.url_return_no_.Mutable( GetArenaForAllocation());
}
inline std::string* PostPayMethodBankcardRequest::release_url_return_no() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodBankcardRequest.url_return_no)
  return _impl_.url_return_no_.Release();
}
inline void PostPayMethodBankcardRequest::set_allocated_url_return_no(std::string* value) {
  _impl_.url_return_no_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.url_return_no_.IsDefault()) {
          _impl_.url_return_no_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PostPayMethodBankcardRequest.url_return_no)
}

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

// PostPayMethodBankcardResponse_Error

// .keyapis.invoice.v1.ValidationError validation = 1;
inline bool PostPayMethodBankcardResponse_Error::has_validation() const {
  return reason_case() == kValidation;
}
inline bool PostPayMethodBankcardResponse_Error::_internal_has_validation() const {
  return reason_case() == kValidation;
}
inline void PostPayMethodBankcardResponse_Error::set_has_validation() {
  _impl_._oneof_case_[0] = kValidation;
}
inline void PostPayMethodBankcardResponse_Error::clear_validation() {
  if (reason_case() == kValidation) {
    if (GetArenaForAllocation() == nullptr) {
      delete _impl_.reason_.validation_;
    }
    clear_has_reason();
  }
}
inline ::keyapis::invoice::v1::ValidationError* PostPayMethodBankcardResponse_Error::release_validation() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodBankcardResponse.Error.validation)
  if (reason_case() == kValidation) {
    clear_has_reason();
    ::keyapis::invoice::v1::ValidationError* temp = _impl_.reason_.validation_;
    if (GetArenaForAllocation() != nullptr) {
      temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
    }
    _impl_.reason_.validation_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline const ::keyapis::invoice::v1::ValidationError& PostPayMethodBankcardResponse_Error::_internal_validation() const {
  return reason_case() == kValidation
      ? *_impl_.reason_.validation_
      : reinterpret_cast<::keyapis::invoice::v1::ValidationError&>(::keyapis::invoice::v1::_ValidationError_default_instance_);
}
inline const ::keyapis::invoice::v1::ValidationError& PostPayMethodBankcardResponse_Error::validation() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodBankcardResponse.Error.validation)
  return _internal_validation();
}
inline ::keyapis::invoice::v1::ValidationError* PostPayMethodBankcardResponse_Error::unsafe_arena_release_validation() {
  // @@protoc_insertion_point(field_unsafe_arena_release:keyapis.invoice.v1.PostPayMethodBankcardResponse.Error.validation)
  if (reason_case() == kValidation) {
    clear_has_reason();
    ::keyapis::invoice::v1::ValidationError* temp = _impl_.reason_.validation_;
    _impl_.reason_.validation_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline void PostPayMethodBankcardResponse_Error::unsafe_arena_set_allocated_validation(::keyapis::invoice::v1::ValidationError* validation) {
  clear_reason();
  if (validation) {
    set_has_validation();
    _impl_.reason_.validation_ = validation;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:keyapis.invoice.v1.PostPayMethodBankcardResponse.Error.validation)
}
inline ::keyapis::invoice::v1::ValidationError* PostPayMethodBankcardResponse_Error::_internal_mutable_validation() {
  if (reason_case() != kValidation) {
    clear_reason();
    set_has_validation();
    _impl_.reason_.validation_ = CreateMaybeMessage< ::keyapis::invoice::v1::ValidationError >(GetArenaForAllocation());
  }
  return _impl_.reason_.validation_;
}
inline ::keyapis::invoice::v1::ValidationError* PostPayMethodBankcardResponse_Error::mutable_validation() {
  ::keyapis::invoice::v1::ValidationError* _msg = _internal_mutable_validation();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodBankcardResponse.Error.validation)
  return _msg;
}

inline bool PostPayMethodBankcardResponse_Error::has_reason() const {
  return reason_case() != REASON_NOT_SET;
}
inline void PostPayMethodBankcardResponse_Error::clear_has_reason() {
  _impl_._oneof_case_[0] = REASON_NOT_SET;
}
inline PostPayMethodBankcardResponse_Error::ReasonCase PostPayMethodBankcardResponse_Error::reason_case() const {
  return PostPayMethodBankcardResponse_Error::ReasonCase(_impl_._oneof_case_[0]);
}
// -------------------------------------------------------------------

// PostPayMethodBankcardResponse_RegisterData

// string req_id = 1;
inline void PostPayMethodBankcardResponse_RegisterData::clear_req_id() {
  _impl_.req_id_.ClearToEmpty();
}
inline const std::string& PostPayMethodBankcardResponse_RegisterData::req_id() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodBankcardResponse.RegisterData.req_id)
  return _internal_req_id();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PostPayMethodBankcardResponse_RegisterData::set_req_id(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.req_id_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PostPayMethodBankcardResponse.RegisterData.req_id)
}
inline std::string* PostPayMethodBankcardResponse_RegisterData::mutable_req_id() {
  std::string* _s = _internal_mutable_req_id();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodBankcardResponse.RegisterData.req_id)
  return _s;
}
inline const std::string& PostPayMethodBankcardResponse_RegisterData::_internal_req_id() const {
  return _impl_.req_id_.Get();
}
inline void PostPayMethodBankcardResponse_RegisterData::_internal_set_req_id(const std::string& value) {
  ;


  _impl_.req_id_.Set(value, GetArenaForAllocation());
}
inline std::string* PostPayMethodBankcardResponse_RegisterData::_internal_mutable_req_id() {
  ;
  return _impl_.req_id_.Mutable( GetArenaForAllocation());
}
inline std::string* PostPayMethodBankcardResponse_RegisterData::release_req_id() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodBankcardResponse.RegisterData.req_id)
  return _impl_.req_id_.Release();
}
inline void PostPayMethodBankcardResponse_RegisterData::set_allocated_req_id(std::string* value) {
  _impl_.req_id_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.req_id_.IsDefault()) {
          _impl_.req_id_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PostPayMethodBankcardResponse.RegisterData.req_id)
}

// string url_registration = 2;
inline void PostPayMethodBankcardResponse_RegisterData::clear_url_registration() {
  _impl_.url_registration_.ClearToEmpty();
}
inline const std::string& PostPayMethodBankcardResponse_RegisterData::url_registration() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodBankcardResponse.RegisterData.url_registration)
  return _internal_url_registration();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PostPayMethodBankcardResponse_RegisterData::set_url_registration(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.url_registration_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PostPayMethodBankcardResponse.RegisterData.url_registration)
}
inline std::string* PostPayMethodBankcardResponse_RegisterData::mutable_url_registration() {
  std::string* _s = _internal_mutable_url_registration();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodBankcardResponse.RegisterData.url_registration)
  return _s;
}
inline const std::string& PostPayMethodBankcardResponse_RegisterData::_internal_url_registration() const {
  return _impl_.url_registration_.Get();
}
inline void PostPayMethodBankcardResponse_RegisterData::_internal_set_url_registration(const std::string& value) {
  ;


  _impl_.url_registration_.Set(value, GetArenaForAllocation());
}
inline std::string* PostPayMethodBankcardResponse_RegisterData::_internal_mutable_url_registration() {
  ;
  return _impl_.url_registration_.Mutable( GetArenaForAllocation());
}
inline std::string* PostPayMethodBankcardResponse_RegisterData::release_url_registration() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodBankcardResponse.RegisterData.url_registration)
  return _impl_.url_registration_.Release();
}
inline void PostPayMethodBankcardResponse_RegisterData::set_allocated_url_registration(std::string* value) {
  _impl_.url_registration_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.url_registration_.IsDefault()) {
          _impl_.url_registration_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PostPayMethodBankcardResponse.RegisterData.url_registration)
}

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

// PostPayMethodBankcardResponse

// .keyapis.invoice.v1.PostPayMethodBankcardResponse.Error error = 1;
inline bool PostPayMethodBankcardResponse::has_error() const {
  return type_case() == kError;
}
inline bool PostPayMethodBankcardResponse::_internal_has_error() const {
  return type_case() == kError;
}
inline void PostPayMethodBankcardResponse::set_has_error() {
  _impl_._oneof_case_[0] = kError;
}
inline void PostPayMethodBankcardResponse::clear_error() {
  if (type_case() == kError) {
    if (GetArenaForAllocation() == nullptr) {
      delete _impl_.type_.error_;
    }
    clear_has_type();
  }
}
inline ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* PostPayMethodBankcardResponse::release_error() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodBankcardResponse.error)
  if (type_case() == kError) {
    clear_has_type();
    ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* temp = _impl_.type_.error_;
    if (GetArenaForAllocation() != nullptr) {
      temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
    }
    _impl_.type_.error_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline const ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error& PostPayMethodBankcardResponse::_internal_error() const {
  return type_case() == kError
      ? *_impl_.type_.error_
      : reinterpret_cast<::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error&>(::keyapis::invoice::v1::_PostPayMethodBankcardResponse_Error_default_instance_);
}
inline const ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error& PostPayMethodBankcardResponse::error() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodBankcardResponse.error)
  return _internal_error();
}
inline ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* PostPayMethodBankcardResponse::unsafe_arena_release_error() {
  // @@protoc_insertion_point(field_unsafe_arena_release:keyapis.invoice.v1.PostPayMethodBankcardResponse.error)
  if (type_case() == kError) {
    clear_has_type();
    ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* temp = _impl_.type_.error_;
    _impl_.type_.error_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline void PostPayMethodBankcardResponse::unsafe_arena_set_allocated_error(::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* error) {
  clear_type();
  if (error) {
    set_has_error();
    _impl_.type_.error_ = error;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:keyapis.invoice.v1.PostPayMethodBankcardResponse.error)
}
inline ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* PostPayMethodBankcardResponse::_internal_mutable_error() {
  if (type_case() != kError) {
    clear_type();
    set_has_error();
    _impl_.type_.error_ = CreateMaybeMessage< ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error >(GetArenaForAllocation());
  }
  return _impl_.type_.error_;
}
inline ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* PostPayMethodBankcardResponse::mutable_error() {
  ::keyapis::invoice::v1::PostPayMethodBankcardResponse_Error* _msg = _internal_mutable_error();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodBankcardResponse.error)
  return _msg;
}

// .keyapis.invoice.v1.PostPayMethodBankcardResponse.RegisterData data = 2;
inline bool PostPayMethodBankcardResponse::has_data() const {
  return type_case() == kData;
}
inline bool PostPayMethodBankcardResponse::_internal_has_data() const {
  return type_case() == kData;
}
inline void PostPayMethodBankcardResponse::set_has_data() {
  _impl_._oneof_case_[0] = kData;
}
inline void PostPayMethodBankcardResponse::clear_data() {
  if (type_case() == kData) {
    if (GetArenaForAllocation() == nullptr) {
      delete _impl_.type_.data_;
    }
    clear_has_type();
  }
}
inline ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* PostPayMethodBankcardResponse::release_data() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodBankcardResponse.data)
  if (type_case() == kData) {
    clear_has_type();
    ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* temp = _impl_.type_.data_;
    if (GetArenaForAllocation() != nullptr) {
      temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
    }
    _impl_.type_.data_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline const ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData& PostPayMethodBankcardResponse::_internal_data() const {
  return type_case() == kData
      ? *_impl_.type_.data_
      : reinterpret_cast<::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData&>(::keyapis::invoice::v1::_PostPayMethodBankcardResponse_RegisterData_default_instance_);
}
inline const ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData& PostPayMethodBankcardResponse::data() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodBankcardResponse.data)
  return _internal_data();
}
inline ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* PostPayMethodBankcardResponse::unsafe_arena_release_data() {
  // @@protoc_insertion_point(field_unsafe_arena_release:keyapis.invoice.v1.PostPayMethodBankcardResponse.data)
  if (type_case() == kData) {
    clear_has_type();
    ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* temp = _impl_.type_.data_;
    _impl_.type_.data_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline void PostPayMethodBankcardResponse::unsafe_arena_set_allocated_data(::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* data) {
  clear_type();
  if (data) {
    set_has_data();
    _impl_.type_.data_ = data;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:keyapis.invoice.v1.PostPayMethodBankcardResponse.data)
}
inline ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* PostPayMethodBankcardResponse::_internal_mutable_data() {
  if (type_case() != kData) {
    clear_type();
    set_has_data();
    _impl_.type_.data_ = CreateMaybeMessage< ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData >(GetArenaForAllocation());
  }
  return _impl_.type_.data_;
}
inline ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* PostPayMethodBankcardResponse::mutable_data() {
  ::keyapis::invoice::v1::PostPayMethodBankcardResponse_RegisterData* _msg = _internal_mutable_data();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodBankcardResponse.data)
  return _msg;
}

inline bool PostPayMethodBankcardResponse::has_type() const {
  return type_case() != TYPE_NOT_SET;
}
inline void PostPayMethodBankcardResponse::clear_has_type() {
  _impl_._oneof_case_[0] = TYPE_NOT_SET;
}
inline PostPayMethodBankcardResponse::TypeCase PostPayMethodBankcardResponse::type_case() const {
  return PostPayMethodBankcardResponse::TypeCase(_impl_._oneof_case_[0]);
}
// -------------------------------------------------------------------

// PostPayMethodSbpRequest

// string url_return_ok = 1 [(.google.api.field_behavior) = REQUIRED];
inline void PostPayMethodSbpRequest::clear_url_return_ok() {
  _impl_.url_return_ok_.ClearToEmpty();
}
inline const std::string& PostPayMethodSbpRequest::url_return_ok() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodSbpRequest.url_return_ok)
  return _internal_url_return_ok();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PostPayMethodSbpRequest::set_url_return_ok(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.url_return_ok_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PostPayMethodSbpRequest.url_return_ok)
}
inline std::string* PostPayMethodSbpRequest::mutable_url_return_ok() {
  std::string* _s = _internal_mutable_url_return_ok();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodSbpRequest.url_return_ok)
  return _s;
}
inline const std::string& PostPayMethodSbpRequest::_internal_url_return_ok() const {
  return _impl_.url_return_ok_.Get();
}
inline void PostPayMethodSbpRequest::_internal_set_url_return_ok(const std::string& value) {
  ;


  _impl_.url_return_ok_.Set(value, GetArenaForAllocation());
}
inline std::string* PostPayMethodSbpRequest::_internal_mutable_url_return_ok() {
  ;
  return _impl_.url_return_ok_.Mutable( GetArenaForAllocation());
}
inline std::string* PostPayMethodSbpRequest::release_url_return_ok() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodSbpRequest.url_return_ok)
  return _impl_.url_return_ok_.Release();
}
inline void PostPayMethodSbpRequest::set_allocated_url_return_ok(std::string* value) {
  _impl_.url_return_ok_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.url_return_ok_.IsDefault()) {
          _impl_.url_return_ok_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PostPayMethodSbpRequest.url_return_ok)
}

// string url_return_no = 2;
inline void PostPayMethodSbpRequest::clear_url_return_no() {
  _impl_.url_return_no_.ClearToEmpty();
}
inline const std::string& PostPayMethodSbpRequest::url_return_no() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodSbpRequest.url_return_no)
  return _internal_url_return_no();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PostPayMethodSbpRequest::set_url_return_no(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.url_return_no_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PostPayMethodSbpRequest.url_return_no)
}
inline std::string* PostPayMethodSbpRequest::mutable_url_return_no() {
  std::string* _s = _internal_mutable_url_return_no();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodSbpRequest.url_return_no)
  return _s;
}
inline const std::string& PostPayMethodSbpRequest::_internal_url_return_no() const {
  return _impl_.url_return_no_.Get();
}
inline void PostPayMethodSbpRequest::_internal_set_url_return_no(const std::string& value) {
  ;


  _impl_.url_return_no_.Set(value, GetArenaForAllocation());
}
inline std::string* PostPayMethodSbpRequest::_internal_mutable_url_return_no() {
  ;
  return _impl_.url_return_no_.Mutable( GetArenaForAllocation());
}
inline std::string* PostPayMethodSbpRequest::release_url_return_no() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodSbpRequest.url_return_no)
  return _impl_.url_return_no_.Release();
}
inline void PostPayMethodSbpRequest::set_allocated_url_return_no(std::string* value) {
  _impl_.url_return_no_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.url_return_no_.IsDefault()) {
          _impl_.url_return_no_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PostPayMethodSbpRequest.url_return_no)
}

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

// PostPayMethodSbpResponse_Error

// .keyapis.invoice.v1.ValidationError validation = 1;
inline bool PostPayMethodSbpResponse_Error::has_validation() const {
  return reason_case() == kValidation;
}
inline bool PostPayMethodSbpResponse_Error::_internal_has_validation() const {
  return reason_case() == kValidation;
}
inline void PostPayMethodSbpResponse_Error::set_has_validation() {
  _impl_._oneof_case_[0] = kValidation;
}
inline void PostPayMethodSbpResponse_Error::clear_validation() {
  if (reason_case() == kValidation) {
    if (GetArenaForAllocation() == nullptr) {
      delete _impl_.reason_.validation_;
    }
    clear_has_reason();
  }
}
inline ::keyapis::invoice::v1::ValidationError* PostPayMethodSbpResponse_Error::release_validation() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodSbpResponse.Error.validation)
  if (reason_case() == kValidation) {
    clear_has_reason();
    ::keyapis::invoice::v1::ValidationError* temp = _impl_.reason_.validation_;
    if (GetArenaForAllocation() != nullptr) {
      temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
    }
    _impl_.reason_.validation_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline const ::keyapis::invoice::v1::ValidationError& PostPayMethodSbpResponse_Error::_internal_validation() const {
  return reason_case() == kValidation
      ? *_impl_.reason_.validation_
      : reinterpret_cast<::keyapis::invoice::v1::ValidationError&>(::keyapis::invoice::v1::_ValidationError_default_instance_);
}
inline const ::keyapis::invoice::v1::ValidationError& PostPayMethodSbpResponse_Error::validation() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodSbpResponse.Error.validation)
  return _internal_validation();
}
inline ::keyapis::invoice::v1::ValidationError* PostPayMethodSbpResponse_Error::unsafe_arena_release_validation() {
  // @@protoc_insertion_point(field_unsafe_arena_release:keyapis.invoice.v1.PostPayMethodSbpResponse.Error.validation)
  if (reason_case() == kValidation) {
    clear_has_reason();
    ::keyapis::invoice::v1::ValidationError* temp = _impl_.reason_.validation_;
    _impl_.reason_.validation_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline void PostPayMethodSbpResponse_Error::unsafe_arena_set_allocated_validation(::keyapis::invoice::v1::ValidationError* validation) {
  clear_reason();
  if (validation) {
    set_has_validation();
    _impl_.reason_.validation_ = validation;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:keyapis.invoice.v1.PostPayMethodSbpResponse.Error.validation)
}
inline ::keyapis::invoice::v1::ValidationError* PostPayMethodSbpResponse_Error::_internal_mutable_validation() {
  if (reason_case() != kValidation) {
    clear_reason();
    set_has_validation();
    _impl_.reason_.validation_ = CreateMaybeMessage< ::keyapis::invoice::v1::ValidationError >(GetArenaForAllocation());
  }
  return _impl_.reason_.validation_;
}
inline ::keyapis::invoice::v1::ValidationError* PostPayMethodSbpResponse_Error::mutable_validation() {
  ::keyapis::invoice::v1::ValidationError* _msg = _internal_mutable_validation();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodSbpResponse.Error.validation)
  return _msg;
}

inline bool PostPayMethodSbpResponse_Error::has_reason() const {
  return reason_case() != REASON_NOT_SET;
}
inline void PostPayMethodSbpResponse_Error::clear_has_reason() {
  _impl_._oneof_case_[0] = REASON_NOT_SET;
}
inline PostPayMethodSbpResponse_Error::ReasonCase PostPayMethodSbpResponse_Error::reason_case() const {
  return PostPayMethodSbpResponse_Error::ReasonCase(_impl_._oneof_case_[0]);
}
// -------------------------------------------------------------------

// PostPayMethodSbpResponse_RegisterData

// string req_id = 1;
inline void PostPayMethodSbpResponse_RegisterData::clear_req_id() {
  _impl_.req_id_.ClearToEmpty();
}
inline const std::string& PostPayMethodSbpResponse_RegisterData::req_id() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData.req_id)
  return _internal_req_id();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PostPayMethodSbpResponse_RegisterData::set_req_id(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.req_id_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData.req_id)
}
inline std::string* PostPayMethodSbpResponse_RegisterData::mutable_req_id() {
  std::string* _s = _internal_mutable_req_id();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData.req_id)
  return _s;
}
inline const std::string& PostPayMethodSbpResponse_RegisterData::_internal_req_id() const {
  return _impl_.req_id_.Get();
}
inline void PostPayMethodSbpResponse_RegisterData::_internal_set_req_id(const std::string& value) {
  ;


  _impl_.req_id_.Set(value, GetArenaForAllocation());
}
inline std::string* PostPayMethodSbpResponse_RegisterData::_internal_mutable_req_id() {
  ;
  return _impl_.req_id_.Mutable( GetArenaForAllocation());
}
inline std::string* PostPayMethodSbpResponse_RegisterData::release_req_id() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData.req_id)
  return _impl_.req_id_.Release();
}
inline void PostPayMethodSbpResponse_RegisterData::set_allocated_req_id(std::string* value) {
  _impl_.req_id_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.req_id_.IsDefault()) {
          _impl_.req_id_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData.req_id)
}

// string url_registration = 2;
inline void PostPayMethodSbpResponse_RegisterData::clear_url_registration() {
  _impl_.url_registration_.ClearToEmpty();
}
inline const std::string& PostPayMethodSbpResponse_RegisterData::url_registration() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData.url_registration)
  return _internal_url_registration();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PostPayMethodSbpResponse_RegisterData::set_url_registration(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.url_registration_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData.url_registration)
}
inline std::string* PostPayMethodSbpResponse_RegisterData::mutable_url_registration() {
  std::string* _s = _internal_mutable_url_registration();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData.url_registration)
  return _s;
}
inline const std::string& PostPayMethodSbpResponse_RegisterData::_internal_url_registration() const {
  return _impl_.url_registration_.Get();
}
inline void PostPayMethodSbpResponse_RegisterData::_internal_set_url_registration(const std::string& value) {
  ;


  _impl_.url_registration_.Set(value, GetArenaForAllocation());
}
inline std::string* PostPayMethodSbpResponse_RegisterData::_internal_mutable_url_registration() {
  ;
  return _impl_.url_registration_.Mutable( GetArenaForAllocation());
}
inline std::string* PostPayMethodSbpResponse_RegisterData::release_url_registration() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData.url_registration)
  return _impl_.url_registration_.Release();
}
inline void PostPayMethodSbpResponse_RegisterData::set_allocated_url_registration(std::string* value) {
  _impl_.url_registration_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.url_registration_.IsDefault()) {
          _impl_.url_registration_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData.url_registration)
}

// string sbp_payload = 3;
inline void PostPayMethodSbpResponse_RegisterData::clear_sbp_payload() {
  _impl_.sbp_payload_.ClearToEmpty();
}
inline const std::string& PostPayMethodSbpResponse_RegisterData::sbp_payload() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData.sbp_payload)
  return _internal_sbp_payload();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void PostPayMethodSbpResponse_RegisterData::set_sbp_payload(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.sbp_payload_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData.sbp_payload)
}
inline std::string* PostPayMethodSbpResponse_RegisterData::mutable_sbp_payload() {
  std::string* _s = _internal_mutable_sbp_payload();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData.sbp_payload)
  return _s;
}
inline const std::string& PostPayMethodSbpResponse_RegisterData::_internal_sbp_payload() const {
  return _impl_.sbp_payload_.Get();
}
inline void PostPayMethodSbpResponse_RegisterData::_internal_set_sbp_payload(const std::string& value) {
  ;


  _impl_.sbp_payload_.Set(value, GetArenaForAllocation());
}
inline std::string* PostPayMethodSbpResponse_RegisterData::_internal_mutable_sbp_payload() {
  ;
  return _impl_.sbp_payload_.Mutable( GetArenaForAllocation());
}
inline std::string* PostPayMethodSbpResponse_RegisterData::release_sbp_payload() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData.sbp_payload)
  return _impl_.sbp_payload_.Release();
}
inline void PostPayMethodSbpResponse_RegisterData::set_allocated_sbp_payload(std::string* value) {
  _impl_.sbp_payload_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.sbp_payload_.IsDefault()) {
          _impl_.sbp_payload_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData.sbp_payload)
}

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

// PostPayMethodSbpResponse

// .keyapis.invoice.v1.PostPayMethodSbpResponse.Error error = 1;
inline bool PostPayMethodSbpResponse::has_error() const {
  return type_case() == kError;
}
inline bool PostPayMethodSbpResponse::_internal_has_error() const {
  return type_case() == kError;
}
inline void PostPayMethodSbpResponse::set_has_error() {
  _impl_._oneof_case_[0] = kError;
}
inline void PostPayMethodSbpResponse::clear_error() {
  if (type_case() == kError) {
    if (GetArenaForAllocation() == nullptr) {
      delete _impl_.type_.error_;
    }
    clear_has_type();
  }
}
inline ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* PostPayMethodSbpResponse::release_error() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodSbpResponse.error)
  if (type_case() == kError) {
    clear_has_type();
    ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* temp = _impl_.type_.error_;
    if (GetArenaForAllocation() != nullptr) {
      temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
    }
    _impl_.type_.error_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline const ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error& PostPayMethodSbpResponse::_internal_error() const {
  return type_case() == kError
      ? *_impl_.type_.error_
      : reinterpret_cast<::keyapis::invoice::v1::PostPayMethodSbpResponse_Error&>(::keyapis::invoice::v1::_PostPayMethodSbpResponse_Error_default_instance_);
}
inline const ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error& PostPayMethodSbpResponse::error() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodSbpResponse.error)
  return _internal_error();
}
inline ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* PostPayMethodSbpResponse::unsafe_arena_release_error() {
  // @@protoc_insertion_point(field_unsafe_arena_release:keyapis.invoice.v1.PostPayMethodSbpResponse.error)
  if (type_case() == kError) {
    clear_has_type();
    ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* temp = _impl_.type_.error_;
    _impl_.type_.error_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline void PostPayMethodSbpResponse::unsafe_arena_set_allocated_error(::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* error) {
  clear_type();
  if (error) {
    set_has_error();
    _impl_.type_.error_ = error;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:keyapis.invoice.v1.PostPayMethodSbpResponse.error)
}
inline ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* PostPayMethodSbpResponse::_internal_mutable_error() {
  if (type_case() != kError) {
    clear_type();
    set_has_error();
    _impl_.type_.error_ = CreateMaybeMessage< ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error >(GetArenaForAllocation());
  }
  return _impl_.type_.error_;
}
inline ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* PostPayMethodSbpResponse::mutable_error() {
  ::keyapis::invoice::v1::PostPayMethodSbpResponse_Error* _msg = _internal_mutable_error();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodSbpResponse.error)
  return _msg;
}

// .keyapis.invoice.v1.PostPayMethodSbpResponse.RegisterData data = 2;
inline bool PostPayMethodSbpResponse::has_data() const {
  return type_case() == kData;
}
inline bool PostPayMethodSbpResponse::_internal_has_data() const {
  return type_case() == kData;
}
inline void PostPayMethodSbpResponse::set_has_data() {
  _impl_._oneof_case_[0] = kData;
}
inline void PostPayMethodSbpResponse::clear_data() {
  if (type_case() == kData) {
    if (GetArenaForAllocation() == nullptr) {
      delete _impl_.type_.data_;
    }
    clear_has_type();
  }
}
inline ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* PostPayMethodSbpResponse::release_data() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.PostPayMethodSbpResponse.data)
  if (type_case() == kData) {
    clear_has_type();
    ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* temp = _impl_.type_.data_;
    if (GetArenaForAllocation() != nullptr) {
      temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
    }
    _impl_.type_.data_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline const ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData& PostPayMethodSbpResponse::_internal_data() const {
  return type_case() == kData
      ? *_impl_.type_.data_
      : reinterpret_cast<::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData&>(::keyapis::invoice::v1::_PostPayMethodSbpResponse_RegisterData_default_instance_);
}
inline const ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData& PostPayMethodSbpResponse::data() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.PostPayMethodSbpResponse.data)
  return _internal_data();
}
inline ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* PostPayMethodSbpResponse::unsafe_arena_release_data() {
  // @@protoc_insertion_point(field_unsafe_arena_release:keyapis.invoice.v1.PostPayMethodSbpResponse.data)
  if (type_case() == kData) {
    clear_has_type();
    ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* temp = _impl_.type_.data_;
    _impl_.type_.data_ = nullptr;
    return temp;
  } else {
    return nullptr;
  }
}
inline void PostPayMethodSbpResponse::unsafe_arena_set_allocated_data(::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* data) {
  clear_type();
  if (data) {
    set_has_data();
    _impl_.type_.data_ = data;
  }
  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:keyapis.invoice.v1.PostPayMethodSbpResponse.data)
}
inline ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* PostPayMethodSbpResponse::_internal_mutable_data() {
  if (type_case() != kData) {
    clear_type();
    set_has_data();
    _impl_.type_.data_ = CreateMaybeMessage< ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData >(GetArenaForAllocation());
  }
  return _impl_.type_.data_;
}
inline ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* PostPayMethodSbpResponse::mutable_data() {
  ::keyapis::invoice::v1::PostPayMethodSbpResponse_RegisterData* _msg = _internal_mutable_data();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.PostPayMethodSbpResponse.data)
  return _msg;
}

inline bool PostPayMethodSbpResponse::has_type() const {
  return type_case() != TYPE_NOT_SET;
}
inline void PostPayMethodSbpResponse::clear_has_type() {
  _impl_._oneof_case_[0] = TYPE_NOT_SET;
}
inline PostPayMethodSbpResponse::TypeCase PostPayMethodSbpResponse::type_case() const {
  return PostPayMethodSbpResponse::TypeCase(_impl_._oneof_case_[0]);
}
// -------------------------------------------------------------------

// ValidationError

// string path = 1 [(.google.api.field_behavior) = REQUIRED];
inline void ValidationError::clear_path() {
  _impl_.path_.ClearToEmpty();
}
inline const std::string& ValidationError::path() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.ValidationError.path)
  return _internal_path();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void ValidationError::set_path(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.path_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.ValidationError.path)
}
inline std::string* ValidationError::mutable_path() {
  std::string* _s = _internal_mutable_path();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.ValidationError.path)
  return _s;
}
inline const std::string& ValidationError::_internal_path() const {
  return _impl_.path_.Get();
}
inline void ValidationError::_internal_set_path(const std::string& value) {
  ;


  _impl_.path_.Set(value, GetArenaForAllocation());
}
inline std::string* ValidationError::_internal_mutable_path() {
  ;
  return _impl_.path_.Mutable( GetArenaForAllocation());
}
inline std::string* ValidationError::release_path() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.ValidationError.path)
  return _impl_.path_.Release();
}
inline void ValidationError::set_allocated_path(std::string* value) {
  _impl_.path_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.path_.IsDefault()) {
          _impl_.path_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.ValidationError.path)
}

// string message = 2 [(.google.api.field_behavior) = REQUIRED];
inline void ValidationError::clear_message() {
  _impl_.message_.ClearToEmpty();
}
inline const std::string& ValidationError::message() const {
  // @@protoc_insertion_point(field_get:keyapis.invoice.v1.ValidationError.message)
  return _internal_message();
}
template <typename Arg_, typename... Args_>
inline PROTOBUF_ALWAYS_INLINE void ValidationError::set_message(Arg_&& arg,
                                                     Args_... args) {
  ;
  _impl_.message_.Set(static_cast<Arg_&&>(arg), args..., GetArenaForAllocation());
  // @@protoc_insertion_point(field_set:keyapis.invoice.v1.ValidationError.message)
}
inline std::string* ValidationError::mutable_message() {
  std::string* _s = _internal_mutable_message();
  // @@protoc_insertion_point(field_mutable:keyapis.invoice.v1.ValidationError.message)
  return _s;
}
inline const std::string& ValidationError::_internal_message() const {
  return _impl_.message_.Get();
}
inline void ValidationError::_internal_set_message(const std::string& value) {
  ;


  _impl_.message_.Set(value, GetArenaForAllocation());
}
inline std::string* ValidationError::_internal_mutable_message() {
  ;
  return _impl_.message_.Mutable( GetArenaForAllocation());
}
inline std::string* ValidationError::release_message() {
  // @@protoc_insertion_point(field_release:keyapis.invoice.v1.ValidationError.message)
  return _impl_.message_.Release();
}
inline void ValidationError::set_allocated_message(std::string* value) {
  _impl_.message_.SetAllocated(value, GetArenaForAllocation());
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
        if (_impl_.message_.IsDefault()) {
          _impl_.message_.Set("", GetArenaForAllocation());
        }
  #endif  // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  // @@protoc_insertion_point(field_set_allocated:keyapis.invoice.v1.ValidationError.message)
}

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

// @@protoc_insertion_point(namespace_scope)
}  // namespace v1
}  // namespace invoice
}  // namespace keyapis


PROTOBUF_NAMESPACE_OPEN

template <>
struct is_proto_enum<::keyapis::invoice::v1::PayMethod_Type> : std::true_type {};
template <>
struct is_proto_enum<::keyapis::invoice::v1::PayMethod_CardType> : std::true_type {};
template <>
struct is_proto_enum<::keyapis::invoice::v1::PayMethod_StatusType> : std::true_type {};

PROTOBUF_NAMESPACE_CLOSE

// @@protoc_insertion_point(global_scope)

#include "google/protobuf/port_undef.inc"

#endif  // GOOGLE_PROTOBUF_INCLUDED_keyapis_2finvoice_2fv1_2fkeyapis_5finvoice_5fpaymethod_5fv1_2eproto_2epb_2eh
