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

package com.caliverse.admin.domain.RabbitMq.message;

/**
 * <pre>
 * 인벤토리내의 아이템 변동 내용 : 패킷용
 * </pre>
 *
 * Protobuf type {@code ItemResult}
 */
public final class ItemResult extends
    com.google.protobuf.GeneratedMessageV3 implements
    // @@protoc_insertion_point(message_implements:ItemResult)
    ItemResultOrBuilder {
private static final long serialVersionUID = 0L;
  // Use ItemResult.newBuilder() to construct.
  private ItemResult(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
    super(builder);
  }
  private ItemResult() {
    deletedItems_ = com.google.protobuf.LazyStringArrayList.EMPTY;
  }

  @java.lang.Override
  @SuppressWarnings({"unused"})
  protected java.lang.Object newInstance(
      UnusedPrivateParameter unused) {
    return new ItemResult();
  }

  @java.lang.Override
  public final com.google.protobuf.UnknownFieldSet
  getUnknownFields() {
    return this.unknownFields;
  }
  public static final com.google.protobuf.Descriptors.Descriptor
      getDescriptor() {
    return com.caliverse.admin.domain.RabbitMq.message.GameDefine.internal_static_ItemResult_descriptor;
  }

  @SuppressWarnings({"rawtypes"})
  @java.lang.Override
  protected com.google.protobuf.MapField internalGetMapField(
      int number) {
    switch (number) {
      case 1:
        return internalGetUpdatedItems();
      case 2:
        return internalGetNewItems();
      case 4:
        return internalGetDeltaPerMeta();
      case 5:
        return internalGetDeltaPerItems();
      default:
        throw new RuntimeException(
            "Invalid map field number: " + number);
    }
  }
  @java.lang.Override
  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internalGetFieldAccessorTable() {
    return com.caliverse.admin.domain.RabbitMq.message.GameDefine.internal_static_ItemResult_fieldAccessorTable
        .ensureFieldAccessorsInitialized(
            com.caliverse.admin.domain.RabbitMq.message.ItemResult.class, com.caliverse.admin.domain.RabbitMq.message.ItemResult.Builder.class);
  }

  public static final int UPDATEDITEMS_FIELD_NUMBER = 1;
  private static final class UpdatedItemsDefaultEntryHolder {
    static final com.google.protobuf.MapEntry<
        java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> defaultEntry =
            com.google.protobuf.MapEntry
            .<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item>newDefaultInstance(
                com.caliverse.admin.domain.RabbitMq.message.GameDefine.internal_static_ItemResult_UpdatedItemsEntry_descriptor, 
                com.google.protobuf.WireFormat.FieldType.STRING,
                "",
                com.google.protobuf.WireFormat.FieldType.MESSAGE,
                com.caliverse.admin.domain.RabbitMq.message.Item.getDefaultInstance());
  }
  @SuppressWarnings("serial")
  private com.google.protobuf.MapField<
      java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> updatedItems_;
  private com.google.protobuf.MapField<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item>
  internalGetUpdatedItems() {
    if (updatedItems_ == null) {
      return com.google.protobuf.MapField.emptyMapField(
          UpdatedItemsDefaultEntryHolder.defaultEntry);
    }
    return updatedItems_;
  }
  public int getUpdatedItemsCount() {
    return internalGetUpdatedItems().getMap().size();
  }
  /**
   * <pre>
   * &lt;ITEM_GUID, Item&gt; : 갱신된 아이템 목록
   * </pre>
   *
   * <code>map&lt;string, .Item&gt; updatedItems = 1;</code>
   */
  @java.lang.Override
  public boolean containsUpdatedItems(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    return internalGetUpdatedItems().getMap().containsKey(key);
  }
  /**
   * Use {@link #getUpdatedItemsMap()} instead.
   */
  @java.lang.Override
  @java.lang.Deprecated
  public java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> getUpdatedItems() {
    return getUpdatedItemsMap();
  }
  /**
   * <pre>
   * &lt;ITEM_GUID, Item&gt; : 갱신된 아이템 목록
   * </pre>
   *
   * <code>map&lt;string, .Item&gt; updatedItems = 1;</code>
   */
  @java.lang.Override
  public java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> getUpdatedItemsMap() {
    return internalGetUpdatedItems().getMap();
  }
  /**
   * <pre>
   * &lt;ITEM_GUID, Item&gt; : 갱신된 아이템 목록
   * </pre>
   *
   * <code>map&lt;string, .Item&gt; updatedItems = 1;</code>
   */
  @java.lang.Override
  public /* nullable */
com.caliverse.admin.domain.RabbitMq.message.Item getUpdatedItemsOrDefault(
      java.lang.String key,
      /* nullable */
com.caliverse.admin.domain.RabbitMq.message.Item defaultValue) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> map =
        internalGetUpdatedItems().getMap();
    return map.containsKey(key) ? map.get(key) : defaultValue;
  }
  /**
   * <pre>
   * &lt;ITEM_GUID, Item&gt; : 갱신된 아이템 목록
   * </pre>
   *
   * <code>map&lt;string, .Item&gt; updatedItems = 1;</code>
   */
  @java.lang.Override
  public com.caliverse.admin.domain.RabbitMq.message.Item getUpdatedItemsOrThrow(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> map =
        internalGetUpdatedItems().getMap();
    if (!map.containsKey(key)) {
      throw new java.lang.IllegalArgumentException();
    }
    return map.get(key);
  }

  public static final int NEWITEMS_FIELD_NUMBER = 2;
  private static final class NewItemsDefaultEntryHolder {
    static final com.google.protobuf.MapEntry<
        java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> defaultEntry =
            com.google.protobuf.MapEntry
            .<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item>newDefaultInstance(
                com.caliverse.admin.domain.RabbitMq.message.GameDefine.internal_static_ItemResult_NewItemsEntry_descriptor, 
                com.google.protobuf.WireFormat.FieldType.STRING,
                "",
                com.google.protobuf.WireFormat.FieldType.MESSAGE,
                com.caliverse.admin.domain.RabbitMq.message.Item.getDefaultInstance());
  }
  @SuppressWarnings("serial")
  private com.google.protobuf.MapField<
      java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> newItems_;
  private com.google.protobuf.MapField<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item>
  internalGetNewItems() {
    if (newItems_ == null) {
      return com.google.protobuf.MapField.emptyMapField(
          NewItemsDefaultEntryHolder.defaultEntry);
    }
    return newItems_;
  }
  public int getNewItemsCount() {
    return internalGetNewItems().getMap().size();
  }
  /**
   * <pre>
   * &lt;ITEM_GUID, Item&gt; : 신규 생성된 아이템 목록
   * </pre>
   *
   * <code>map&lt;string, .Item&gt; newItems = 2;</code>
   */
  @java.lang.Override
  public boolean containsNewItems(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    return internalGetNewItems().getMap().containsKey(key);
  }
  /**
   * Use {@link #getNewItemsMap()} instead.
   */
  @java.lang.Override
  @java.lang.Deprecated
  public java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> getNewItems() {
    return getNewItemsMap();
  }
  /**
   * <pre>
   * &lt;ITEM_GUID, Item&gt; : 신규 생성된 아이템 목록
   * </pre>
   *
   * <code>map&lt;string, .Item&gt; newItems = 2;</code>
   */
  @java.lang.Override
  public java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> getNewItemsMap() {
    return internalGetNewItems().getMap();
  }
  /**
   * <pre>
   * &lt;ITEM_GUID, Item&gt; : 신규 생성된 아이템 목록
   * </pre>
   *
   * <code>map&lt;string, .Item&gt; newItems = 2;</code>
   */
  @java.lang.Override
  public /* nullable */
com.caliverse.admin.domain.RabbitMq.message.Item getNewItemsOrDefault(
      java.lang.String key,
      /* nullable */
com.caliverse.admin.domain.RabbitMq.message.Item defaultValue) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> map =
        internalGetNewItems().getMap();
    return map.containsKey(key) ? map.get(key) : defaultValue;
  }
  /**
   * <pre>
   * &lt;ITEM_GUID, Item&gt; : 신규 생성된 아이템 목록
   * </pre>
   *
   * <code>map&lt;string, .Item&gt; newItems = 2;</code>
   */
  @java.lang.Override
  public com.caliverse.admin.domain.RabbitMq.message.Item getNewItemsOrThrow(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> map =
        internalGetNewItems().getMap();
    if (!map.containsKey(key)) {
      throw new java.lang.IllegalArgumentException();
    }
    return map.get(key);
  }

  public static final int DELETEDITEMS_FIELD_NUMBER = 3;
  @SuppressWarnings("serial")
  private com.google.protobuf.LazyStringList deletedItems_;
  /**
   * <pre>
   * ITEM_GUID : 삭제된 아이템 목록
   * </pre>
   *
   * <code>repeated string deletedItems = 3;</code>
   * @return A list containing the deletedItems.
   */
  public com.google.protobuf.ProtocolStringList
      getDeletedItemsList() {
    return deletedItems_;
  }
  /**
   * <pre>
   * ITEM_GUID : 삭제된 아이템 목록
   * </pre>
   *
   * <code>repeated string deletedItems = 3;</code>
   * @return The count of deletedItems.
   */
  public int getDeletedItemsCount() {
    return deletedItems_.size();
  }
  /**
   * <pre>
   * ITEM_GUID : 삭제된 아이템 목록
   * </pre>
   *
   * <code>repeated string deletedItems = 3;</code>
   * @param index The index of the element to return.
   * @return The deletedItems at the given index.
   */
  public java.lang.String getDeletedItems(int index) {
    return deletedItems_.get(index);
  }
  /**
   * <pre>
   * ITEM_GUID : 삭제된 아이템 목록
   * </pre>
   *
   * <code>repeated string deletedItems = 3;</code>
   * @param index The index of the value to return.
   * @return The bytes of the deletedItems at the given index.
   */
  public com.google.protobuf.ByteString
      getDeletedItemsBytes(int index) {
    return deletedItems_.getByteString(index);
  }

  public static final int DELTAPERMETA_FIELD_NUMBER = 4;
  private static final class DeltaPerMetaDefaultEntryHolder {
    static final com.google.protobuf.MapEntry<
        java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount> defaultEntry =
            com.google.protobuf.MapEntry
            .<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount>newDefaultInstance(
                com.caliverse.admin.domain.RabbitMq.message.GameDefine.internal_static_ItemResult_DeltaPerMetaEntry_descriptor, 
                com.google.protobuf.WireFormat.FieldType.UINT32,
                0,
                com.google.protobuf.WireFormat.FieldType.MESSAGE,
                com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount.getDefaultInstance());
  }
  @SuppressWarnings("serial")
  private com.google.protobuf.MapField<
      java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount> deltaPerMeta_;
  private com.google.protobuf.MapField<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount>
  internalGetDeltaPerMeta() {
    if (deltaPerMeta_ == null) {
      return com.google.protobuf.MapField.emptyMapField(
          DeltaPerMetaDefaultEntryHolder.defaultEntry);
    }
    return deltaPerMeta_;
  }
  public int getDeltaPerMetaCount() {
    return internalGetDeltaPerMeta().getMap().size();
  }
  /**
   * <pre>
   * &lt;ITEM_META_ID, ItemDeltaAmount&gt; : 아이템 메타별 변화량 목록
   * </pre>
   *
   * <code>map&lt;uint32, .ItemDeltaAmount&gt; deltaPerMeta = 4;</code>
   */
  @java.lang.Override
  public boolean containsDeltaPerMeta(
      int key) {
    
    return internalGetDeltaPerMeta().getMap().containsKey(key);
  }
  /**
   * Use {@link #getDeltaPerMetaMap()} instead.
   */
  @java.lang.Override
  @java.lang.Deprecated
  public java.util.Map<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount> getDeltaPerMeta() {
    return getDeltaPerMetaMap();
  }
  /**
   * <pre>
   * &lt;ITEM_META_ID, ItemDeltaAmount&gt; : 아이템 메타별 변화량 목록
   * </pre>
   *
   * <code>map&lt;uint32, .ItemDeltaAmount&gt; deltaPerMeta = 4;</code>
   */
  @java.lang.Override
  public java.util.Map<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount> getDeltaPerMetaMap() {
    return internalGetDeltaPerMeta().getMap();
  }
  /**
   * <pre>
   * &lt;ITEM_META_ID, ItemDeltaAmount&gt; : 아이템 메타별 변화량 목록
   * </pre>
   *
   * <code>map&lt;uint32, .ItemDeltaAmount&gt; deltaPerMeta = 4;</code>
   */
  @java.lang.Override
  public /* nullable */
com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount getDeltaPerMetaOrDefault(
      int key,
      /* nullable */
com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount defaultValue) {
    
    java.util.Map<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount> map =
        internalGetDeltaPerMeta().getMap();
    return map.containsKey(key) ? map.get(key) : defaultValue;
  }
  /**
   * <pre>
   * &lt;ITEM_META_ID, ItemDeltaAmount&gt; : 아이템 메타별 변화량 목록
   * </pre>
   *
   * <code>map&lt;uint32, .ItemDeltaAmount&gt; deltaPerMeta = 4;</code>
   */
  @java.lang.Override
  public com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount getDeltaPerMetaOrThrow(
      int key) {
    
    java.util.Map<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount> map =
        internalGetDeltaPerMeta().getMap();
    if (!map.containsKey(key)) {
      throw new java.lang.IllegalArgumentException();
    }
    return map.get(key);
  }

  public static final int DELTAPERITEMS_FIELD_NUMBER = 5;
  private static final class DeltaPerItemsDefaultEntryHolder {
    static final com.google.protobuf.MapEntry<
        java.lang.String, java.lang.Integer> defaultEntry =
            com.google.protobuf.MapEntry
            .<java.lang.String, java.lang.Integer>newDefaultInstance(
                com.caliverse.admin.domain.RabbitMq.message.GameDefine.internal_static_ItemResult_DeltaPerItemsEntry_descriptor, 
                com.google.protobuf.WireFormat.FieldType.STRING,
                "",
                com.google.protobuf.WireFormat.FieldType.INT32,
                0);
  }
  @SuppressWarnings("serial")
  private com.google.protobuf.MapField<
      java.lang.String, java.lang.Integer> deltaPerItems_;
  private com.google.protobuf.MapField<java.lang.String, java.lang.Integer>
  internalGetDeltaPerItems() {
    if (deltaPerItems_ == null) {
      return com.google.protobuf.MapField.emptyMapField(
          DeltaPerItemsDefaultEntryHolder.defaultEntry);
    }
    return deltaPerItems_;
  }
  public int getDeltaPerItemsCount() {
    return internalGetDeltaPerItems().getMap().size();
  }
  /**
   * <pre>
   * &lt;ITEM_GUID, DeltaCount&gt; : 수량이 변경된 아이템 목록(삭제는 제외), 양수는 증가, 음수는 감소
   * </pre>
   *
   * <code>map&lt;string, int32&gt; deltaPerItems = 5;</code>
   */
  @java.lang.Override
  public boolean containsDeltaPerItems(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    return internalGetDeltaPerItems().getMap().containsKey(key);
  }
  /**
   * Use {@link #getDeltaPerItemsMap()} instead.
   */
  @java.lang.Override
  @java.lang.Deprecated
  public java.util.Map<java.lang.String, java.lang.Integer> getDeltaPerItems() {
    return getDeltaPerItemsMap();
  }
  /**
   * <pre>
   * &lt;ITEM_GUID, DeltaCount&gt; : 수량이 변경된 아이템 목록(삭제는 제외), 양수는 증가, 음수는 감소
   * </pre>
   *
   * <code>map&lt;string, int32&gt; deltaPerItems = 5;</code>
   */
  @java.lang.Override
  public java.util.Map<java.lang.String, java.lang.Integer> getDeltaPerItemsMap() {
    return internalGetDeltaPerItems().getMap();
  }
  /**
   * <pre>
   * &lt;ITEM_GUID, DeltaCount&gt; : 수량이 변경된 아이템 목록(삭제는 제외), 양수는 증가, 음수는 감소
   * </pre>
   *
   * <code>map&lt;string, int32&gt; deltaPerItems = 5;</code>
   */
  @java.lang.Override
  public int getDeltaPerItemsOrDefault(
      java.lang.String key,
      int defaultValue) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map<java.lang.String, java.lang.Integer> map =
        internalGetDeltaPerItems().getMap();
    return map.containsKey(key) ? map.get(key) : defaultValue;
  }
  /**
   * <pre>
   * &lt;ITEM_GUID, DeltaCount&gt; : 수량이 변경된 아이템 목록(삭제는 제외), 양수는 증가, 음수는 감소
   * </pre>
   *
   * <code>map&lt;string, int32&gt; deltaPerItems = 5;</code>
   */
  @java.lang.Override
  public int getDeltaPerItemsOrThrow(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map<java.lang.String, java.lang.Integer> map =
        internalGetDeltaPerItems().getMap();
    if (!map.containsKey(key)) {
      throw new java.lang.IllegalArgumentException();
    }
    return map.get(key);
  }

  private byte memoizedIsInitialized = -1;
  @java.lang.Override
  public final boolean isInitialized() {
    byte isInitialized = memoizedIsInitialized;
    if (isInitialized == 1) return true;
    if (isInitialized == 0) return false;

    memoizedIsInitialized = 1;
    return true;
  }

  @java.lang.Override
  public void writeTo(com.google.protobuf.CodedOutputStream output)
                      throws java.io.IOException {
    com.google.protobuf.GeneratedMessageV3
      .serializeStringMapTo(
        output,
        internalGetUpdatedItems(),
        UpdatedItemsDefaultEntryHolder.defaultEntry,
        1);
    com.google.protobuf.GeneratedMessageV3
      .serializeStringMapTo(
        output,
        internalGetNewItems(),
        NewItemsDefaultEntryHolder.defaultEntry,
        2);
    for (int i = 0; i < deletedItems_.size(); i++) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, deletedItems_.getRaw(i));
    }
    com.google.protobuf.GeneratedMessageV3
      .serializeIntegerMapTo(
        output,
        internalGetDeltaPerMeta(),
        DeltaPerMetaDefaultEntryHolder.defaultEntry,
        4);
    com.google.protobuf.GeneratedMessageV3
      .serializeStringMapTo(
        output,
        internalGetDeltaPerItems(),
        DeltaPerItemsDefaultEntryHolder.defaultEntry,
        5);
    getUnknownFields().writeTo(output);
  }

  @java.lang.Override
  public int getSerializedSize() {
    int size = memoizedSize;
    if (size != -1) return size;

    size = 0;
    for (java.util.Map.Entry<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> entry
         : internalGetUpdatedItems().getMap().entrySet()) {
      com.google.protobuf.MapEntry<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item>
      updatedItems__ = UpdatedItemsDefaultEntryHolder.defaultEntry.newBuilderForType()
          .setKey(entry.getKey())
          .setValue(entry.getValue())
          .build();
      size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, updatedItems__);
    }
    for (java.util.Map.Entry<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> entry
         : internalGetNewItems().getMap().entrySet()) {
      com.google.protobuf.MapEntry<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item>
      newItems__ = NewItemsDefaultEntryHolder.defaultEntry.newBuilderForType()
          .setKey(entry.getKey())
          .setValue(entry.getValue())
          .build();
      size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, newItems__);
    }
    {
      int dataSize = 0;
      for (int i = 0; i < deletedItems_.size(); i++) {
        dataSize += computeStringSizeNoTag(deletedItems_.getRaw(i));
      }
      size += dataSize;
      size += 1 * getDeletedItemsList().size();
    }
    for (java.util.Map.Entry<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount> entry
         : internalGetDeltaPerMeta().getMap().entrySet()) {
      com.google.protobuf.MapEntry<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount>
      deltaPerMeta__ = DeltaPerMetaDefaultEntryHolder.defaultEntry.newBuilderForType()
          .setKey(entry.getKey())
          .setValue(entry.getValue())
          .build();
      size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, deltaPerMeta__);
    }
    for (java.util.Map.Entry<java.lang.String, java.lang.Integer> entry
         : internalGetDeltaPerItems().getMap().entrySet()) {
      com.google.protobuf.MapEntry<java.lang.String, java.lang.Integer>
      deltaPerItems__ = DeltaPerItemsDefaultEntryHolder.defaultEntry.newBuilderForType()
          .setKey(entry.getKey())
          .setValue(entry.getValue())
          .build();
      size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(5, deltaPerItems__);
    }
    size += getUnknownFields().getSerializedSize();
    memoizedSize = size;
    return size;
  }

  @java.lang.Override
  public boolean equals(final java.lang.Object obj) {
    if (obj == this) {
     return true;
    }
    if (!(obj instanceof com.caliverse.admin.domain.RabbitMq.message.ItemResult)) {
      return super.equals(obj);
    }
    com.caliverse.admin.domain.RabbitMq.message.ItemResult other = (com.caliverse.admin.domain.RabbitMq.message.ItemResult) obj;

    if (!internalGetUpdatedItems().equals(
        other.internalGetUpdatedItems())) return false;
    if (!internalGetNewItems().equals(
        other.internalGetNewItems())) return false;
    if (!getDeletedItemsList()
        .equals(other.getDeletedItemsList())) return false;
    if (!internalGetDeltaPerMeta().equals(
        other.internalGetDeltaPerMeta())) return false;
    if (!internalGetDeltaPerItems().equals(
        other.internalGetDeltaPerItems())) return false;
    if (!getUnknownFields().equals(other.getUnknownFields())) return false;
    return true;
  }

  @java.lang.Override
  public int hashCode() {
    if (memoizedHashCode != 0) {
      return memoizedHashCode;
    }
    int hash = 41;
    hash = (19 * hash) + getDescriptor().hashCode();
    if (!internalGetUpdatedItems().getMap().isEmpty()) {
      hash = (37 * hash) + UPDATEDITEMS_FIELD_NUMBER;
      hash = (53 * hash) + internalGetUpdatedItems().hashCode();
    }
    if (!internalGetNewItems().getMap().isEmpty()) {
      hash = (37 * hash) + NEWITEMS_FIELD_NUMBER;
      hash = (53 * hash) + internalGetNewItems().hashCode();
    }
    if (getDeletedItemsCount() > 0) {
      hash = (37 * hash) + DELETEDITEMS_FIELD_NUMBER;
      hash = (53 * hash) + getDeletedItemsList().hashCode();
    }
    if (!internalGetDeltaPerMeta().getMap().isEmpty()) {
      hash = (37 * hash) + DELTAPERMETA_FIELD_NUMBER;
      hash = (53 * hash) + internalGetDeltaPerMeta().hashCode();
    }
    if (!internalGetDeltaPerItems().getMap().isEmpty()) {
      hash = (37 * hash) + DELTAPERITEMS_FIELD_NUMBER;
      hash = (53 * hash) + internalGetDeltaPerItems().hashCode();
    }
    hash = (29 * hash) + getUnknownFields().hashCode();
    memoizedHashCode = hash;
    return hash;
  }

  public static com.caliverse.admin.domain.RabbitMq.message.ItemResult parseFrom(
      java.nio.ByteBuffer data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static com.caliverse.admin.domain.RabbitMq.message.ItemResult parseFrom(
      java.nio.ByteBuffer data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static com.caliverse.admin.domain.RabbitMq.message.ItemResult parseFrom(
      com.google.protobuf.ByteString data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static com.caliverse.admin.domain.RabbitMq.message.ItemResult parseFrom(
      com.google.protobuf.ByteString data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static com.caliverse.admin.domain.RabbitMq.message.ItemResult parseFrom(byte[] data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static com.caliverse.admin.domain.RabbitMq.message.ItemResult parseFrom(
      byte[] data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static com.caliverse.admin.domain.RabbitMq.message.ItemResult parseFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static com.caliverse.admin.domain.RabbitMq.message.ItemResult parseFrom(
      java.io.InputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input, extensionRegistry);
  }
  public static com.caliverse.admin.domain.RabbitMq.message.ItemResult parseDelimitedFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseDelimitedWithIOException(PARSER, input);
  }
  public static com.caliverse.admin.domain.RabbitMq.message.ItemResult parseDelimitedFrom(
      java.io.InputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
  }
  public static com.caliverse.admin.domain.RabbitMq.message.ItemResult parseFrom(
      com.google.protobuf.CodedInputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static com.caliverse.admin.domain.RabbitMq.message.ItemResult parseFrom(
      com.google.protobuf.CodedInputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input, extensionRegistry);
  }

  @java.lang.Override
  public Builder newBuilderForType() { return newBuilder(); }
  public static Builder newBuilder() {
    return DEFAULT_INSTANCE.toBuilder();
  }
  public static Builder newBuilder(com.caliverse.admin.domain.RabbitMq.message.ItemResult prototype) {
    return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
  }
  @java.lang.Override
  public Builder toBuilder() {
    return this == DEFAULT_INSTANCE
        ? new Builder() : new Builder().mergeFrom(this);
  }

  @java.lang.Override
  protected Builder newBuilderForType(
      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    Builder builder = new Builder(parent);
    return builder;
  }
  /**
   * <pre>
   * 인벤토리내의 아이템 변동 내용 : 패킷용
   * </pre>
   *
   * Protobuf type {@code ItemResult}
   */
  public static final class Builder extends
      com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
      // @@protoc_insertion_point(builder_implements:ItemResult)
      com.caliverse.admin.domain.RabbitMq.message.ItemResultOrBuilder {
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.caliverse.admin.domain.RabbitMq.message.GameDefine.internal_static_ItemResult_descriptor;
    }

    @SuppressWarnings({"rawtypes"})
    protected com.google.protobuf.MapField internalGetMapField(
        int number) {
      switch (number) {
        case 1:
          return internalGetUpdatedItems();
        case 2:
          return internalGetNewItems();
        case 4:
          return internalGetDeltaPerMeta();
        case 5:
          return internalGetDeltaPerItems();
        default:
          throw new RuntimeException(
              "Invalid map field number: " + number);
      }
    }
    @SuppressWarnings({"rawtypes"})
    protected com.google.protobuf.MapField internalGetMutableMapField(
        int number) {
      switch (number) {
        case 1:
          return internalGetMutableUpdatedItems();
        case 2:
          return internalGetMutableNewItems();
        case 4:
          return internalGetMutableDeltaPerMeta();
        case 5:
          return internalGetMutableDeltaPerItems();
        default:
          throw new RuntimeException(
              "Invalid map field number: " + number);
      }
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.caliverse.admin.domain.RabbitMq.message.GameDefine.internal_static_ItemResult_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.caliverse.admin.domain.RabbitMq.message.ItemResult.class, com.caliverse.admin.domain.RabbitMq.message.ItemResult.Builder.class);
    }

    // Construct using com.caliverse.admin.domain.RabbitMq.message.ItemResult.newBuilder()
    private Builder() {

    }

    private Builder(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      super(parent);

    }
    @java.lang.Override
    public Builder clear() {
      super.clear();
      bitField0_ = 0;
      internalGetMutableUpdatedItems().clear();
      internalGetMutableNewItems().clear();
      deletedItems_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      bitField0_ = (bitField0_ & ~0x00000004);
      internalGetMutableDeltaPerMeta().clear();
      internalGetMutableDeltaPerItems().clear();
      return this;
    }

    @java.lang.Override
    public com.google.protobuf.Descriptors.Descriptor
        getDescriptorForType() {
      return com.caliverse.admin.domain.RabbitMq.message.GameDefine.internal_static_ItemResult_descriptor;
    }

    @java.lang.Override
    public com.caliverse.admin.domain.RabbitMq.message.ItemResult getDefaultInstanceForType() {
      return com.caliverse.admin.domain.RabbitMq.message.ItemResult.getDefaultInstance();
    }

    @java.lang.Override
    public com.caliverse.admin.domain.RabbitMq.message.ItemResult build() {
      com.caliverse.admin.domain.RabbitMq.message.ItemResult result = buildPartial();
      if (!result.isInitialized()) {
        throw newUninitializedMessageException(result);
      }
      return result;
    }

    @java.lang.Override
    public com.caliverse.admin.domain.RabbitMq.message.ItemResult buildPartial() {
      com.caliverse.admin.domain.RabbitMq.message.ItemResult result = new com.caliverse.admin.domain.RabbitMq.message.ItemResult(this);
      buildPartialRepeatedFields(result);
      if (bitField0_ != 0) { buildPartial0(result); }
      onBuilt();
      return result;
    }

    private void buildPartialRepeatedFields(com.caliverse.admin.domain.RabbitMq.message.ItemResult result) {
      if (((bitField0_ & 0x00000004) != 0)) {
        deletedItems_ = deletedItems_.getUnmodifiableView();
        bitField0_ = (bitField0_ & ~0x00000004);
      }
      result.deletedItems_ = deletedItems_;
    }

    private void buildPartial0(com.caliverse.admin.domain.RabbitMq.message.ItemResult result) {
      int from_bitField0_ = bitField0_;
      if (((from_bitField0_ & 0x00000001) != 0)) {
        result.updatedItems_ = internalGetUpdatedItems();
        result.updatedItems_.makeImmutable();
      }
      if (((from_bitField0_ & 0x00000002) != 0)) {
        result.newItems_ = internalGetNewItems();
        result.newItems_.makeImmutable();
      }
      if (((from_bitField0_ & 0x00000008) != 0)) {
        result.deltaPerMeta_ = internalGetDeltaPerMeta();
        result.deltaPerMeta_.makeImmutable();
      }
      if (((from_bitField0_ & 0x00000010) != 0)) {
        result.deltaPerItems_ = internalGetDeltaPerItems();
        result.deltaPerItems_.makeImmutable();
      }
    }

    @java.lang.Override
    public Builder clone() {
      return super.clone();
    }
    @java.lang.Override
    public Builder setField(
        com.google.protobuf.Descriptors.FieldDescriptor field,
        java.lang.Object value) {
      return super.setField(field, value);
    }
    @java.lang.Override
    public Builder clearField(
        com.google.protobuf.Descriptors.FieldDescriptor field) {
      return super.clearField(field);
    }
    @java.lang.Override
    public Builder clearOneof(
        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
      return super.clearOneof(oneof);
    }
    @java.lang.Override
    public Builder setRepeatedField(
        com.google.protobuf.Descriptors.FieldDescriptor field,
        int index, java.lang.Object value) {
      return super.setRepeatedField(field, index, value);
    }
    @java.lang.Override
    public Builder addRepeatedField(
        com.google.protobuf.Descriptors.FieldDescriptor field,
        java.lang.Object value) {
      return super.addRepeatedField(field, value);
    }
    @java.lang.Override
    public Builder mergeFrom(com.google.protobuf.Message other) {
      if (other instanceof com.caliverse.admin.domain.RabbitMq.message.ItemResult) {
        return mergeFrom((com.caliverse.admin.domain.RabbitMq.message.ItemResult)other);
      } else {
        super.mergeFrom(other);
        return this;
      }
    }

    public Builder mergeFrom(com.caliverse.admin.domain.RabbitMq.message.ItemResult other) {
      if (other == com.caliverse.admin.domain.RabbitMq.message.ItemResult.getDefaultInstance()) return this;
      internalGetMutableUpdatedItems().mergeFrom(
          other.internalGetUpdatedItems());
      bitField0_ |= 0x00000001;
      internalGetMutableNewItems().mergeFrom(
          other.internalGetNewItems());
      bitField0_ |= 0x00000002;
      if (!other.deletedItems_.isEmpty()) {
        if (deletedItems_.isEmpty()) {
          deletedItems_ = other.deletedItems_;
          bitField0_ = (bitField0_ & ~0x00000004);
        } else {
          ensureDeletedItemsIsMutable();
          deletedItems_.addAll(other.deletedItems_);
        }
        onChanged();
      }
      internalGetMutableDeltaPerMeta().mergeFrom(
          other.internalGetDeltaPerMeta());
      bitField0_ |= 0x00000008;
      internalGetMutableDeltaPerItems().mergeFrom(
          other.internalGetDeltaPerItems());
      bitField0_ |= 0x00000010;
      this.mergeUnknownFields(other.getUnknownFields());
      onChanged();
      return this;
    }

    @java.lang.Override
    public final boolean isInitialized() {
      return true;
    }

    @java.lang.Override
    public Builder mergeFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              com.google.protobuf.MapEntry<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item>
              updatedItems__ = input.readMessage(
                  UpdatedItemsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
              internalGetMutableUpdatedItems().getMutableMap().put(
                  updatedItems__.getKey(), updatedItems__.getValue());
              bitField0_ |= 0x00000001;
              break;
            } // case 10
            case 18: {
              com.google.protobuf.MapEntry<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item>
              newItems__ = input.readMessage(
                  NewItemsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
              internalGetMutableNewItems().getMutableMap().put(
                  newItems__.getKey(), newItems__.getValue());
              bitField0_ |= 0x00000002;
              break;
            } // case 18
            case 26: {
              java.lang.String s = input.readStringRequireUtf8();
              ensureDeletedItemsIsMutable();
              deletedItems_.add(s);
              break;
            } // case 26
            case 34: {
              com.google.protobuf.MapEntry<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount>
              deltaPerMeta__ = input.readMessage(
                  DeltaPerMetaDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
              internalGetMutableDeltaPerMeta().getMutableMap().put(
                  deltaPerMeta__.getKey(), deltaPerMeta__.getValue());
              bitField0_ |= 0x00000008;
              break;
            } // case 34
            case 42: {
              com.google.protobuf.MapEntry<java.lang.String, java.lang.Integer>
              deltaPerItems__ = input.readMessage(
                  DeltaPerItemsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
              internalGetMutableDeltaPerItems().getMutableMap().put(
                  deltaPerItems__.getKey(), deltaPerItems__.getValue());
              bitField0_ |= 0x00000010;
              break;
            } // case 42
            default: {
              if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                done = true; // was an endgroup tag
              }
              break;
            } // default:
          } // switch (tag)
        } // while (!done)
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.unwrapIOException();
      } finally {
        onChanged();
      } // finally
      return this;
    }
    private int bitField0_;

    private com.google.protobuf.MapField<
        java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> updatedItems_;
    private com.google.protobuf.MapField<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item>
        internalGetUpdatedItems() {
      if (updatedItems_ == null) {
        return com.google.protobuf.MapField.emptyMapField(
            UpdatedItemsDefaultEntryHolder.defaultEntry);
      }
      return updatedItems_;
    }
    private com.google.protobuf.MapField<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item>
        internalGetMutableUpdatedItems() {
      if (updatedItems_ == null) {
        updatedItems_ = com.google.protobuf.MapField.newMapField(
            UpdatedItemsDefaultEntryHolder.defaultEntry);
      }
      if (!updatedItems_.isMutable()) {
        updatedItems_ = updatedItems_.copy();
      }
      bitField0_ |= 0x00000001;
      onChanged();
      return updatedItems_;
    }
    public int getUpdatedItemsCount() {
      return internalGetUpdatedItems().getMap().size();
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, Item&gt; : 갱신된 아이템 목록
     * </pre>
     *
     * <code>map&lt;string, .Item&gt; updatedItems = 1;</code>
     */
    @java.lang.Override
    public boolean containsUpdatedItems(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      return internalGetUpdatedItems().getMap().containsKey(key);
    }
    /**
     * Use {@link #getUpdatedItemsMap()} instead.
     */
    @java.lang.Override
    @java.lang.Deprecated
    public java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> getUpdatedItems() {
      return getUpdatedItemsMap();
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, Item&gt; : 갱신된 아이템 목록
     * </pre>
     *
     * <code>map&lt;string, .Item&gt; updatedItems = 1;</code>
     */
    @java.lang.Override
    public java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> getUpdatedItemsMap() {
      return internalGetUpdatedItems().getMap();
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, Item&gt; : 갱신된 아이템 목록
     * </pre>
     *
     * <code>map&lt;string, .Item&gt; updatedItems = 1;</code>
     */
    @java.lang.Override
    public /* nullable */
com.caliverse.admin.domain.RabbitMq.message.Item getUpdatedItemsOrDefault(
        java.lang.String key,
        /* nullable */
com.caliverse.admin.domain.RabbitMq.message.Item defaultValue) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> map =
          internalGetUpdatedItems().getMap();
      return map.containsKey(key) ? map.get(key) : defaultValue;
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, Item&gt; : 갱신된 아이템 목록
     * </pre>
     *
     * <code>map&lt;string, .Item&gt; updatedItems = 1;</code>
     */
    @java.lang.Override
    public com.caliverse.admin.domain.RabbitMq.message.Item getUpdatedItemsOrThrow(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> map =
          internalGetUpdatedItems().getMap();
      if (!map.containsKey(key)) {
        throw new java.lang.IllegalArgumentException();
      }
      return map.get(key);
    }
    public Builder clearUpdatedItems() {
      bitField0_ = (bitField0_ & ~0x00000001);
      internalGetMutableUpdatedItems().getMutableMap()
          .clear();
      return this;
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, Item&gt; : 갱신된 아이템 목록
     * </pre>
     *
     * <code>map&lt;string, .Item&gt; updatedItems = 1;</code>
     */
    public Builder removeUpdatedItems(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      internalGetMutableUpdatedItems().getMutableMap()
          .remove(key);
      return this;
    }
    /**
     * Use alternate mutation accessors instead.
     */
    @java.lang.Deprecated
    public java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item>
        getMutableUpdatedItems() {
      bitField0_ |= 0x00000001;
      return internalGetMutableUpdatedItems().getMutableMap();
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, Item&gt; : 갱신된 아이템 목록
     * </pre>
     *
     * <code>map&lt;string, .Item&gt; updatedItems = 1;</code>
     */
    public Builder putUpdatedItems(
        java.lang.String key,
        com.caliverse.admin.domain.RabbitMq.message.Item value) {
      if (key == null) { throw new NullPointerException("map key"); }
      if (value == null) { throw new NullPointerException("map value"); }
      internalGetMutableUpdatedItems().getMutableMap()
          .put(key, value);
      bitField0_ |= 0x00000001;
      return this;
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, Item&gt; : 갱신된 아이템 목록
     * </pre>
     *
     * <code>map&lt;string, .Item&gt; updatedItems = 1;</code>
     */
    public Builder putAllUpdatedItems(
        java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> values) {
      internalGetMutableUpdatedItems().getMutableMap()
          .putAll(values);
      bitField0_ |= 0x00000001;
      return this;
    }

    private com.google.protobuf.MapField<
        java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> newItems_;
    private com.google.protobuf.MapField<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item>
        internalGetNewItems() {
      if (newItems_ == null) {
        return com.google.protobuf.MapField.emptyMapField(
            NewItemsDefaultEntryHolder.defaultEntry);
      }
      return newItems_;
    }
    private com.google.protobuf.MapField<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item>
        internalGetMutableNewItems() {
      if (newItems_ == null) {
        newItems_ = com.google.protobuf.MapField.newMapField(
            NewItemsDefaultEntryHolder.defaultEntry);
      }
      if (!newItems_.isMutable()) {
        newItems_ = newItems_.copy();
      }
      bitField0_ |= 0x00000002;
      onChanged();
      return newItems_;
    }
    public int getNewItemsCount() {
      return internalGetNewItems().getMap().size();
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, Item&gt; : 신규 생성된 아이템 목록
     * </pre>
     *
     * <code>map&lt;string, .Item&gt; newItems = 2;</code>
     */
    @java.lang.Override
    public boolean containsNewItems(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      return internalGetNewItems().getMap().containsKey(key);
    }
    /**
     * Use {@link #getNewItemsMap()} instead.
     */
    @java.lang.Override
    @java.lang.Deprecated
    public java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> getNewItems() {
      return getNewItemsMap();
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, Item&gt; : 신규 생성된 아이템 목록
     * </pre>
     *
     * <code>map&lt;string, .Item&gt; newItems = 2;</code>
     */
    @java.lang.Override
    public java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> getNewItemsMap() {
      return internalGetNewItems().getMap();
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, Item&gt; : 신규 생성된 아이템 목록
     * </pre>
     *
     * <code>map&lt;string, .Item&gt; newItems = 2;</code>
     */
    @java.lang.Override
    public /* nullable */
com.caliverse.admin.domain.RabbitMq.message.Item getNewItemsOrDefault(
        java.lang.String key,
        /* nullable */
com.caliverse.admin.domain.RabbitMq.message.Item defaultValue) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> map =
          internalGetNewItems().getMap();
      return map.containsKey(key) ? map.get(key) : defaultValue;
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, Item&gt; : 신규 생성된 아이템 목록
     * </pre>
     *
     * <code>map&lt;string, .Item&gt; newItems = 2;</code>
     */
    @java.lang.Override
    public com.caliverse.admin.domain.RabbitMq.message.Item getNewItemsOrThrow(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> map =
          internalGetNewItems().getMap();
      if (!map.containsKey(key)) {
        throw new java.lang.IllegalArgumentException();
      }
      return map.get(key);
    }
    public Builder clearNewItems() {
      bitField0_ = (bitField0_ & ~0x00000002);
      internalGetMutableNewItems().getMutableMap()
          .clear();
      return this;
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, Item&gt; : 신규 생성된 아이템 목록
     * </pre>
     *
     * <code>map&lt;string, .Item&gt; newItems = 2;</code>
     */
    public Builder removeNewItems(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      internalGetMutableNewItems().getMutableMap()
          .remove(key);
      return this;
    }
    /**
     * Use alternate mutation accessors instead.
     */
    @java.lang.Deprecated
    public java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item>
        getMutableNewItems() {
      bitField0_ |= 0x00000002;
      return internalGetMutableNewItems().getMutableMap();
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, Item&gt; : 신규 생성된 아이템 목록
     * </pre>
     *
     * <code>map&lt;string, .Item&gt; newItems = 2;</code>
     */
    public Builder putNewItems(
        java.lang.String key,
        com.caliverse.admin.domain.RabbitMq.message.Item value) {
      if (key == null) { throw new NullPointerException("map key"); }
      if (value == null) { throw new NullPointerException("map value"); }
      internalGetMutableNewItems().getMutableMap()
          .put(key, value);
      bitField0_ |= 0x00000002;
      return this;
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, Item&gt; : 신규 생성된 아이템 목록
     * </pre>
     *
     * <code>map&lt;string, .Item&gt; newItems = 2;</code>
     */
    public Builder putAllNewItems(
        java.util.Map<java.lang.String, com.caliverse.admin.domain.RabbitMq.message.Item> values) {
      internalGetMutableNewItems().getMutableMap()
          .putAll(values);
      bitField0_ |= 0x00000002;
      return this;
    }

    private com.google.protobuf.LazyStringList deletedItems_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    private void ensureDeletedItemsIsMutable() {
      if (!((bitField0_ & 0x00000004) != 0)) {
        deletedItems_ = new com.google.protobuf.LazyStringArrayList(deletedItems_);
        bitField0_ |= 0x00000004;
       }
    }
    /**
     * <pre>
     * ITEM_GUID : 삭제된 아이템 목록
     * </pre>
     *
     * <code>repeated string deletedItems = 3;</code>
     * @return A list containing the deletedItems.
     */
    public com.google.protobuf.ProtocolStringList
        getDeletedItemsList() {
      return deletedItems_.getUnmodifiableView();
    }
    /**
     * <pre>
     * ITEM_GUID : 삭제된 아이템 목록
     * </pre>
     *
     * <code>repeated string deletedItems = 3;</code>
     * @return The count of deletedItems.
     */
    public int getDeletedItemsCount() {
      return deletedItems_.size();
    }
    /**
     * <pre>
     * ITEM_GUID : 삭제된 아이템 목록
     * </pre>
     *
     * <code>repeated string deletedItems = 3;</code>
     * @param index The index of the element to return.
     * @return The deletedItems at the given index.
     */
    public java.lang.String getDeletedItems(int index) {
      return deletedItems_.get(index);
    }
    /**
     * <pre>
     * ITEM_GUID : 삭제된 아이템 목록
     * </pre>
     *
     * <code>repeated string deletedItems = 3;</code>
     * @param index The index of the value to return.
     * @return The bytes of the deletedItems at the given index.
     */
    public com.google.protobuf.ByteString
        getDeletedItemsBytes(int index) {
      return deletedItems_.getByteString(index);
    }
    /**
     * <pre>
     * ITEM_GUID : 삭제된 아이템 목록
     * </pre>
     *
     * <code>repeated string deletedItems = 3;</code>
     * @param index The index to set the value at.
     * @param value The deletedItems to set.
     * @return This builder for chaining.
     */
    public Builder setDeletedItems(
        int index, java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      ensureDeletedItemsIsMutable();
      deletedItems_.set(index, value);
      onChanged();
      return this;
    }
    /**
     * <pre>
     * ITEM_GUID : 삭제된 아이템 목록
     * </pre>
     *
     * <code>repeated string deletedItems = 3;</code>
     * @param value The deletedItems to add.
     * @return This builder for chaining.
     */
    public Builder addDeletedItems(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      ensureDeletedItemsIsMutable();
      deletedItems_.add(value);
      onChanged();
      return this;
    }
    /**
     * <pre>
     * ITEM_GUID : 삭제된 아이템 목록
     * </pre>
     *
     * <code>repeated string deletedItems = 3;</code>
     * @param values The deletedItems to add.
     * @return This builder for chaining.
     */
    public Builder addAllDeletedItems(
        java.lang.Iterable<java.lang.String> values) {
      ensureDeletedItemsIsMutable();
      com.google.protobuf.AbstractMessageLite.Builder.addAll(
          values, deletedItems_);
      onChanged();
      return this;
    }
    /**
     * <pre>
     * ITEM_GUID : 삭제된 아이템 목록
     * </pre>
     *
     * <code>repeated string deletedItems = 3;</code>
     * @return This builder for chaining.
     */
    public Builder clearDeletedItems() {
      deletedItems_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      bitField0_ = (bitField0_ & ~0x00000004);
      onChanged();
      return this;
    }
    /**
     * <pre>
     * ITEM_GUID : 삭제된 아이템 목록
     * </pre>
     *
     * <code>repeated string deletedItems = 3;</code>
     * @param value The bytes of the deletedItems to add.
     * @return This builder for chaining.
     */
    public Builder addDeletedItemsBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      ensureDeletedItemsIsMutable();
      deletedItems_.add(value);
      onChanged();
      return this;
    }

    private com.google.protobuf.MapField<
        java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount> deltaPerMeta_;
    private com.google.protobuf.MapField<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount>
        internalGetDeltaPerMeta() {
      if (deltaPerMeta_ == null) {
        return com.google.protobuf.MapField.emptyMapField(
            DeltaPerMetaDefaultEntryHolder.defaultEntry);
      }
      return deltaPerMeta_;
    }
    private com.google.protobuf.MapField<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount>
        internalGetMutableDeltaPerMeta() {
      if (deltaPerMeta_ == null) {
        deltaPerMeta_ = com.google.protobuf.MapField.newMapField(
            DeltaPerMetaDefaultEntryHolder.defaultEntry);
      }
      if (!deltaPerMeta_.isMutable()) {
        deltaPerMeta_ = deltaPerMeta_.copy();
      }
      bitField0_ |= 0x00000008;
      onChanged();
      return deltaPerMeta_;
    }
    public int getDeltaPerMetaCount() {
      return internalGetDeltaPerMeta().getMap().size();
    }
    /**
     * <pre>
     * &lt;ITEM_META_ID, ItemDeltaAmount&gt; : 아이템 메타별 변화량 목록
     * </pre>
     *
     * <code>map&lt;uint32, .ItemDeltaAmount&gt; deltaPerMeta = 4;</code>
     */
    @java.lang.Override
    public boolean containsDeltaPerMeta(
        int key) {
      
      return internalGetDeltaPerMeta().getMap().containsKey(key);
    }
    /**
     * Use {@link #getDeltaPerMetaMap()} instead.
     */
    @java.lang.Override
    @java.lang.Deprecated
    public java.util.Map<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount> getDeltaPerMeta() {
      return getDeltaPerMetaMap();
    }
    /**
     * <pre>
     * &lt;ITEM_META_ID, ItemDeltaAmount&gt; : 아이템 메타별 변화량 목록
     * </pre>
     *
     * <code>map&lt;uint32, .ItemDeltaAmount&gt; deltaPerMeta = 4;</code>
     */
    @java.lang.Override
    public java.util.Map<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount> getDeltaPerMetaMap() {
      return internalGetDeltaPerMeta().getMap();
    }
    /**
     * <pre>
     * &lt;ITEM_META_ID, ItemDeltaAmount&gt; : 아이템 메타별 변화량 목록
     * </pre>
     *
     * <code>map&lt;uint32, .ItemDeltaAmount&gt; deltaPerMeta = 4;</code>
     */
    @java.lang.Override
    public /* nullable */
com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount getDeltaPerMetaOrDefault(
        int key,
        /* nullable */
com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount defaultValue) {
      
      java.util.Map<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount> map =
          internalGetDeltaPerMeta().getMap();
      return map.containsKey(key) ? map.get(key) : defaultValue;
    }
    /**
     * <pre>
     * &lt;ITEM_META_ID, ItemDeltaAmount&gt; : 아이템 메타별 변화량 목록
     * </pre>
     *
     * <code>map&lt;uint32, .ItemDeltaAmount&gt; deltaPerMeta = 4;</code>
     */
    @java.lang.Override
    public com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount getDeltaPerMetaOrThrow(
        int key) {
      
      java.util.Map<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount> map =
          internalGetDeltaPerMeta().getMap();
      if (!map.containsKey(key)) {
        throw new java.lang.IllegalArgumentException();
      }
      return map.get(key);
    }
    public Builder clearDeltaPerMeta() {
      bitField0_ = (bitField0_ & ~0x00000008);
      internalGetMutableDeltaPerMeta().getMutableMap()
          .clear();
      return this;
    }
    /**
     * <pre>
     * &lt;ITEM_META_ID, ItemDeltaAmount&gt; : 아이템 메타별 변화량 목록
     * </pre>
     *
     * <code>map&lt;uint32, .ItemDeltaAmount&gt; deltaPerMeta = 4;</code>
     */
    public Builder removeDeltaPerMeta(
        int key) {
      
      internalGetMutableDeltaPerMeta().getMutableMap()
          .remove(key);
      return this;
    }
    /**
     * Use alternate mutation accessors instead.
     */
    @java.lang.Deprecated
    public java.util.Map<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount>
        getMutableDeltaPerMeta() {
      bitField0_ |= 0x00000008;
      return internalGetMutableDeltaPerMeta().getMutableMap();
    }
    /**
     * <pre>
     * &lt;ITEM_META_ID, ItemDeltaAmount&gt; : 아이템 메타별 변화량 목록
     * </pre>
     *
     * <code>map&lt;uint32, .ItemDeltaAmount&gt; deltaPerMeta = 4;</code>
     */
    public Builder putDeltaPerMeta(
        int key,
        com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount value) {
      
      if (value == null) { throw new NullPointerException("map value"); }
      internalGetMutableDeltaPerMeta().getMutableMap()
          .put(key, value);
      bitField0_ |= 0x00000008;
      return this;
    }
    /**
     * <pre>
     * &lt;ITEM_META_ID, ItemDeltaAmount&gt; : 아이템 메타별 변화량 목록
     * </pre>
     *
     * <code>map&lt;uint32, .ItemDeltaAmount&gt; deltaPerMeta = 4;</code>
     */
    public Builder putAllDeltaPerMeta(
        java.util.Map<java.lang.Integer, com.caliverse.admin.domain.RabbitMq.message.ItemDeltaAmount> values) {
      internalGetMutableDeltaPerMeta().getMutableMap()
          .putAll(values);
      bitField0_ |= 0x00000008;
      return this;
    }

    private com.google.protobuf.MapField<
        java.lang.String, java.lang.Integer> deltaPerItems_;
    private com.google.protobuf.MapField<java.lang.String, java.lang.Integer>
        internalGetDeltaPerItems() {
      if (deltaPerItems_ == null) {
        return com.google.protobuf.MapField.emptyMapField(
            DeltaPerItemsDefaultEntryHolder.defaultEntry);
      }
      return deltaPerItems_;
    }
    private com.google.protobuf.MapField<java.lang.String, java.lang.Integer>
        internalGetMutableDeltaPerItems() {
      if (deltaPerItems_ == null) {
        deltaPerItems_ = com.google.protobuf.MapField.newMapField(
            DeltaPerItemsDefaultEntryHolder.defaultEntry);
      }
      if (!deltaPerItems_.isMutable()) {
        deltaPerItems_ = deltaPerItems_.copy();
      }
      bitField0_ |= 0x00000010;
      onChanged();
      return deltaPerItems_;
    }
    public int getDeltaPerItemsCount() {
      return internalGetDeltaPerItems().getMap().size();
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, DeltaCount&gt; : 수량이 변경된 아이템 목록(삭제는 제외), 양수는 증가, 음수는 감소
     * </pre>
     *
     * <code>map&lt;string, int32&gt; deltaPerItems = 5;</code>
     */
    @java.lang.Override
    public boolean containsDeltaPerItems(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      return internalGetDeltaPerItems().getMap().containsKey(key);
    }
    /**
     * Use {@link #getDeltaPerItemsMap()} instead.
     */
    @java.lang.Override
    @java.lang.Deprecated
    public java.util.Map<java.lang.String, java.lang.Integer> getDeltaPerItems() {
      return getDeltaPerItemsMap();
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, DeltaCount&gt; : 수량이 변경된 아이템 목록(삭제는 제외), 양수는 증가, 음수는 감소
     * </pre>
     *
     * <code>map&lt;string, int32&gt; deltaPerItems = 5;</code>
     */
    @java.lang.Override
    public java.util.Map<java.lang.String, java.lang.Integer> getDeltaPerItemsMap() {
      return internalGetDeltaPerItems().getMap();
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, DeltaCount&gt; : 수량이 변경된 아이템 목록(삭제는 제외), 양수는 증가, 음수는 감소
     * </pre>
     *
     * <code>map&lt;string, int32&gt; deltaPerItems = 5;</code>
     */
    @java.lang.Override
    public int getDeltaPerItemsOrDefault(
        java.lang.String key,
        int defaultValue) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map<java.lang.String, java.lang.Integer> map =
          internalGetDeltaPerItems().getMap();
      return map.containsKey(key) ? map.get(key) : defaultValue;
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, DeltaCount&gt; : 수량이 변경된 아이템 목록(삭제는 제외), 양수는 증가, 음수는 감소
     * </pre>
     *
     * <code>map&lt;string, int32&gt; deltaPerItems = 5;</code>
     */
    @java.lang.Override
    public int getDeltaPerItemsOrThrow(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map<java.lang.String, java.lang.Integer> map =
          internalGetDeltaPerItems().getMap();
      if (!map.containsKey(key)) {
        throw new java.lang.IllegalArgumentException();
      }
      return map.get(key);
    }
    public Builder clearDeltaPerItems() {
      bitField0_ = (bitField0_ & ~0x00000010);
      internalGetMutableDeltaPerItems().getMutableMap()
          .clear();
      return this;
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, DeltaCount&gt; : 수량이 변경된 아이템 목록(삭제는 제외), 양수는 증가, 음수는 감소
     * </pre>
     *
     * <code>map&lt;string, int32&gt; deltaPerItems = 5;</code>
     */
    public Builder removeDeltaPerItems(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      internalGetMutableDeltaPerItems().getMutableMap()
          .remove(key);
      return this;
    }
    /**
     * Use alternate mutation accessors instead.
     */
    @java.lang.Deprecated
    public java.util.Map<java.lang.String, java.lang.Integer>
        getMutableDeltaPerItems() {
      bitField0_ |= 0x00000010;
      return internalGetMutableDeltaPerItems().getMutableMap();
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, DeltaCount&gt; : 수량이 변경된 아이템 목록(삭제는 제외), 양수는 증가, 음수는 감소
     * </pre>
     *
     * <code>map&lt;string, int32&gt; deltaPerItems = 5;</code>
     */
    public Builder putDeltaPerItems(
        java.lang.String key,
        int value) {
      if (key == null) { throw new NullPointerException("map key"); }
      
      internalGetMutableDeltaPerItems().getMutableMap()
          .put(key, value);
      bitField0_ |= 0x00000010;
      return this;
    }
    /**
     * <pre>
     * &lt;ITEM_GUID, DeltaCount&gt; : 수량이 변경된 아이템 목록(삭제는 제외), 양수는 증가, 음수는 감소
     * </pre>
     *
     * <code>map&lt;string, int32&gt; deltaPerItems = 5;</code>
     */
    public Builder putAllDeltaPerItems(
        java.util.Map<java.lang.String, java.lang.Integer> values) {
      internalGetMutableDeltaPerItems().getMutableMap()
          .putAll(values);
      bitField0_ |= 0x00000010;
      return this;
    }
    @java.lang.Override
    public final Builder setUnknownFields(
        final com.google.protobuf.UnknownFieldSet unknownFields) {
      return super.setUnknownFields(unknownFields);
    }

    @java.lang.Override
    public final Builder mergeUnknownFields(
        final com.google.protobuf.UnknownFieldSet unknownFields) {
      return super.mergeUnknownFields(unknownFields);
    }


    // @@protoc_insertion_point(builder_scope:ItemResult)
  }

  // @@protoc_insertion_point(class_scope:ItemResult)
  private static final com.caliverse.admin.domain.RabbitMq.message.ItemResult DEFAULT_INSTANCE;
  static {
    DEFAULT_INSTANCE = new com.caliverse.admin.domain.RabbitMq.message.ItemResult();
  }

  public static com.caliverse.admin.domain.RabbitMq.message.ItemResult getDefaultInstance() {
    return DEFAULT_INSTANCE;
  }

  private static final com.google.protobuf.Parser<ItemResult>
      PARSER = new com.google.protobuf.AbstractParser<ItemResult>() {
    @java.lang.Override
    public ItemResult parsePartialFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      Builder builder = newBuilder();
      try {
        builder.mergeFrom(input, extensionRegistry);
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(builder.buildPartial());
      } catch (com.google.protobuf.UninitializedMessageException e) {
        throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(e)
            .setUnfinishedMessage(builder.buildPartial());
      }
      return builder.buildPartial();
    }
  };

  public static com.google.protobuf.Parser<ItemResult> parser() {
    return PARSER;
  }

  @java.lang.Override
  public com.google.protobuf.Parser<ItemResult> getParserForType() {
    return PARSER;
  }

  @java.lang.Override
  public com.caliverse.admin.domain.RabbitMq.message.ItemResult getDefaultInstanceForType() {
    return DEFAULT_INSTANCE;
  }

}

