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

package com.zfoo.protocol.field.packet;

public final class FieldProtobufObject {
    private FieldProtobufObject() {
    }

    public static void registerAllExtensions(
            com.google.protobuf.ExtensionRegistryLite registry) {
    }

    public static void registerAllExtensions(
            com.google.protobuf.ExtensionRegistry registry) {
        registerAllExtensions(
                (com.google.protobuf.ExtensionRegistryLite) registry);
    }

    public interface IntObjectOrBuilder extends
            // @@protoc_insertion_point(interface_extends:IntObject)
            com.google.protobuf.MessageOrBuilder {

        /**
         * <code>int32 a = 1;</code>
         */
        int getA();

        /**
         * <code>int32 b = 2;</code>
         */
        int getB();

        /**
         * <code>int32 c = 3;</code>
         */
        int getC();

        /**
         * <code>int32 d = 4;</code>
         */
        int getD();

        /**
         * <code>int32 e = 5;</code>
         */
        int getE();

        /**
         * <code>int32 f = 6;</code>
         */
        int getF();

        /**
         * <code>int32 g = 7;</code>
         */
        int getG();

        /**
         * <code>int32 h = 8;</code>
         */
        int getH();

        /**
         * <code>int32 i = 9;</code>
         */
        int getI();

        /**
         * <code>int32 j = 10;</code>
         */
        int getJ();
    }

    /**
     * Protobuf type {@code IntObject}
     */
    public static final class IntObject extends
            com.google.protobuf.GeneratedMessageV3 implements
            // @@protoc_insertion_point(message_implements:IntObject)
            IntObjectOrBuilder {
        private static final long serialVersionUID = 0L;

        // Use IntObject.newBuilder() to construct.
        private IntObject(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
            super(builder);
        }

        private IntObject() {
            a_ = 0;
            b_ = 0;
            c_ = 0;
            d_ = 0;
            e_ = 0;
            f_ = 0;
            g_ = 0;
            h_ = 0;
            i_ = 0;
            j_ = 0;
        }

        @Override
        public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
            return this.unknownFields;
        }

        private IntObject(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            this();
            if (extensionRegistry == null) {
                throw new NullPointerException();
            }
            int mutable_bitField0_ = 0;
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                    com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
                boolean done = false;
                while (!done) {
                    int tag = input.readTag();
                    switch (tag) {
                        case 0:
                            done = true;
                            break;
                        case 8: {

                            a_ = input.readInt32();
                            break;
                        }
                        case 16: {

                            b_ = input.readInt32();
                            break;
                        }
                        case 24: {

                            c_ = input.readInt32();
                            break;
                        }
                        case 32: {

                            d_ = input.readInt32();
                            break;
                        }
                        case 40: {

                            e_ = input.readInt32();
                            break;
                        }
                        case 48: {

                            f_ = input.readInt32();
                            break;
                        }
                        case 56: {

                            g_ = input.readInt32();
                            break;
                        }
                        case 64: {

                            h_ = input.readInt32();
                            break;
                        }
                        case 72: {

                            i_ = input.readInt32();
                            break;
                        }
                        case 80: {

                            j_ = input.readInt32();
                            break;
                        }
                        default: {
                            if (!parseUnknownFieldProto3(
                                    input, unknownFields, extensionRegistry, tag)) {
                                done = true;
                            }
                            break;
                        }
                    }
                }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
                throw new com.google.protobuf.InvalidProtocolBufferException(
                        e).setUnfinishedMessage(this);
            } finally {
                this.unknownFields = unknownFields.build();
                makeExtensionsImmutable();
            }
        }

        public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
            return FieldProtobufObject.internal_static_IntObject_descriptor;
        }

        @Override
        protected FieldAccessorTable
        internalGetFieldAccessorTable() {
            return FieldProtobufObject.internal_static_IntObject_fieldAccessorTable
                    .ensureFieldAccessorsInitialized(
                            IntObject.class, Builder.class);
        }

        public static final int A_FIELD_NUMBER = 1;
        private int a_;

        /**
         * <code>int32 a = 1;</code>
         */
        public int getA() {
            return a_;
        }

        public static final int B_FIELD_NUMBER = 2;
        private int b_;

        /**
         * <code>int32 b = 2;</code>
         */
        public int getB() {
            return b_;
        }

        public static final int C_FIELD_NUMBER = 3;
        private int c_;

        /**
         * <code>int32 c = 3;</code>
         */
        public int getC() {
            return c_;
        }

        public static final int D_FIELD_NUMBER = 4;
        private int d_;

        /**
         * <code>int32 d = 4;</code>
         */
        public int getD() {
            return d_;
        }

        public static final int E_FIELD_NUMBER = 5;
        private int e_;

        /**
         * <code>int32 e = 5;</code>
         */
        public int getE() {
            return e_;
        }

        public static final int F_FIELD_NUMBER = 6;
        private int f_;

        /**
         * <code>int32 f = 6;</code>
         */
        public int getF() {
            return f_;
        }

        public static final int G_FIELD_NUMBER = 7;
        private int g_;

        /**
         * <code>int32 g = 7;</code>
         */
        public int getG() {
            return g_;
        }

        public static final int H_FIELD_NUMBER = 8;
        private int h_;

        /**
         * <code>int32 h = 8;</code>
         */
        public int getH() {
            return h_;
        }

        public static final int I_FIELD_NUMBER = 9;
        private int i_;

        /**
         * <code>int32 i = 9;</code>
         */
        public int getI() {
            return i_;
        }

        public static final int J_FIELD_NUMBER = 10;
        private int j_;

        /**
         * <code>int32 j = 10;</code>
         */
        public int getJ() {
            return j_;
        }

        private byte memoizedIsInitialized = -1;

        @Override
        public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
        }

        @Override
        public void writeTo(com.google.protobuf.CodedOutputStream output)
                throws java.io.IOException {
            if (a_ != 0) {
                output.writeInt32(1, a_);
            }
            if (b_ != 0) {
                output.writeInt32(2, b_);
            }
            if (c_ != 0) {
                output.writeInt32(3, c_);
            }
            if (d_ != 0) {
                output.writeInt32(4, d_);
            }
            if (e_ != 0) {
                output.writeInt32(5, e_);
            }
            if (f_ != 0) {
                output.writeInt32(6, f_);
            }
            if (g_ != 0) {
                output.writeInt32(7, g_);
            }
            if (h_ != 0) {
                output.writeInt32(8, h_);
            }
            if (i_ != 0) {
                output.writeInt32(9, i_);
            }
            if (j_ != 0) {
                output.writeInt32(10, j_);
            }
            unknownFields.writeTo(output);
        }

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

            size = 0;
            if (a_ != 0) {
                size += com.google.protobuf.CodedOutputStream
                        .computeInt32Size(1, a_);
            }
            if (b_ != 0) {
                size += com.google.protobuf.CodedOutputStream
                        .computeInt32Size(2, b_);
            }
            if (c_ != 0) {
                size += com.google.protobuf.CodedOutputStream
                        .computeInt32Size(3, c_);
            }
            if (d_ != 0) {
                size += com.google.protobuf.CodedOutputStream
                        .computeInt32Size(4, d_);
            }
            if (e_ != 0) {
                size += com.google.protobuf.CodedOutputStream
                        .computeInt32Size(5, e_);
            }
            if (f_ != 0) {
                size += com.google.protobuf.CodedOutputStream
                        .computeInt32Size(6, f_);
            }
            if (g_ != 0) {
                size += com.google.protobuf.CodedOutputStream
                        .computeInt32Size(7, g_);
            }
            if (h_ != 0) {
                size += com.google.protobuf.CodedOutputStream
                        .computeInt32Size(8, h_);
            }
            if (i_ != 0) {
                size += com.google.protobuf.CodedOutputStream
                        .computeInt32Size(9, i_);
            }
            if (j_ != 0) {
                size += com.google.protobuf.CodedOutputStream
                        .computeInt32Size(10, j_);
            }
            size += unknownFields.getSerializedSize();
            memoizedSize = size;
            return size;
        }

        @Override
        public boolean equals(final Object obj) {
            if (obj == this) {
                return true;
            }
            if (!(obj instanceof IntObject)) {
                return super.equals(obj);
            }
            IntObject other = (IntObject) obj;

            boolean result = true;
            result = result && (getA()
                    == other.getA());
            result = result && (getB()
                    == other.getB());
            result = result && (getC()
                    == other.getC());
            result = result && (getD()
                    == other.getD());
            result = result && (getE()
                    == other.getE());
            result = result && (getF()
                    == other.getF());
            result = result && (getG()
                    == other.getG());
            result = result && (getH()
                    == other.getH());
            result = result && (getI()
                    == other.getI());
            result = result && (getJ()
                    == other.getJ());
            result = result && unknownFields.equals(other.unknownFields);
            return result;
        }

        @Override
        public int hashCode() {
            if (memoizedHashCode != 0) {
                return memoizedHashCode;
            }
            int hash = 41;
            hash = (19 * hash) + getDescriptor().hashCode();
            hash = (37 * hash) + A_FIELD_NUMBER;
            hash = (53 * hash) + getA();
            hash = (37 * hash) + B_FIELD_NUMBER;
            hash = (53 * hash) + getB();
            hash = (37 * hash) + C_FIELD_NUMBER;
            hash = (53 * hash) + getC();
            hash = (37 * hash) + D_FIELD_NUMBER;
            hash = (53 * hash) + getD();
            hash = (37 * hash) + E_FIELD_NUMBER;
            hash = (53 * hash) + getE();
            hash = (37 * hash) + F_FIELD_NUMBER;
            hash = (53 * hash) + getF();
            hash = (37 * hash) + G_FIELD_NUMBER;
            hash = (53 * hash) + getG();
            hash = (37 * hash) + H_FIELD_NUMBER;
            hash = (53 * hash) + getH();
            hash = (37 * hash) + I_FIELD_NUMBER;
            hash = (53 * hash) + getI();
            hash = (37 * hash) + J_FIELD_NUMBER;
            hash = (53 * hash) + getJ();
            hash = (29 * hash) + unknownFields.hashCode();
            memoizedHashCode = hash;
            return hash;
        }

        public static IntObject parseFrom(
                java.nio.ByteBuffer data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static IntObject parseFrom(
                java.nio.ByteBuffer data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static IntObject parseFrom(
                com.google.protobuf.ByteString data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static IntObject parseFrom(
                com.google.protobuf.ByteString data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static IntObject parseFrom(byte[] data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static IntObject parseFrom(
                byte[] data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static IntObject parseFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static IntObject 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 IntObject parseDelimitedFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input);
        }

        public static IntObject 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 IntObject parseFrom(
                com.google.protobuf.CodedInputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static IntObject parseFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        @Override
        public Builder newBuilderForType() {
            return newBuilder();
        }

        public static Builder newBuilder() {
            return DEFAULT_INSTANCE.toBuilder();
        }

        public static Builder newBuilder(IntObject prototype) {
            return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
        }

        @Override
        public Builder toBuilder() {
            return this == DEFAULT_INSTANCE
                    ? new Builder() : new Builder().mergeFrom(this);
        }

        @Override
        protected Builder newBuilderForType(
                BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
        }

        /**
         * Protobuf type {@code IntObject}
         */
        public static final class Builder extends
                com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
                // @@protoc_insertion_point(builder_implements:IntObject)
                IntObjectOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
                return FieldProtobufObject.internal_static_IntObject_descriptor;
            }

            @Override
            protected FieldAccessorTable
            internalGetFieldAccessorTable() {
                return FieldProtobufObject.internal_static_IntObject_fieldAccessorTable
                        .ensureFieldAccessorsInitialized(
                                IntObject.class, Builder.class);
            }

            // Construct using com.zfoo.protocol.field.packet.FieldProtobufObject.IntObject.newBuilder()
            private Builder() {
                maybeForceBuilderInitialization();
            }

            private Builder(
                    BuilderParent parent) {
                super(parent);
                maybeForceBuilderInitialization();
            }

            private void maybeForceBuilderInitialization() {
                if (com.google.protobuf.GeneratedMessageV3
                        .alwaysUseFieldBuilders) {
                }
            }

            @Override
            public Builder clear() {
                super.clear();
                a_ = 0;

                b_ = 0;

                c_ = 0;

                d_ = 0;

                e_ = 0;

                f_ = 0;

                g_ = 0;

                h_ = 0;

                i_ = 0;

                j_ = 0;

                return this;
            }

            @Override
            public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
                return FieldProtobufObject.internal_static_IntObject_descriptor;
            }

            @Override
            public IntObject getDefaultInstanceForType() {
                return IntObject.getDefaultInstance();
            }

            @Override
            public IntObject build() {
                IntObject result = buildPartial();
                if (!result.isInitialized()) {
                    throw newUninitializedMessageException(result);
                }
                return result;
            }

            @Override
            public IntObject buildPartial() {
                IntObject result = new IntObject(this);
                result.a_ = a_;
                result.b_ = b_;
                result.c_ = c_;
                result.d_ = d_;
                result.e_ = e_;
                result.f_ = f_;
                result.g_ = g_;
                result.h_ = h_;
                result.i_ = i_;
                result.j_ = j_;
                onBuilt();
                return result;
            }

            @Override
            public Builder clone() {
                return (Builder) super.clone();
            }

            @Override
            public Builder setField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.setField(field, value);
            }

            @Override
            public Builder clearField(
                    com.google.protobuf.Descriptors.FieldDescriptor field) {
                return (Builder) super.clearField(field);
            }

            @Override
            public Builder clearOneof(
                    com.google.protobuf.Descriptors.OneofDescriptor oneof) {
                return (Builder) super.clearOneof(oneof);
            }

            @Override
            public Builder setRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    int index, Object value) {
                return (Builder) super.setRepeatedField(field, index, value);
            }

            @Override
            public Builder addRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.addRepeatedField(field, value);
            }

            @Override
            public Builder mergeFrom(com.google.protobuf.Message other) {
                if (other instanceof IntObject) {
                    return mergeFrom((IntObject) other);
                } else {
                    super.mergeFrom(other);
                    return this;
                }
            }

            public Builder mergeFrom(IntObject other) {
                if (other == IntObject.getDefaultInstance()) return this;
                if (other.getA() != 0) {
                    setA(other.getA());
                }
                if (other.getB() != 0) {
                    setB(other.getB());
                }
                if (other.getC() != 0) {
                    setC(other.getC());
                }
                if (other.getD() != 0) {
                    setD(other.getD());
                }
                if (other.getE() != 0) {
                    setE(other.getE());
                }
                if (other.getF() != 0) {
                    setF(other.getF());
                }
                if (other.getG() != 0) {
                    setG(other.getG());
                }
                if (other.getH() != 0) {
                    setH(other.getH());
                }
                if (other.getI() != 0) {
                    setI(other.getI());
                }
                if (other.getJ() != 0) {
                    setJ(other.getJ());
                }
                this.mergeUnknownFields(other.unknownFields);
                onChanged();
                return this;
            }

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

            @Override
            public Builder mergeFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws java.io.IOException {
                IntObject parsedMessage = null;
                try {
                    parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
                } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                    parsedMessage = (IntObject) e.getUnfinishedMessage();
                    throw e.unwrapIOException();
                } finally {
                    if (parsedMessage != null) {
                        mergeFrom(parsedMessage);
                    }
                }
                return this;
            }

            private int a_;

            /**
             * <code>int32 a = 1;</code>
             */
            public int getA() {
                return a_;
            }

            /**
             * <code>int32 a = 1;</code>
             */
            public Builder setA(int value) {

                a_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>int32 a = 1;</code>
             */
            public Builder clearA() {

                a_ = 0;
                onChanged();
                return this;
            }

            private int b_;

            /**
             * <code>int32 b = 2;</code>
             */
            public int getB() {
                return b_;
            }

            /**
             * <code>int32 b = 2;</code>
             */
            public Builder setB(int value) {

                b_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>int32 b = 2;</code>
             */
            public Builder clearB() {

                b_ = 0;
                onChanged();
                return this;
            }

            private int c_;

            /**
             * <code>int32 c = 3;</code>
             */
            public int getC() {
                return c_;
            }

            /**
             * <code>int32 c = 3;</code>
             */
            public Builder setC(int value) {

                c_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>int32 c = 3;</code>
             */
            public Builder clearC() {

                c_ = 0;
                onChanged();
                return this;
            }

            private int d_;

            /**
             * <code>int32 d = 4;</code>
             */
            public int getD() {
                return d_;
            }

            /**
             * <code>int32 d = 4;</code>
             */
            public Builder setD(int value) {

                d_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>int32 d = 4;</code>
             */
            public Builder clearD() {

                d_ = 0;
                onChanged();
                return this;
            }

            private int e_;

            /**
             * <code>int32 e = 5;</code>
             */
            public int getE() {
                return e_;
            }

            /**
             * <code>int32 e = 5;</code>
             */
            public Builder setE(int value) {

                e_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>int32 e = 5;</code>
             */
            public Builder clearE() {

                e_ = 0;
                onChanged();
                return this;
            }

            private int f_;

            /**
             * <code>int32 f = 6;</code>
             */
            public int getF() {
                return f_;
            }

            /**
             * <code>int32 f = 6;</code>
             */
            public Builder setF(int value) {

                f_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>int32 f = 6;</code>
             */
            public Builder clearF() {

                f_ = 0;
                onChanged();
                return this;
            }

            private int g_;

            /**
             * <code>int32 g = 7;</code>
             */
            public int getG() {
                return g_;
            }

            /**
             * <code>int32 g = 7;</code>
             */
            public Builder setG(int value) {

                g_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>int32 g = 7;</code>
             */
            public Builder clearG() {

                g_ = 0;
                onChanged();
                return this;
            }

            private int h_;

            /**
             * <code>int32 h = 8;</code>
             */
            public int getH() {
                return h_;
            }

            /**
             * <code>int32 h = 8;</code>
             */
            public Builder setH(int value) {

                h_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>int32 h = 8;</code>
             */
            public Builder clearH() {

                h_ = 0;
                onChanged();
                return this;
            }

            private int i_;

            /**
             * <code>int32 i = 9;</code>
             */
            public int getI() {
                return i_;
            }

            /**
             * <code>int32 i = 9;</code>
             */
            public Builder setI(int value) {

                i_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>int32 i = 9;</code>
             */
            public Builder clearI() {

                i_ = 0;
                onChanged();
                return this;
            }

            private int j_;

            /**
             * <code>int32 j = 10;</code>
             */
            public int getJ() {
                return j_;
            }

            /**
             * <code>int32 j = 10;</code>
             */
            public Builder setJ(int value) {

                j_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>int32 j = 10;</code>
             */
            public Builder clearJ() {

                j_ = 0;
                onChanged();
                return this;
            }

            @Override
            public final Builder setUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.setUnknownFieldsProto3(unknownFields);
            }

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


            // @@protoc_insertion_point(builder_scope:IntObject)
        }

        // @@protoc_insertion_point(class_scope:IntObject)
        private static final IntObject DEFAULT_INSTANCE;

        static {
            DEFAULT_INSTANCE = new IntObject();
        }

        public static IntObject getDefaultInstance() {
            return DEFAULT_INSTANCE;
        }

        private static final com.google.protobuf.Parser<IntObject>
                PARSER = new com.google.protobuf.AbstractParser<IntObject>() {
            @Override
            public IntObject parsePartialFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws com.google.protobuf.InvalidProtocolBufferException {
                return new IntObject(input, extensionRegistry);
            }
        };

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

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

        @Override
        public IntObject getDefaultInstanceForType() {
            return DEFAULT_INSTANCE;
        }

    }

    public interface FloatObjectOrBuilder extends
            // @@protoc_insertion_point(interface_extends:FloatObject)
            com.google.protobuf.MessageOrBuilder {

        /**
         * <code>float a = 1;</code>
         */
        float getA();

        /**
         * <code>float b = 2;</code>
         */
        float getB();

        /**
         * <code>float c = 3;</code>
         */
        float getC();

        /**
         * <code>float d = 4;</code>
         */
        float getD();

        /**
         * <code>float e = 5;</code>
         */
        float getE();

        /**
         * <code>float f = 6;</code>
         */
        float getF();

        /**
         * <code>float g = 7;</code>
         */
        float getG();

        /**
         * <code>float h = 8;</code>
         */
        float getH();

        /**
         * <code>float i = 9;</code>
         */
        float getI();

        /**
         * <code>float j = 10;</code>
         */
        float getJ();
    }

    /**
     * Protobuf type {@code FloatObject}
     */
    public static final class FloatObject extends
            com.google.protobuf.GeneratedMessageV3 implements
            // @@protoc_insertion_point(message_implements:FloatObject)
            FloatObjectOrBuilder {
        private static final long serialVersionUID = 0L;

        // Use FloatObject.newBuilder() to construct.
        private FloatObject(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
            super(builder);
        }

        private FloatObject() {
            a_ = 0F;
            b_ = 0F;
            c_ = 0F;
            d_ = 0F;
            e_ = 0F;
            f_ = 0F;
            g_ = 0F;
            h_ = 0F;
            i_ = 0F;
            j_ = 0F;
        }

        @Override
        public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
            return this.unknownFields;
        }

        private FloatObject(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            this();
            if (extensionRegistry == null) {
                throw new NullPointerException();
            }
            int mutable_bitField0_ = 0;
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                    com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
                boolean done = false;
                while (!done) {
                    int tag = input.readTag();
                    switch (tag) {
                        case 0:
                            done = true;
                            break;
                        case 13: {

                            a_ = input.readFloat();
                            break;
                        }
                        case 21: {

                            b_ = input.readFloat();
                            break;
                        }
                        case 29: {

                            c_ = input.readFloat();
                            break;
                        }
                        case 37: {

                            d_ = input.readFloat();
                            break;
                        }
                        case 45: {

                            e_ = input.readFloat();
                            break;
                        }
                        case 53: {

                            f_ = input.readFloat();
                            break;
                        }
                        case 61: {

                            g_ = input.readFloat();
                            break;
                        }
                        case 69: {

                            h_ = input.readFloat();
                            break;
                        }
                        case 77: {

                            i_ = input.readFloat();
                            break;
                        }
                        case 85: {

                            j_ = input.readFloat();
                            break;
                        }
                        default: {
                            if (!parseUnknownFieldProto3(
                                    input, unknownFields, extensionRegistry, tag)) {
                                done = true;
                            }
                            break;
                        }
                    }
                }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
                throw new com.google.protobuf.InvalidProtocolBufferException(
                        e).setUnfinishedMessage(this);
            } finally {
                this.unknownFields = unknownFields.build();
                makeExtensionsImmutable();
            }
        }

        public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
            return FieldProtobufObject.internal_static_FloatObject_descriptor;
        }

        @Override
        protected FieldAccessorTable
        internalGetFieldAccessorTable() {
            return FieldProtobufObject.internal_static_FloatObject_fieldAccessorTable
                    .ensureFieldAccessorsInitialized(
                            FloatObject.class, Builder.class);
        }

        public static final int A_FIELD_NUMBER = 1;
        private float a_;

        /**
         * <code>float a = 1;</code>
         */
        public float getA() {
            return a_;
        }

        public static final int B_FIELD_NUMBER = 2;
        private float b_;

        /**
         * <code>float b = 2;</code>
         */
        public float getB() {
            return b_;
        }

        public static final int C_FIELD_NUMBER = 3;
        private float c_;

        /**
         * <code>float c = 3;</code>
         */
        public float getC() {
            return c_;
        }

        public static final int D_FIELD_NUMBER = 4;
        private float d_;

        /**
         * <code>float d = 4;</code>
         */
        public float getD() {
            return d_;
        }

        public static final int E_FIELD_NUMBER = 5;
        private float e_;

        /**
         * <code>float e = 5;</code>
         */
        public float getE() {
            return e_;
        }

        public static final int F_FIELD_NUMBER = 6;
        private float f_;

        /**
         * <code>float f = 6;</code>
         */
        public float getF() {
            return f_;
        }

        public static final int G_FIELD_NUMBER = 7;
        private float g_;

        /**
         * <code>float g = 7;</code>
         */
        public float getG() {
            return g_;
        }

        public static final int H_FIELD_NUMBER = 8;
        private float h_;

        /**
         * <code>float h = 8;</code>
         */
        public float getH() {
            return h_;
        }

        public static final int I_FIELD_NUMBER = 9;
        private float i_;

        /**
         * <code>float i = 9;</code>
         */
        public float getI() {
            return i_;
        }

        public static final int J_FIELD_NUMBER = 10;
        private float j_;

        /**
         * <code>float j = 10;</code>
         */
        public float getJ() {
            return j_;
        }

        private byte memoizedIsInitialized = -1;

        @Override
        public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
        }

        @Override
        public void writeTo(com.google.protobuf.CodedOutputStream output)
                throws java.io.IOException {
            if (a_ != 0F) {
                output.writeFloat(1, a_);
            }
            if (b_ != 0F) {
                output.writeFloat(2, b_);
            }
            if (c_ != 0F) {
                output.writeFloat(3, c_);
            }
            if (d_ != 0F) {
                output.writeFloat(4, d_);
            }
            if (e_ != 0F) {
                output.writeFloat(5, e_);
            }
            if (f_ != 0F) {
                output.writeFloat(6, f_);
            }
            if (g_ != 0F) {
                output.writeFloat(7, g_);
            }
            if (h_ != 0F) {
                output.writeFloat(8, h_);
            }
            if (i_ != 0F) {
                output.writeFloat(9, i_);
            }
            if (j_ != 0F) {
                output.writeFloat(10, j_);
            }
            unknownFields.writeTo(output);
        }

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

            size = 0;
            if (a_ != 0F) {
                size += com.google.protobuf.CodedOutputStream
                        .computeFloatSize(1, a_);
            }
            if (b_ != 0F) {
                size += com.google.protobuf.CodedOutputStream
                        .computeFloatSize(2, b_);
            }
            if (c_ != 0F) {
                size += com.google.protobuf.CodedOutputStream
                        .computeFloatSize(3, c_);
            }
            if (d_ != 0F) {
                size += com.google.protobuf.CodedOutputStream
                        .computeFloatSize(4, d_);
            }
            if (e_ != 0F) {
                size += com.google.protobuf.CodedOutputStream
                        .computeFloatSize(5, e_);
            }
            if (f_ != 0F) {
                size += com.google.protobuf.CodedOutputStream
                        .computeFloatSize(6, f_);
            }
            if (g_ != 0F) {
                size += com.google.protobuf.CodedOutputStream
                        .computeFloatSize(7, g_);
            }
            if (h_ != 0F) {
                size += com.google.protobuf.CodedOutputStream
                        .computeFloatSize(8, h_);
            }
            if (i_ != 0F) {
                size += com.google.protobuf.CodedOutputStream
                        .computeFloatSize(9, i_);
            }
            if (j_ != 0F) {
                size += com.google.protobuf.CodedOutputStream
                        .computeFloatSize(10, j_);
            }
            size += unknownFields.getSerializedSize();
            memoizedSize = size;
            return size;
        }

        @Override
        public boolean equals(final Object obj) {
            if (obj == this) {
                return true;
            }
            if (!(obj instanceof FloatObject)) {
                return super.equals(obj);
            }
            FloatObject other = (FloatObject) obj;

            boolean result = true;
            result = result && (
                    Float.floatToIntBits(getA())
                            == Float.floatToIntBits(
                            other.getA()));
            result = result && (
                    Float.floatToIntBits(getB())
                            == Float.floatToIntBits(
                            other.getB()));
            result = result && (
                    Float.floatToIntBits(getC())
                            == Float.floatToIntBits(
                            other.getC()));
            result = result && (
                    Float.floatToIntBits(getD())
                            == Float.floatToIntBits(
                            other.getD()));
            result = result && (
                    Float.floatToIntBits(getE())
                            == Float.floatToIntBits(
                            other.getE()));
            result = result && (
                    Float.floatToIntBits(getF())
                            == Float.floatToIntBits(
                            other.getF()));
            result = result && (
                    Float.floatToIntBits(getG())
                            == Float.floatToIntBits(
                            other.getG()));
            result = result && (
                    Float.floatToIntBits(getH())
                            == Float.floatToIntBits(
                            other.getH()));
            result = result && (
                    Float.floatToIntBits(getI())
                            == Float.floatToIntBits(
                            other.getI()));
            result = result && (
                    Float.floatToIntBits(getJ())
                            == Float.floatToIntBits(
                            other.getJ()));
            result = result && unknownFields.equals(other.unknownFields);
            return result;
        }

        @Override
        public int hashCode() {
            if (memoizedHashCode != 0) {
                return memoizedHashCode;
            }
            int hash = 41;
            hash = (19 * hash) + getDescriptor().hashCode();
            hash = (37 * hash) + A_FIELD_NUMBER;
            hash = (53 * hash) + Float.floatToIntBits(
                    getA());
            hash = (37 * hash) + B_FIELD_NUMBER;
            hash = (53 * hash) + Float.floatToIntBits(
                    getB());
            hash = (37 * hash) + C_FIELD_NUMBER;
            hash = (53 * hash) + Float.floatToIntBits(
                    getC());
            hash = (37 * hash) + D_FIELD_NUMBER;
            hash = (53 * hash) + Float.floatToIntBits(
                    getD());
            hash = (37 * hash) + E_FIELD_NUMBER;
            hash = (53 * hash) + Float.floatToIntBits(
                    getE());
            hash = (37 * hash) + F_FIELD_NUMBER;
            hash = (53 * hash) + Float.floatToIntBits(
                    getF());
            hash = (37 * hash) + G_FIELD_NUMBER;
            hash = (53 * hash) + Float.floatToIntBits(
                    getG());
            hash = (37 * hash) + H_FIELD_NUMBER;
            hash = (53 * hash) + Float.floatToIntBits(
                    getH());
            hash = (37 * hash) + I_FIELD_NUMBER;
            hash = (53 * hash) + Float.floatToIntBits(
                    getI());
            hash = (37 * hash) + J_FIELD_NUMBER;
            hash = (53 * hash) + Float.floatToIntBits(
                    getJ());
            hash = (29 * hash) + unknownFields.hashCode();
            memoizedHashCode = hash;
            return hash;
        }

        public static FloatObject parseFrom(
                java.nio.ByteBuffer data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static FloatObject parseFrom(
                java.nio.ByteBuffer data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static FloatObject parseFrom(
                com.google.protobuf.ByteString data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static FloatObject parseFrom(
                com.google.protobuf.ByteString data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static FloatObject parseFrom(byte[] data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static FloatObject parseFrom(
                byte[] data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static FloatObject parseFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static FloatObject 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 FloatObject parseDelimitedFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input);
        }

        public static FloatObject 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 FloatObject parseFrom(
                com.google.protobuf.CodedInputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static FloatObject parseFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        @Override
        public Builder newBuilderForType() {
            return newBuilder();
        }

        public static Builder newBuilder() {
            return DEFAULT_INSTANCE.toBuilder();
        }

        public static Builder newBuilder(FloatObject prototype) {
            return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
        }

        @Override
        public Builder toBuilder() {
            return this == DEFAULT_INSTANCE
                    ? new Builder() : new Builder().mergeFrom(this);
        }

        @Override
        protected Builder newBuilderForType(
                BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
        }

        /**
         * Protobuf type {@code FloatObject}
         */
        public static final class Builder extends
                com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
                // @@protoc_insertion_point(builder_implements:FloatObject)
                FloatObjectOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
                return FieldProtobufObject.internal_static_FloatObject_descriptor;
            }

            @Override
            protected FieldAccessorTable
            internalGetFieldAccessorTable() {
                return FieldProtobufObject.internal_static_FloatObject_fieldAccessorTable
                        .ensureFieldAccessorsInitialized(
                                FloatObject.class, Builder.class);
            }

            // Construct using com.zfoo.protocol.field.packet.FieldProtobufObject.FloatObject.newBuilder()
            private Builder() {
                maybeForceBuilderInitialization();
            }

            private Builder(
                    BuilderParent parent) {
                super(parent);
                maybeForceBuilderInitialization();
            }

            private void maybeForceBuilderInitialization() {
                if (com.google.protobuf.GeneratedMessageV3
                        .alwaysUseFieldBuilders) {
                }
            }

            @Override
            public Builder clear() {
                super.clear();
                a_ = 0F;

                b_ = 0F;

                c_ = 0F;

                d_ = 0F;

                e_ = 0F;

                f_ = 0F;

                g_ = 0F;

                h_ = 0F;

                i_ = 0F;

                j_ = 0F;

                return this;
            }

            @Override
            public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
                return FieldProtobufObject.internal_static_FloatObject_descriptor;
            }

            @Override
            public FloatObject getDefaultInstanceForType() {
                return FloatObject.getDefaultInstance();
            }

            @Override
            public FloatObject build() {
                FloatObject result = buildPartial();
                if (!result.isInitialized()) {
                    throw newUninitializedMessageException(result);
                }
                return result;
            }

            @Override
            public FloatObject buildPartial() {
                FloatObject result = new FloatObject(this);
                result.a_ = a_;
                result.b_ = b_;
                result.c_ = c_;
                result.d_ = d_;
                result.e_ = e_;
                result.f_ = f_;
                result.g_ = g_;
                result.h_ = h_;
                result.i_ = i_;
                result.j_ = j_;
                onBuilt();
                return result;
            }

            @Override
            public Builder clone() {
                return (Builder) super.clone();
            }

            @Override
            public Builder setField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.setField(field, value);
            }

            @Override
            public Builder clearField(
                    com.google.protobuf.Descriptors.FieldDescriptor field) {
                return (Builder) super.clearField(field);
            }

            @Override
            public Builder clearOneof(
                    com.google.protobuf.Descriptors.OneofDescriptor oneof) {
                return (Builder) super.clearOneof(oneof);
            }

            @Override
            public Builder setRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    int index, Object value) {
                return (Builder) super.setRepeatedField(field, index, value);
            }

            @Override
            public Builder addRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.addRepeatedField(field, value);
            }

            @Override
            public Builder mergeFrom(com.google.protobuf.Message other) {
                if (other instanceof FloatObject) {
                    return mergeFrom((FloatObject) other);
                } else {
                    super.mergeFrom(other);
                    return this;
                }
            }

            public Builder mergeFrom(FloatObject other) {
                if (other == FloatObject.getDefaultInstance()) return this;
                if (other.getA() != 0F) {
                    setA(other.getA());
                }
                if (other.getB() != 0F) {
                    setB(other.getB());
                }
                if (other.getC() != 0F) {
                    setC(other.getC());
                }
                if (other.getD() != 0F) {
                    setD(other.getD());
                }
                if (other.getE() != 0F) {
                    setE(other.getE());
                }
                if (other.getF() != 0F) {
                    setF(other.getF());
                }
                if (other.getG() != 0F) {
                    setG(other.getG());
                }
                if (other.getH() != 0F) {
                    setH(other.getH());
                }
                if (other.getI() != 0F) {
                    setI(other.getI());
                }
                if (other.getJ() != 0F) {
                    setJ(other.getJ());
                }
                this.mergeUnknownFields(other.unknownFields);
                onChanged();
                return this;
            }

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

            @Override
            public Builder mergeFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws java.io.IOException {
                FloatObject parsedMessage = null;
                try {
                    parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
                } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                    parsedMessage = (FloatObject) e.getUnfinishedMessage();
                    throw e.unwrapIOException();
                } finally {
                    if (parsedMessage != null) {
                        mergeFrom(parsedMessage);
                    }
                }
                return this;
            }

            private float a_;

            /**
             * <code>float a = 1;</code>
             */
            public float getA() {
                return a_;
            }

            /**
             * <code>float a = 1;</code>
             */
            public Builder setA(float value) {

                a_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>float a = 1;</code>
             */
            public Builder clearA() {

                a_ = 0F;
                onChanged();
                return this;
            }

            private float b_;

            /**
             * <code>float b = 2;</code>
             */
            public float getB() {
                return b_;
            }

            /**
             * <code>float b = 2;</code>
             */
            public Builder setB(float value) {

                b_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>float b = 2;</code>
             */
            public Builder clearB() {

                b_ = 0F;
                onChanged();
                return this;
            }

            private float c_;

            /**
             * <code>float c = 3;</code>
             */
            public float getC() {
                return c_;
            }

            /**
             * <code>float c = 3;</code>
             */
            public Builder setC(float value) {

                c_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>float c = 3;</code>
             */
            public Builder clearC() {

                c_ = 0F;
                onChanged();
                return this;
            }

            private float d_;

            /**
             * <code>float d = 4;</code>
             */
            public float getD() {
                return d_;
            }

            /**
             * <code>float d = 4;</code>
             */
            public Builder setD(float value) {

                d_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>float d = 4;</code>
             */
            public Builder clearD() {

                d_ = 0F;
                onChanged();
                return this;
            }

            private float e_;

            /**
             * <code>float e = 5;</code>
             */
            public float getE() {
                return e_;
            }

            /**
             * <code>float e = 5;</code>
             */
            public Builder setE(float value) {

                e_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>float e = 5;</code>
             */
            public Builder clearE() {

                e_ = 0F;
                onChanged();
                return this;
            }

            private float f_;

            /**
             * <code>float f = 6;</code>
             */
            public float getF() {
                return f_;
            }

            /**
             * <code>float f = 6;</code>
             */
            public Builder setF(float value) {

                f_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>float f = 6;</code>
             */
            public Builder clearF() {

                f_ = 0F;
                onChanged();
                return this;
            }

            private float g_;

            /**
             * <code>float g = 7;</code>
             */
            public float getG() {
                return g_;
            }

            /**
             * <code>float g = 7;</code>
             */
            public Builder setG(float value) {

                g_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>float g = 7;</code>
             */
            public Builder clearG() {

                g_ = 0F;
                onChanged();
                return this;
            }

            private float h_;

            /**
             * <code>float h = 8;</code>
             */
            public float getH() {
                return h_;
            }

            /**
             * <code>float h = 8;</code>
             */
            public Builder setH(float value) {

                h_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>float h = 8;</code>
             */
            public Builder clearH() {

                h_ = 0F;
                onChanged();
                return this;
            }

            private float i_;

            /**
             * <code>float i = 9;</code>
             */
            public float getI() {
                return i_;
            }

            /**
             * <code>float i = 9;</code>
             */
            public Builder setI(float value) {

                i_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>float i = 9;</code>
             */
            public Builder clearI() {

                i_ = 0F;
                onChanged();
                return this;
            }

            private float j_;

            /**
             * <code>float j = 10;</code>
             */
            public float getJ() {
                return j_;
            }

            /**
             * <code>float j = 10;</code>
             */
            public Builder setJ(float value) {

                j_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>float j = 10;</code>
             */
            public Builder clearJ() {

                j_ = 0F;
                onChanged();
                return this;
            }

            @Override
            public final Builder setUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.setUnknownFieldsProto3(unknownFields);
            }

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


            // @@protoc_insertion_point(builder_scope:FloatObject)
        }

        // @@protoc_insertion_point(class_scope:FloatObject)
        private static final FloatObject DEFAULT_INSTANCE;

        static {
            DEFAULT_INSTANCE = new FloatObject();
        }

        public static FloatObject getDefaultInstance() {
            return DEFAULT_INSTANCE;
        }

        private static final com.google.protobuf.Parser<FloatObject>
                PARSER = new com.google.protobuf.AbstractParser<FloatObject>() {
            @Override
            public FloatObject parsePartialFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws com.google.protobuf.InvalidProtocolBufferException {
                return new FloatObject(input, extensionRegistry);
            }
        };

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

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

        @Override
        public FloatObject getDefaultInstanceForType() {
            return DEFAULT_INSTANCE;
        }

    }

    public interface BytesObjectOrBuilder extends
            // @@protoc_insertion_point(interface_extends:BytesObject)
            com.google.protobuf.MessageOrBuilder {

        /**
         * <code>bytes a = 1;</code>
         */
        com.google.protobuf.ByteString getA();

        /**
         * <code>bytes b = 2;</code>
         */
        com.google.protobuf.ByteString getB();

        /**
         * <code>bytes c = 3;</code>
         */
        com.google.protobuf.ByteString getC();

        /**
         * <code>bytes d = 4;</code>
         */
        com.google.protobuf.ByteString getD();

        /**
         * <code>bytes e = 5;</code>
         */
        com.google.protobuf.ByteString getE();

        /**
         * <code>bytes f = 6;</code>
         */
        com.google.protobuf.ByteString getF();

        /**
         * <code>bytes g = 7;</code>
         */
        com.google.protobuf.ByteString getG();

        /**
         * <code>bytes h = 8;</code>
         */
        com.google.protobuf.ByteString getH();

        /**
         * <code>bytes i = 9;</code>
         */
        com.google.protobuf.ByteString getI();

        /**
         * <code>bytes j = 10;</code>
         */
        com.google.protobuf.ByteString getJ();
    }

    /**
     * Protobuf type {@code BytesObject}
     */
    public static final class BytesObject extends
            com.google.protobuf.GeneratedMessageV3 implements
            // @@protoc_insertion_point(message_implements:BytesObject)
            BytesObjectOrBuilder {
        private static final long serialVersionUID = 0L;

        // Use BytesObject.newBuilder() to construct.
        private BytesObject(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
            super(builder);
        }

        private BytesObject() {
            a_ = com.google.protobuf.ByteString.EMPTY;
            b_ = com.google.protobuf.ByteString.EMPTY;
            c_ = com.google.protobuf.ByteString.EMPTY;
            d_ = com.google.protobuf.ByteString.EMPTY;
            e_ = com.google.protobuf.ByteString.EMPTY;
            f_ = com.google.protobuf.ByteString.EMPTY;
            g_ = com.google.protobuf.ByteString.EMPTY;
            h_ = com.google.protobuf.ByteString.EMPTY;
            i_ = com.google.protobuf.ByteString.EMPTY;
            j_ = com.google.protobuf.ByteString.EMPTY;
        }

        @Override
        public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
            return this.unknownFields;
        }

        private BytesObject(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            this();
            if (extensionRegistry == null) {
                throw new NullPointerException();
            }
            int mutable_bitField0_ = 0;
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                    com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
                boolean done = false;
                while (!done) {
                    int tag = input.readTag();
                    switch (tag) {
                        case 0:
                            done = true;
                            break;
                        case 10: {

                            a_ = input.readBytes();
                            break;
                        }
                        case 18: {

                            b_ = input.readBytes();
                            break;
                        }
                        case 26: {

                            c_ = input.readBytes();
                            break;
                        }
                        case 34: {

                            d_ = input.readBytes();
                            break;
                        }
                        case 42: {

                            e_ = input.readBytes();
                            break;
                        }
                        case 50: {

                            f_ = input.readBytes();
                            break;
                        }
                        case 58: {

                            g_ = input.readBytes();
                            break;
                        }
                        case 66: {

                            h_ = input.readBytes();
                            break;
                        }
                        case 74: {

                            i_ = input.readBytes();
                            break;
                        }
                        case 82: {

                            j_ = input.readBytes();
                            break;
                        }
                        default: {
                            if (!parseUnknownFieldProto3(
                                    input, unknownFields, extensionRegistry, tag)) {
                                done = true;
                            }
                            break;
                        }
                    }
                }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
                throw new com.google.protobuf.InvalidProtocolBufferException(
                        e).setUnfinishedMessage(this);
            } finally {
                this.unknownFields = unknownFields.build();
                makeExtensionsImmutable();
            }
        }

        public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
            return FieldProtobufObject.internal_static_BytesObject_descriptor;
        }

        @Override
        protected FieldAccessorTable
        internalGetFieldAccessorTable() {
            return FieldProtobufObject.internal_static_BytesObject_fieldAccessorTable
                    .ensureFieldAccessorsInitialized(
                            BytesObject.class, Builder.class);
        }

        public static final int A_FIELD_NUMBER = 1;
        private com.google.protobuf.ByteString a_;

        /**
         * <code>bytes a = 1;</code>
         */
        public com.google.protobuf.ByteString getA() {
            return a_;
        }

        public static final int B_FIELD_NUMBER = 2;
        private com.google.protobuf.ByteString b_;

        /**
         * <code>bytes b = 2;</code>
         */
        public com.google.protobuf.ByteString getB() {
            return b_;
        }

        public static final int C_FIELD_NUMBER = 3;
        private com.google.protobuf.ByteString c_;

        /**
         * <code>bytes c = 3;</code>
         */
        public com.google.protobuf.ByteString getC() {
            return c_;
        }

        public static final int D_FIELD_NUMBER = 4;
        private com.google.protobuf.ByteString d_;

        /**
         * <code>bytes d = 4;</code>
         */
        public com.google.protobuf.ByteString getD() {
            return d_;
        }

        public static final int E_FIELD_NUMBER = 5;
        private com.google.protobuf.ByteString e_;

        /**
         * <code>bytes e = 5;</code>
         */
        public com.google.protobuf.ByteString getE() {
            return e_;
        }

        public static final int F_FIELD_NUMBER = 6;
        private com.google.protobuf.ByteString f_;

        /**
         * <code>bytes f = 6;</code>
         */
        public com.google.protobuf.ByteString getF() {
            return f_;
        }

        public static final int G_FIELD_NUMBER = 7;
        private com.google.protobuf.ByteString g_;

        /**
         * <code>bytes g = 7;</code>
         */
        public com.google.protobuf.ByteString getG() {
            return g_;
        }

        public static final int H_FIELD_NUMBER = 8;
        private com.google.protobuf.ByteString h_;

        /**
         * <code>bytes h = 8;</code>
         */
        public com.google.protobuf.ByteString getH() {
            return h_;
        }

        public static final int I_FIELD_NUMBER = 9;
        private com.google.protobuf.ByteString i_;

        /**
         * <code>bytes i = 9;</code>
         */
        public com.google.protobuf.ByteString getI() {
            return i_;
        }

        public static final int J_FIELD_NUMBER = 10;
        private com.google.protobuf.ByteString j_;

        /**
         * <code>bytes j = 10;</code>
         */
        public com.google.protobuf.ByteString getJ() {
            return j_;
        }

        private byte memoizedIsInitialized = -1;

        @Override
        public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
        }

        @Override
        public void writeTo(com.google.protobuf.CodedOutputStream output)
                throws java.io.IOException {
            if (!a_.isEmpty()) {
                output.writeBytes(1, a_);
            }
            if (!b_.isEmpty()) {
                output.writeBytes(2, b_);
            }
            if (!c_.isEmpty()) {
                output.writeBytes(3, c_);
            }
            if (!d_.isEmpty()) {
                output.writeBytes(4, d_);
            }
            if (!e_.isEmpty()) {
                output.writeBytes(5, e_);
            }
            if (!f_.isEmpty()) {
                output.writeBytes(6, f_);
            }
            if (!g_.isEmpty()) {
                output.writeBytes(7, g_);
            }
            if (!h_.isEmpty()) {
                output.writeBytes(8, h_);
            }
            if (!i_.isEmpty()) {
                output.writeBytes(9, i_);
            }
            if (!j_.isEmpty()) {
                output.writeBytes(10, j_);
            }
            unknownFields.writeTo(output);
        }

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

            size = 0;
            if (!a_.isEmpty()) {
                size += com.google.protobuf.CodedOutputStream
                        .computeBytesSize(1, a_);
            }
            if (!b_.isEmpty()) {
                size += com.google.protobuf.CodedOutputStream
                        .computeBytesSize(2, b_);
            }
            if (!c_.isEmpty()) {
                size += com.google.protobuf.CodedOutputStream
                        .computeBytesSize(3, c_);
            }
            if (!d_.isEmpty()) {
                size += com.google.protobuf.CodedOutputStream
                        .computeBytesSize(4, d_);
            }
            if (!e_.isEmpty()) {
                size += com.google.protobuf.CodedOutputStream
                        .computeBytesSize(5, e_);
            }
            if (!f_.isEmpty()) {
                size += com.google.protobuf.CodedOutputStream
                        .computeBytesSize(6, f_);
            }
            if (!g_.isEmpty()) {
                size += com.google.protobuf.CodedOutputStream
                        .computeBytesSize(7, g_);
            }
            if (!h_.isEmpty()) {
                size += com.google.protobuf.CodedOutputStream
                        .computeBytesSize(8, h_);
            }
            if (!i_.isEmpty()) {
                size += com.google.protobuf.CodedOutputStream
                        .computeBytesSize(9, i_);
            }
            if (!j_.isEmpty()) {
                size += com.google.protobuf.CodedOutputStream
                        .computeBytesSize(10, j_);
            }
            size += unknownFields.getSerializedSize();
            memoizedSize = size;
            return size;
        }

        @Override
        public boolean equals(final Object obj) {
            if (obj == this) {
                return true;
            }
            if (!(obj instanceof BytesObject)) {
                return super.equals(obj);
            }
            BytesObject other = (BytesObject) obj;

            boolean result = true;
            result = result && getA()
                    .equals(other.getA());
            result = result && getB()
                    .equals(other.getB());
            result = result && getC()
                    .equals(other.getC());
            result = result && getD()
                    .equals(other.getD());
            result = result && getE()
                    .equals(other.getE());
            result = result && getF()
                    .equals(other.getF());
            result = result && getG()
                    .equals(other.getG());
            result = result && getH()
                    .equals(other.getH());
            result = result && getI()
                    .equals(other.getI());
            result = result && getJ()
                    .equals(other.getJ());
            result = result && unknownFields.equals(other.unknownFields);
            return result;
        }

        @Override
        public int hashCode() {
            if (memoizedHashCode != 0) {
                return memoizedHashCode;
            }
            int hash = 41;
            hash = (19 * hash) + getDescriptor().hashCode();
            hash = (37 * hash) + A_FIELD_NUMBER;
            hash = (53 * hash) + getA().hashCode();
            hash = (37 * hash) + B_FIELD_NUMBER;
            hash = (53 * hash) + getB().hashCode();
            hash = (37 * hash) + C_FIELD_NUMBER;
            hash = (53 * hash) + getC().hashCode();
            hash = (37 * hash) + D_FIELD_NUMBER;
            hash = (53 * hash) + getD().hashCode();
            hash = (37 * hash) + E_FIELD_NUMBER;
            hash = (53 * hash) + getE().hashCode();
            hash = (37 * hash) + F_FIELD_NUMBER;
            hash = (53 * hash) + getF().hashCode();
            hash = (37 * hash) + G_FIELD_NUMBER;
            hash = (53 * hash) + getG().hashCode();
            hash = (37 * hash) + H_FIELD_NUMBER;
            hash = (53 * hash) + getH().hashCode();
            hash = (37 * hash) + I_FIELD_NUMBER;
            hash = (53 * hash) + getI().hashCode();
            hash = (37 * hash) + J_FIELD_NUMBER;
            hash = (53 * hash) + getJ().hashCode();
            hash = (29 * hash) + unknownFields.hashCode();
            memoizedHashCode = hash;
            return hash;
        }

        public static BytesObject parseFrom(
                java.nio.ByteBuffer data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static BytesObject parseFrom(
                java.nio.ByteBuffer data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static BytesObject parseFrom(
                com.google.protobuf.ByteString data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static BytesObject parseFrom(
                com.google.protobuf.ByteString data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static BytesObject parseFrom(byte[] data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static BytesObject parseFrom(
                byte[] data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static BytesObject parseFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static BytesObject 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 BytesObject parseDelimitedFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input);
        }

        public static BytesObject 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 BytesObject parseFrom(
                com.google.protobuf.CodedInputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static BytesObject parseFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        @Override
        public Builder newBuilderForType() {
            return newBuilder();
        }

        public static Builder newBuilder() {
            return DEFAULT_INSTANCE.toBuilder();
        }

        public static Builder newBuilder(BytesObject prototype) {
            return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
        }

        @Override
        public Builder toBuilder() {
            return this == DEFAULT_INSTANCE
                    ? new Builder() : new Builder().mergeFrom(this);
        }

        @Override
        protected Builder newBuilderForType(
                BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
        }

        /**
         * Protobuf type {@code BytesObject}
         */
        public static final class Builder extends
                com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
                // @@protoc_insertion_point(builder_implements:BytesObject)
                BytesObjectOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
                return FieldProtobufObject.internal_static_BytesObject_descriptor;
            }

            @Override
            protected FieldAccessorTable
            internalGetFieldAccessorTable() {
                return FieldProtobufObject.internal_static_BytesObject_fieldAccessorTable
                        .ensureFieldAccessorsInitialized(
                                BytesObject.class, Builder.class);
            }

            // Construct using com.zfoo.protocol.field.packet.FieldProtobufObject.BytesObject.newBuilder()
            private Builder() {
                maybeForceBuilderInitialization();
            }

            private Builder(
                    BuilderParent parent) {
                super(parent);
                maybeForceBuilderInitialization();
            }

            private void maybeForceBuilderInitialization() {
                if (com.google.protobuf.GeneratedMessageV3
                        .alwaysUseFieldBuilders) {
                }
            }

            @Override
            public Builder clear() {
                super.clear();
                a_ = com.google.protobuf.ByteString.EMPTY;

                b_ = com.google.protobuf.ByteString.EMPTY;

                c_ = com.google.protobuf.ByteString.EMPTY;

                d_ = com.google.protobuf.ByteString.EMPTY;

                e_ = com.google.protobuf.ByteString.EMPTY;

                f_ = com.google.protobuf.ByteString.EMPTY;

                g_ = com.google.protobuf.ByteString.EMPTY;

                h_ = com.google.protobuf.ByteString.EMPTY;

                i_ = com.google.protobuf.ByteString.EMPTY;

                j_ = com.google.protobuf.ByteString.EMPTY;

                return this;
            }

            @Override
            public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
                return FieldProtobufObject.internal_static_BytesObject_descriptor;
            }

            @Override
            public BytesObject getDefaultInstanceForType() {
                return BytesObject.getDefaultInstance();
            }

            @Override
            public BytesObject build() {
                BytesObject result = buildPartial();
                if (!result.isInitialized()) {
                    throw newUninitializedMessageException(result);
                }
                return result;
            }

            @Override
            public BytesObject buildPartial() {
                BytesObject result = new BytesObject(this);
                result.a_ = a_;
                result.b_ = b_;
                result.c_ = c_;
                result.d_ = d_;
                result.e_ = e_;
                result.f_ = f_;
                result.g_ = g_;
                result.h_ = h_;
                result.i_ = i_;
                result.j_ = j_;
                onBuilt();
                return result;
            }

            @Override
            public Builder clone() {
                return (Builder) super.clone();
            }

            @Override
            public Builder setField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.setField(field, value);
            }

            @Override
            public Builder clearField(
                    com.google.protobuf.Descriptors.FieldDescriptor field) {
                return (Builder) super.clearField(field);
            }

            @Override
            public Builder clearOneof(
                    com.google.protobuf.Descriptors.OneofDescriptor oneof) {
                return (Builder) super.clearOneof(oneof);
            }

            @Override
            public Builder setRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    int index, Object value) {
                return (Builder) super.setRepeatedField(field, index, value);
            }

            @Override
            public Builder addRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.addRepeatedField(field, value);
            }

            @Override
            public Builder mergeFrom(com.google.protobuf.Message other) {
                if (other instanceof BytesObject) {
                    return mergeFrom((BytesObject) other);
                } else {
                    super.mergeFrom(other);
                    return this;
                }
            }

            public Builder mergeFrom(BytesObject other) {
                if (other == BytesObject.getDefaultInstance()) return this;
                if (other.getA() != com.google.protobuf.ByteString.EMPTY) {
                    setA(other.getA());
                }
                if (other.getB() != com.google.protobuf.ByteString.EMPTY) {
                    setB(other.getB());
                }
                if (other.getC() != com.google.protobuf.ByteString.EMPTY) {
                    setC(other.getC());
                }
                if (other.getD() != com.google.protobuf.ByteString.EMPTY) {
                    setD(other.getD());
                }
                if (other.getE() != com.google.protobuf.ByteString.EMPTY) {
                    setE(other.getE());
                }
                if (other.getF() != com.google.protobuf.ByteString.EMPTY) {
                    setF(other.getF());
                }
                if (other.getG() != com.google.protobuf.ByteString.EMPTY) {
                    setG(other.getG());
                }
                if (other.getH() != com.google.protobuf.ByteString.EMPTY) {
                    setH(other.getH());
                }
                if (other.getI() != com.google.protobuf.ByteString.EMPTY) {
                    setI(other.getI());
                }
                if (other.getJ() != com.google.protobuf.ByteString.EMPTY) {
                    setJ(other.getJ());
                }
                this.mergeUnknownFields(other.unknownFields);
                onChanged();
                return this;
            }

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

            @Override
            public Builder mergeFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws java.io.IOException {
                BytesObject parsedMessage = null;
                try {
                    parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
                } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                    parsedMessage = (BytesObject) e.getUnfinishedMessage();
                    throw e.unwrapIOException();
                } finally {
                    if (parsedMessage != null) {
                        mergeFrom(parsedMessage);
                    }
                }
                return this;
            }

            private com.google.protobuf.ByteString a_ = com.google.protobuf.ByteString.EMPTY;

            /**
             * <code>bytes a = 1;</code>
             */
            public com.google.protobuf.ByteString getA() {
                return a_;
            }

            /**
             * <code>bytes a = 1;</code>
             */
            public Builder setA(com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                a_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>bytes a = 1;</code>
             */
            public Builder clearA() {

                a_ = getDefaultInstance().getA();
                onChanged();
                return this;
            }

            private com.google.protobuf.ByteString b_ = com.google.protobuf.ByteString.EMPTY;

            /**
             * <code>bytes b = 2;</code>
             */
            public com.google.protobuf.ByteString getB() {
                return b_;
            }

            /**
             * <code>bytes b = 2;</code>
             */
            public Builder setB(com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                b_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>bytes b = 2;</code>
             */
            public Builder clearB() {

                b_ = getDefaultInstance().getB();
                onChanged();
                return this;
            }

            private com.google.protobuf.ByteString c_ = com.google.protobuf.ByteString.EMPTY;

            /**
             * <code>bytes c = 3;</code>
             */
            public com.google.protobuf.ByteString getC() {
                return c_;
            }

            /**
             * <code>bytes c = 3;</code>
             */
            public Builder setC(com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                c_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>bytes c = 3;</code>
             */
            public Builder clearC() {

                c_ = getDefaultInstance().getC();
                onChanged();
                return this;
            }

            private com.google.protobuf.ByteString d_ = com.google.protobuf.ByteString.EMPTY;

            /**
             * <code>bytes d = 4;</code>
             */
            public com.google.protobuf.ByteString getD() {
                return d_;
            }

            /**
             * <code>bytes d = 4;</code>
             */
            public Builder setD(com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                d_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>bytes d = 4;</code>
             */
            public Builder clearD() {

                d_ = getDefaultInstance().getD();
                onChanged();
                return this;
            }

            private com.google.protobuf.ByteString e_ = com.google.protobuf.ByteString.EMPTY;

            /**
             * <code>bytes e = 5;</code>
             */
            public com.google.protobuf.ByteString getE() {
                return e_;
            }

            /**
             * <code>bytes e = 5;</code>
             */
            public Builder setE(com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                e_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>bytes e = 5;</code>
             */
            public Builder clearE() {

                e_ = getDefaultInstance().getE();
                onChanged();
                return this;
            }

            private com.google.protobuf.ByteString f_ = com.google.protobuf.ByteString.EMPTY;

            /**
             * <code>bytes f = 6;</code>
             */
            public com.google.protobuf.ByteString getF() {
                return f_;
            }

            /**
             * <code>bytes f = 6;</code>
             */
            public Builder setF(com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                f_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>bytes f = 6;</code>
             */
            public Builder clearF() {

                f_ = getDefaultInstance().getF();
                onChanged();
                return this;
            }

            private com.google.protobuf.ByteString g_ = com.google.protobuf.ByteString.EMPTY;

            /**
             * <code>bytes g = 7;</code>
             */
            public com.google.protobuf.ByteString getG() {
                return g_;
            }

            /**
             * <code>bytes g = 7;</code>
             */
            public Builder setG(com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                g_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>bytes g = 7;</code>
             */
            public Builder clearG() {

                g_ = getDefaultInstance().getG();
                onChanged();
                return this;
            }

            private com.google.protobuf.ByteString h_ = com.google.protobuf.ByteString.EMPTY;

            /**
             * <code>bytes h = 8;</code>
             */
            public com.google.protobuf.ByteString getH() {
                return h_;
            }

            /**
             * <code>bytes h = 8;</code>
             */
            public Builder setH(com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                h_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>bytes h = 8;</code>
             */
            public Builder clearH() {

                h_ = getDefaultInstance().getH();
                onChanged();
                return this;
            }

            private com.google.protobuf.ByteString i_ = com.google.protobuf.ByteString.EMPTY;

            /**
             * <code>bytes i = 9;</code>
             */
            public com.google.protobuf.ByteString getI() {
                return i_;
            }

            /**
             * <code>bytes i = 9;</code>
             */
            public Builder setI(com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                i_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>bytes i = 9;</code>
             */
            public Builder clearI() {

                i_ = getDefaultInstance().getI();
                onChanged();
                return this;
            }

            private com.google.protobuf.ByteString j_ = com.google.protobuf.ByteString.EMPTY;

            /**
             * <code>bytes j = 10;</code>
             */
            public com.google.protobuf.ByteString getJ() {
                return j_;
            }

            /**
             * <code>bytes j = 10;</code>
             */
            public Builder setJ(com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                j_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>bytes j = 10;</code>
             */
            public Builder clearJ() {

                j_ = getDefaultInstance().getJ();
                onChanged();
                return this;
            }

            @Override
            public final Builder setUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.setUnknownFieldsProto3(unknownFields);
            }

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


            // @@protoc_insertion_point(builder_scope:BytesObject)
        }

        // @@protoc_insertion_point(class_scope:BytesObject)
        private static final BytesObject DEFAULT_INSTANCE;

        static {
            DEFAULT_INSTANCE = new BytesObject();
        }

        public static BytesObject getDefaultInstance() {
            return DEFAULT_INSTANCE;
        }

        private static final com.google.protobuf.Parser<BytesObject>
                PARSER = new com.google.protobuf.AbstractParser<BytesObject>() {
            @Override
            public BytesObject parsePartialFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws com.google.protobuf.InvalidProtocolBufferException {
                return new BytesObject(input, extensionRegistry);
            }
        };

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

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

        @Override
        public BytesObject getDefaultInstanceForType() {
            return DEFAULT_INSTANCE;
        }

    }

    public interface StringObjectOrBuilder extends
            // @@protoc_insertion_point(interface_extends:StringObject)
            com.google.protobuf.MessageOrBuilder {

        /**
         * <code>string a = 1;</code>
         */
        String getA();

        /**
         * <code>string a = 1;</code>
         */
        com.google.protobuf.ByteString
        getABytes();

        /**
         * <code>string b = 2;</code>
         */
        String getB();

        /**
         * <code>string b = 2;</code>
         */
        com.google.protobuf.ByteString
        getBBytes();

        /**
         * <code>string c = 3;</code>
         */
        String getC();

        /**
         * <code>string c = 3;</code>
         */
        com.google.protobuf.ByteString
        getCBytes();

        /**
         * <code>string d = 4;</code>
         */
        String getD();

        /**
         * <code>string d = 4;</code>
         */
        com.google.protobuf.ByteString
        getDBytes();

        /**
         * <code>string e = 5;</code>
         */
        String getE();

        /**
         * <code>string e = 5;</code>
         */
        com.google.protobuf.ByteString
        getEBytes();

        /**
         * <code>string f = 6;</code>
         */
        String getF();

        /**
         * <code>string f = 6;</code>
         */
        com.google.protobuf.ByteString
        getFBytes();

        /**
         * <code>string g = 7;</code>
         */
        String getG();

        /**
         * <code>string g = 7;</code>
         */
        com.google.protobuf.ByteString
        getGBytes();

        /**
         * <code>string h = 8;</code>
         */
        String getH();

        /**
         * <code>string h = 8;</code>
         */
        com.google.protobuf.ByteString
        getHBytes();

        /**
         * <code>string i = 9;</code>
         */
        String getI();

        /**
         * <code>string i = 9;</code>
         */
        com.google.protobuf.ByteString
        getIBytes();

        /**
         * <code>string j = 10;</code>
         */
        String getJ();

        /**
         * <code>string j = 10;</code>
         */
        com.google.protobuf.ByteString
        getJBytes();
    }

    /**
     * Protobuf type {@code StringObject}
     */
    public static final class StringObject extends
            com.google.protobuf.GeneratedMessageV3 implements
            // @@protoc_insertion_point(message_implements:StringObject)
            StringObjectOrBuilder {
        private static final long serialVersionUID = 0L;

        // Use StringObject.newBuilder() to construct.
        private StringObject(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
            super(builder);
        }

        private StringObject() {
            a_ = "";
            b_ = "";
            c_ = "";
            d_ = "";
            e_ = "";
            f_ = "";
            g_ = "";
            h_ = "";
            i_ = "";
            j_ = "";
        }

        @Override
        public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
            return this.unknownFields;
        }

        private StringObject(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            this();
            if (extensionRegistry == null) {
                throw new NullPointerException();
            }
            int mutable_bitField0_ = 0;
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                    com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
                boolean done = false;
                while (!done) {
                    int tag = input.readTag();
                    switch (tag) {
                        case 0:
                            done = true;
                            break;
                        case 10: {
                            String s = input.readStringRequireUtf8();

                            a_ = s;
                            break;
                        }
                        case 18: {
                            String s = input.readStringRequireUtf8();

                            b_ = s;
                            break;
                        }
                        case 26: {
                            String s = input.readStringRequireUtf8();

                            c_ = s;
                            break;
                        }
                        case 34: {
                            String s = input.readStringRequireUtf8();

                            d_ = s;
                            break;
                        }
                        case 42: {
                            String s = input.readStringRequireUtf8();

                            e_ = s;
                            break;
                        }
                        case 50: {
                            String s = input.readStringRequireUtf8();

                            f_ = s;
                            break;
                        }
                        case 58: {
                            String s = input.readStringRequireUtf8();

                            g_ = s;
                            break;
                        }
                        case 66: {
                            String s = input.readStringRequireUtf8();

                            h_ = s;
                            break;
                        }
                        case 74: {
                            String s = input.readStringRequireUtf8();

                            i_ = s;
                            break;
                        }
                        case 82: {
                            String s = input.readStringRequireUtf8();

                            j_ = s;
                            break;
                        }
                        default: {
                            if (!parseUnknownFieldProto3(
                                    input, unknownFields, extensionRegistry, tag)) {
                                done = true;
                            }
                            break;
                        }
                    }
                }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
                throw new com.google.protobuf.InvalidProtocolBufferException(
                        e).setUnfinishedMessage(this);
            } finally {
                this.unknownFields = unknownFields.build();
                makeExtensionsImmutable();
            }
        }

        public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
            return FieldProtobufObject.internal_static_StringObject_descriptor;
        }

        @Override
        protected FieldAccessorTable
        internalGetFieldAccessorTable() {
            return FieldProtobufObject.internal_static_StringObject_fieldAccessorTable
                    .ensureFieldAccessorsInitialized(
                            StringObject.class, Builder.class);
        }

        public static final int A_FIELD_NUMBER = 1;
        private volatile Object a_;

        /**
         * <code>string a = 1;</code>
         */
        public String getA() {
            Object ref = a_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                a_ = s;
                return s;
            }
        }

        /**
         * <code>string a = 1;</code>
         */
        public com.google.protobuf.ByteString
        getABytes() {
            Object ref = a_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                a_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int B_FIELD_NUMBER = 2;
        private volatile Object b_;

        /**
         * <code>string b = 2;</code>
         */
        public String getB() {
            Object ref = b_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                b_ = s;
                return s;
            }
        }

        /**
         * <code>string b = 2;</code>
         */
        public com.google.protobuf.ByteString
        getBBytes() {
            Object ref = b_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                b_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int C_FIELD_NUMBER = 3;
        private volatile Object c_;

        /**
         * <code>string c = 3;</code>
         */
        public String getC() {
            Object ref = c_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                c_ = s;
                return s;
            }
        }

        /**
         * <code>string c = 3;</code>
         */
        public com.google.protobuf.ByteString
        getCBytes() {
            Object ref = c_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                c_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int D_FIELD_NUMBER = 4;
        private volatile Object d_;

        /**
         * <code>string d = 4;</code>
         */
        public String getD() {
            Object ref = d_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                d_ = s;
                return s;
            }
        }

        /**
         * <code>string d = 4;</code>
         */
        public com.google.protobuf.ByteString
        getDBytes() {
            Object ref = d_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                d_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int E_FIELD_NUMBER = 5;
        private volatile Object e_;

        /**
         * <code>string e = 5;</code>
         */
        public String getE() {
            Object ref = e_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                e_ = s;
                return s;
            }
        }

        /**
         * <code>string e = 5;</code>
         */
        public com.google.protobuf.ByteString
        getEBytes() {
            Object ref = e_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                e_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int F_FIELD_NUMBER = 6;
        private volatile Object f_;

        /**
         * <code>string f = 6;</code>
         */
        public String getF() {
            Object ref = f_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                f_ = s;
                return s;
            }
        }

        /**
         * <code>string f = 6;</code>
         */
        public com.google.protobuf.ByteString
        getFBytes() {
            Object ref = f_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                f_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int G_FIELD_NUMBER = 7;
        private volatile Object g_;

        /**
         * <code>string g = 7;</code>
         */
        public String getG() {
            Object ref = g_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                g_ = s;
                return s;
            }
        }

        /**
         * <code>string g = 7;</code>
         */
        public com.google.protobuf.ByteString
        getGBytes() {
            Object ref = g_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                g_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int H_FIELD_NUMBER = 8;
        private volatile Object h_;

        /**
         * <code>string h = 8;</code>
         */
        public String getH() {
            Object ref = h_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                h_ = s;
                return s;
            }
        }

        /**
         * <code>string h = 8;</code>
         */
        public com.google.protobuf.ByteString
        getHBytes() {
            Object ref = h_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                h_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int I_FIELD_NUMBER = 9;
        private volatile Object i_;

        /**
         * <code>string i = 9;</code>
         */
        public String getI() {
            Object ref = i_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                i_ = s;
                return s;
            }
        }

        /**
         * <code>string i = 9;</code>
         */
        public com.google.protobuf.ByteString
        getIBytes() {
            Object ref = i_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                i_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        public static final int J_FIELD_NUMBER = 10;
        private volatile Object j_;

        /**
         * <code>string j = 10;</code>
         */
        public String getJ() {
            Object ref = j_;
            if (ref instanceof String) {
                return (String) ref;
            } else {
                com.google.protobuf.ByteString bs =
                        (com.google.protobuf.ByteString) ref;
                String s = bs.toStringUtf8();
                j_ = s;
                return s;
            }
        }

        /**
         * <code>string j = 10;</code>
         */
        public com.google.protobuf.ByteString
        getJBytes() {
            Object ref = j_;
            if (ref instanceof String) {
                com.google.protobuf.ByteString b =
                        com.google.protobuf.ByteString.copyFromUtf8(
                                (String) ref);
                j_ = b;
                return b;
            } else {
                return (com.google.protobuf.ByteString) ref;
            }
        }

        private byte memoizedIsInitialized = -1;

        @Override
        public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
        }

        @Override
        public void writeTo(com.google.protobuf.CodedOutputStream output)
                throws java.io.IOException {
            if (!getABytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 1, a_);
            }
            if (!getBBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 2, b_);
            }
            if (!getCBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 3, c_);
            }
            if (!getDBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 4, d_);
            }
            if (!getEBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 5, e_);
            }
            if (!getFBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 6, f_);
            }
            if (!getGBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 7, g_);
            }
            if (!getHBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 8, h_);
            }
            if (!getIBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 9, i_);
            }
            if (!getJBytes().isEmpty()) {
                com.google.protobuf.GeneratedMessageV3.writeString(output, 10, j_);
            }
            unknownFields.writeTo(output);
        }

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

            size = 0;
            if (!getABytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, a_);
            }
            if (!getBBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, b_);
            }
            if (!getCBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, c_);
            }
            if (!getDBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, d_);
            }
            if (!getEBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, e_);
            }
            if (!getFBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, f_);
            }
            if (!getGBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, g_);
            }
            if (!getHBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, h_);
            }
            if (!getIBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, i_);
            }
            if (!getJBytes().isEmpty()) {
                size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, j_);
            }
            size += unknownFields.getSerializedSize();
            memoizedSize = size;
            return size;
        }

        @Override
        public boolean equals(final Object obj) {
            if (obj == this) {
                return true;
            }
            if (!(obj instanceof StringObject)) {
                return super.equals(obj);
            }
            StringObject other = (StringObject) obj;

            boolean result = true;
            result = result && getA()
                    .equals(other.getA());
            result = result && getB()
                    .equals(other.getB());
            result = result && getC()
                    .equals(other.getC());
            result = result && getD()
                    .equals(other.getD());
            result = result && getE()
                    .equals(other.getE());
            result = result && getF()
                    .equals(other.getF());
            result = result && getG()
                    .equals(other.getG());
            result = result && getH()
                    .equals(other.getH());
            result = result && getI()
                    .equals(other.getI());
            result = result && getJ()
                    .equals(other.getJ());
            result = result && unknownFields.equals(other.unknownFields);
            return result;
        }

        @Override
        public int hashCode() {
            if (memoizedHashCode != 0) {
                return memoizedHashCode;
            }
            int hash = 41;
            hash = (19 * hash) + getDescriptor().hashCode();
            hash = (37 * hash) + A_FIELD_NUMBER;
            hash = (53 * hash) + getA().hashCode();
            hash = (37 * hash) + B_FIELD_NUMBER;
            hash = (53 * hash) + getB().hashCode();
            hash = (37 * hash) + C_FIELD_NUMBER;
            hash = (53 * hash) + getC().hashCode();
            hash = (37 * hash) + D_FIELD_NUMBER;
            hash = (53 * hash) + getD().hashCode();
            hash = (37 * hash) + E_FIELD_NUMBER;
            hash = (53 * hash) + getE().hashCode();
            hash = (37 * hash) + F_FIELD_NUMBER;
            hash = (53 * hash) + getF().hashCode();
            hash = (37 * hash) + G_FIELD_NUMBER;
            hash = (53 * hash) + getG().hashCode();
            hash = (37 * hash) + H_FIELD_NUMBER;
            hash = (53 * hash) + getH().hashCode();
            hash = (37 * hash) + I_FIELD_NUMBER;
            hash = (53 * hash) + getI().hashCode();
            hash = (37 * hash) + J_FIELD_NUMBER;
            hash = (53 * hash) + getJ().hashCode();
            hash = (29 * hash) + unknownFields.hashCode();
            memoizedHashCode = hash;
            return hash;
        }

        public static StringObject parseFrom(
                java.nio.ByteBuffer data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static StringObject parseFrom(
                java.nio.ByteBuffer data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static StringObject parseFrom(
                com.google.protobuf.ByteString data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static StringObject parseFrom(
                com.google.protobuf.ByteString data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static StringObject parseFrom(byte[] data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static StringObject parseFrom(
                byte[] data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static StringObject parseFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static StringObject 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 StringObject parseDelimitedFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input);
        }

        public static StringObject 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 StringObject parseFrom(
                com.google.protobuf.CodedInputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static StringObject parseFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        @Override
        public Builder newBuilderForType() {
            return newBuilder();
        }

        public static Builder newBuilder() {
            return DEFAULT_INSTANCE.toBuilder();
        }

        public static Builder newBuilder(StringObject prototype) {
            return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
        }

        @Override
        public Builder toBuilder() {
            return this == DEFAULT_INSTANCE
                    ? new Builder() : new Builder().mergeFrom(this);
        }

        @Override
        protected Builder newBuilderForType(
                BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
        }

        /**
         * Protobuf type {@code StringObject}
         */
        public static final class Builder extends
                com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
                // @@protoc_insertion_point(builder_implements:StringObject)
                StringObjectOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
                return FieldProtobufObject.internal_static_StringObject_descriptor;
            }

            @Override
            protected FieldAccessorTable
            internalGetFieldAccessorTable() {
                return FieldProtobufObject.internal_static_StringObject_fieldAccessorTable
                        .ensureFieldAccessorsInitialized(
                                StringObject.class, Builder.class);
            }

            // Construct using com.zfoo.protocol.field.packet.FieldProtobufObject.StringObject.newBuilder()
            private Builder() {
                maybeForceBuilderInitialization();
            }

            private Builder(
                    BuilderParent parent) {
                super(parent);
                maybeForceBuilderInitialization();
            }

            private void maybeForceBuilderInitialization() {
                if (com.google.protobuf.GeneratedMessageV3
                        .alwaysUseFieldBuilders) {
                }
            }

            @Override
            public Builder clear() {
                super.clear();
                a_ = "";

                b_ = "";

                c_ = "";

                d_ = "";

                e_ = "";

                f_ = "";

                g_ = "";

                h_ = "";

                i_ = "";

                j_ = "";

                return this;
            }

            @Override
            public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
                return FieldProtobufObject.internal_static_StringObject_descriptor;
            }

            @Override
            public StringObject getDefaultInstanceForType() {
                return StringObject.getDefaultInstance();
            }

            @Override
            public StringObject build() {
                StringObject result = buildPartial();
                if (!result.isInitialized()) {
                    throw newUninitializedMessageException(result);
                }
                return result;
            }

            @Override
            public StringObject buildPartial() {
                StringObject result = new StringObject(this);
                result.a_ = a_;
                result.b_ = b_;
                result.c_ = c_;
                result.d_ = d_;
                result.e_ = e_;
                result.f_ = f_;
                result.g_ = g_;
                result.h_ = h_;
                result.i_ = i_;
                result.j_ = j_;
                onBuilt();
                return result;
            }

            @Override
            public Builder clone() {
                return (Builder) super.clone();
            }

            @Override
            public Builder setField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.setField(field, value);
            }

            @Override
            public Builder clearField(
                    com.google.protobuf.Descriptors.FieldDescriptor field) {
                return (Builder) super.clearField(field);
            }

            @Override
            public Builder clearOneof(
                    com.google.protobuf.Descriptors.OneofDescriptor oneof) {
                return (Builder) super.clearOneof(oneof);
            }

            @Override
            public Builder setRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    int index, Object value) {
                return (Builder) super.setRepeatedField(field, index, value);
            }

            @Override
            public Builder addRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.addRepeatedField(field, value);
            }

            @Override
            public Builder mergeFrom(com.google.protobuf.Message other) {
                if (other instanceof StringObject) {
                    return mergeFrom((StringObject) other);
                } else {
                    super.mergeFrom(other);
                    return this;
                }
            }

            public Builder mergeFrom(StringObject other) {
                if (other == StringObject.getDefaultInstance()) return this;
                if (!other.getA().isEmpty()) {
                    a_ = other.a_;
                    onChanged();
                }
                if (!other.getB().isEmpty()) {
                    b_ = other.b_;
                    onChanged();
                }
                if (!other.getC().isEmpty()) {
                    c_ = other.c_;
                    onChanged();
                }
                if (!other.getD().isEmpty()) {
                    d_ = other.d_;
                    onChanged();
                }
                if (!other.getE().isEmpty()) {
                    e_ = other.e_;
                    onChanged();
                }
                if (!other.getF().isEmpty()) {
                    f_ = other.f_;
                    onChanged();
                }
                if (!other.getG().isEmpty()) {
                    g_ = other.g_;
                    onChanged();
                }
                if (!other.getH().isEmpty()) {
                    h_ = other.h_;
                    onChanged();
                }
                if (!other.getI().isEmpty()) {
                    i_ = other.i_;
                    onChanged();
                }
                if (!other.getJ().isEmpty()) {
                    j_ = other.j_;
                    onChanged();
                }
                this.mergeUnknownFields(other.unknownFields);
                onChanged();
                return this;
            }

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

            @Override
            public Builder mergeFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws java.io.IOException {
                StringObject parsedMessage = null;
                try {
                    parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
                } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                    parsedMessage = (StringObject) e.getUnfinishedMessage();
                    throw e.unwrapIOException();
                } finally {
                    if (parsedMessage != null) {
                        mergeFrom(parsedMessage);
                    }
                }
                return this;
            }

            private Object a_ = "";

            /**
             * <code>string a = 1;</code>
             */
            public String getA() {
                Object ref = a_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    a_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <code>string a = 1;</code>
             */
            public com.google.protobuf.ByteString
            getABytes() {
                Object ref = a_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    a_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <code>string a = 1;</code>
             */
            public Builder setA(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                a_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>string a = 1;</code>
             */
            public Builder clearA() {

                a_ = getDefaultInstance().getA();
                onChanged();
                return this;
            }

            /**
             * <code>string a = 1;</code>
             */
            public Builder setABytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                a_ = value;
                onChanged();
                return this;
            }

            private Object b_ = "";

            /**
             * <code>string b = 2;</code>
             */
            public String getB() {
                Object ref = b_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    b_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <code>string b = 2;</code>
             */
            public com.google.protobuf.ByteString
            getBBytes() {
                Object ref = b_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    b_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <code>string b = 2;</code>
             */
            public Builder setB(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                b_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>string b = 2;</code>
             */
            public Builder clearB() {

                b_ = getDefaultInstance().getB();
                onChanged();
                return this;
            }

            /**
             * <code>string b = 2;</code>
             */
            public Builder setBBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                b_ = value;
                onChanged();
                return this;
            }

            private Object c_ = "";

            /**
             * <code>string c = 3;</code>
             */
            public String getC() {
                Object ref = c_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    c_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <code>string c = 3;</code>
             */
            public com.google.protobuf.ByteString
            getCBytes() {
                Object ref = c_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    c_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <code>string c = 3;</code>
             */
            public Builder setC(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                c_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>string c = 3;</code>
             */
            public Builder clearC() {

                c_ = getDefaultInstance().getC();
                onChanged();
                return this;
            }

            /**
             * <code>string c = 3;</code>
             */
            public Builder setCBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                c_ = value;
                onChanged();
                return this;
            }

            private Object d_ = "";

            /**
             * <code>string d = 4;</code>
             */
            public String getD() {
                Object ref = d_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    d_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <code>string d = 4;</code>
             */
            public com.google.protobuf.ByteString
            getDBytes() {
                Object ref = d_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    d_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <code>string d = 4;</code>
             */
            public Builder setD(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                d_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>string d = 4;</code>
             */
            public Builder clearD() {

                d_ = getDefaultInstance().getD();
                onChanged();
                return this;
            }

            /**
             * <code>string d = 4;</code>
             */
            public Builder setDBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                d_ = value;
                onChanged();
                return this;
            }

            private Object e_ = "";

            /**
             * <code>string e = 5;</code>
             */
            public String getE() {
                Object ref = e_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    e_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <code>string e = 5;</code>
             */
            public com.google.protobuf.ByteString
            getEBytes() {
                Object ref = e_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    e_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <code>string e = 5;</code>
             */
            public Builder setE(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                e_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>string e = 5;</code>
             */
            public Builder clearE() {

                e_ = getDefaultInstance().getE();
                onChanged();
                return this;
            }

            /**
             * <code>string e = 5;</code>
             */
            public Builder setEBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                e_ = value;
                onChanged();
                return this;
            }

            private Object f_ = "";

            /**
             * <code>string f = 6;</code>
             */
            public String getF() {
                Object ref = f_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    f_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <code>string f = 6;</code>
             */
            public com.google.protobuf.ByteString
            getFBytes() {
                Object ref = f_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    f_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <code>string f = 6;</code>
             */
            public Builder setF(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                f_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>string f = 6;</code>
             */
            public Builder clearF() {

                f_ = getDefaultInstance().getF();
                onChanged();
                return this;
            }

            /**
             * <code>string f = 6;</code>
             */
            public Builder setFBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                f_ = value;
                onChanged();
                return this;
            }

            private Object g_ = "";

            /**
             * <code>string g = 7;</code>
             */
            public String getG() {
                Object ref = g_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    g_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <code>string g = 7;</code>
             */
            public com.google.protobuf.ByteString
            getGBytes() {
                Object ref = g_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    g_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <code>string g = 7;</code>
             */
            public Builder setG(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                g_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>string g = 7;</code>
             */
            public Builder clearG() {

                g_ = getDefaultInstance().getG();
                onChanged();
                return this;
            }

            /**
             * <code>string g = 7;</code>
             */
            public Builder setGBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                g_ = value;
                onChanged();
                return this;
            }

            private Object h_ = "";

            /**
             * <code>string h = 8;</code>
             */
            public String getH() {
                Object ref = h_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    h_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <code>string h = 8;</code>
             */
            public com.google.protobuf.ByteString
            getHBytes() {
                Object ref = h_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    h_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <code>string h = 8;</code>
             */
            public Builder setH(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                h_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>string h = 8;</code>
             */
            public Builder clearH() {

                h_ = getDefaultInstance().getH();
                onChanged();
                return this;
            }

            /**
             * <code>string h = 8;</code>
             */
            public Builder setHBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                h_ = value;
                onChanged();
                return this;
            }

            private Object i_ = "";

            /**
             * <code>string i = 9;</code>
             */
            public String getI() {
                Object ref = i_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    i_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <code>string i = 9;</code>
             */
            public com.google.protobuf.ByteString
            getIBytes() {
                Object ref = i_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    i_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <code>string i = 9;</code>
             */
            public Builder setI(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                i_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>string i = 9;</code>
             */
            public Builder clearI() {

                i_ = getDefaultInstance().getI();
                onChanged();
                return this;
            }

            /**
             * <code>string i = 9;</code>
             */
            public Builder setIBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                i_ = value;
                onChanged();
                return this;
            }

            private Object j_ = "";

            /**
             * <code>string j = 10;</code>
             */
            public String getJ() {
                Object ref = j_;
                if (!(ref instanceof String)) {
                    com.google.protobuf.ByteString bs =
                            (com.google.protobuf.ByteString) ref;
                    String s = bs.toStringUtf8();
                    j_ = s;
                    return s;
                } else {
                    return (String) ref;
                }
            }

            /**
             * <code>string j = 10;</code>
             */
            public com.google.protobuf.ByteString
            getJBytes() {
                Object ref = j_;
                if (ref instanceof String) {
                    com.google.protobuf.ByteString b =
                            com.google.protobuf.ByteString.copyFromUtf8(
                                    (String) ref);
                    j_ = b;
                    return b;
                } else {
                    return (com.google.protobuf.ByteString) ref;
                }
            }

            /**
             * <code>string j = 10;</code>
             */
            public Builder setJ(
                    String value) {
                if (value == null) {
                    throw new NullPointerException();
                }

                j_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>string j = 10;</code>
             */
            public Builder clearJ() {

                j_ = getDefaultInstance().getJ();
                onChanged();
                return this;
            }

            /**
             * <code>string j = 10;</code>
             */
            public Builder setJBytes(
                    com.google.protobuf.ByteString value) {
                if (value == null) {
                    throw new NullPointerException();
                }
                checkByteStringIsUtf8(value);

                j_ = value;
                onChanged();
                return this;
            }

            @Override
            public final Builder setUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.setUnknownFieldsProto3(unknownFields);
            }

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


            // @@protoc_insertion_point(builder_scope:StringObject)
        }

        // @@protoc_insertion_point(class_scope:StringObject)
        private static final StringObject DEFAULT_INSTANCE;

        static {
            DEFAULT_INSTANCE = new StringObject();
        }

        public static StringObject getDefaultInstance() {
            return DEFAULT_INSTANCE;
        }

        private static final com.google.protobuf.Parser<StringObject>
                PARSER = new com.google.protobuf.AbstractParser<StringObject>() {
            @Override
            public StringObject parsePartialFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws com.google.protobuf.InvalidProtocolBufferException {
                return new StringObject(input, extensionRegistry);
            }
        };

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

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

        @Override
        public StringObject getDefaultInstanceForType() {
            return DEFAULT_INSTANCE;
        }

    }

    public interface ListIntegerObjectOrBuilder extends
            // @@protoc_insertion_point(interface_extends:ListIntegerObject)
            com.google.protobuf.MessageOrBuilder {

        /**
         * <code>repeated int32 a = 1;</code>
         */
        java.util.List<Integer> getAList();

        /**
         * <code>repeated int32 a = 1;</code>
         */
        int getACount();

        /**
         * <code>repeated int32 a = 1;</code>
         */
        int getA(int index);

        /**
         * <code>repeated int32 b = 2;</code>
         */
        java.util.List<Integer> getBList();

        /**
         * <code>repeated int32 b = 2;</code>
         */
        int getBCount();

        /**
         * <code>repeated int32 b = 2;</code>
         */
        int getB(int index);

        /**
         * <code>repeated int32 c = 3;</code>
         */
        java.util.List<Integer> getCList();

        /**
         * <code>repeated int32 c = 3;</code>
         */
        int getCCount();

        /**
         * <code>repeated int32 c = 3;</code>
         */
        int getC(int index);

        /**
         * <code>repeated int32 d = 4;</code>
         */
        java.util.List<Integer> getDList();

        /**
         * <code>repeated int32 d = 4;</code>
         */
        int getDCount();

        /**
         * <code>repeated int32 d = 4;</code>
         */
        int getD(int index);

        /**
         * <code>repeated int32 e = 5;</code>
         */
        java.util.List<Integer> getEList();

        /**
         * <code>repeated int32 e = 5;</code>
         */
        int getECount();

        /**
         * <code>repeated int32 e = 5;</code>
         */
        int getE(int index);

        /**
         * <code>repeated int32 f = 6;</code>
         */
        java.util.List<Integer> getFList();

        /**
         * <code>repeated int32 f = 6;</code>
         */
        int getFCount();

        /**
         * <code>repeated int32 f = 6;</code>
         */
        int getF(int index);

        /**
         * <code>repeated int32 g = 7;</code>
         */
        java.util.List<Integer> getGList();

        /**
         * <code>repeated int32 g = 7;</code>
         */
        int getGCount();

        /**
         * <code>repeated int32 g = 7;</code>
         */
        int getG(int index);

        /**
         * <code>repeated int32 h = 8;</code>
         */
        java.util.List<Integer> getHList();

        /**
         * <code>repeated int32 h = 8;</code>
         */
        int getHCount();

        /**
         * <code>repeated int32 h = 8;</code>
         */
        int getH(int index);

        /**
         * <code>repeated int32 i = 9;</code>
         */
        java.util.List<Integer> getIList();

        /**
         * <code>repeated int32 i = 9;</code>
         */
        int getICount();

        /**
         * <code>repeated int32 i = 9;</code>
         */
        int getI(int index);

        /**
         * <code>repeated int32 j = 10;</code>
         */
        java.util.List<Integer> getJList();

        /**
         * <code>repeated int32 j = 10;</code>
         */
        int getJCount();

        /**
         * <code>repeated int32 j = 10;</code>
         */
        int getJ(int index);
    }

    /**
     * Protobuf type {@code ListIntegerObject}
     */
    public static final class ListIntegerObject extends
            com.google.protobuf.GeneratedMessageV3 implements
            // @@protoc_insertion_point(message_implements:ListIntegerObject)
            ListIntegerObjectOrBuilder {
        private static final long serialVersionUID = 0L;

        // Use ListIntegerObject.newBuilder() to construct.
        private ListIntegerObject(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
            super(builder);
        }

        private ListIntegerObject() {
            a_ = java.util.Collections.emptyList();
            b_ = java.util.Collections.emptyList();
            c_ = java.util.Collections.emptyList();
            d_ = java.util.Collections.emptyList();
            e_ = java.util.Collections.emptyList();
            f_ = java.util.Collections.emptyList();
            g_ = java.util.Collections.emptyList();
            h_ = java.util.Collections.emptyList();
            i_ = java.util.Collections.emptyList();
            j_ = java.util.Collections.emptyList();
        }

        @Override
        public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
            return this.unknownFields;
        }

        private ListIntegerObject(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            this();
            if (extensionRegistry == null) {
                throw new NullPointerException();
            }
            int mutable_bitField0_ = 0;
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                    com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
                boolean done = false;
                while (!done) {
                    int tag = input.readTag();
                    switch (tag) {
                        case 0:
                            done = true;
                            break;
                        case 8: {
                            if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                                a_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000001;
                            }
                            a_.add(input.readInt32());
                            break;
                        }
                        case 10: {
                            int length = input.readRawVarint32();
                            int limit = input.pushLimit(length);
                            if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
                                a_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000001;
                            }
                            while (input.getBytesUntilLimit() > 0) {
                                a_.add(input.readInt32());
                            }
                            input.popLimit(limit);
                            break;
                        }
                        case 16: {
                            if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                                b_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000002;
                            }
                            b_.add(input.readInt32());
                            break;
                        }
                        case 18: {
                            int length = input.readRawVarint32();
                            int limit = input.pushLimit(length);
                            if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
                                b_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000002;
                            }
                            while (input.getBytesUntilLimit() > 0) {
                                b_.add(input.readInt32());
                            }
                            input.popLimit(limit);
                            break;
                        }
                        case 24: {
                            if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
                                c_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000004;
                            }
                            c_.add(input.readInt32());
                            break;
                        }
                        case 26: {
                            int length = input.readRawVarint32();
                            int limit = input.pushLimit(length);
                            if (!((mutable_bitField0_ & 0x00000004) == 0x00000004) && input.getBytesUntilLimit() > 0) {
                                c_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000004;
                            }
                            while (input.getBytesUntilLimit() > 0) {
                                c_.add(input.readInt32());
                            }
                            input.popLimit(limit);
                            break;
                        }
                        case 32: {
                            if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
                                d_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000008;
                            }
                            d_.add(input.readInt32());
                            break;
                        }
                        case 34: {
                            int length = input.readRawVarint32();
                            int limit = input.pushLimit(length);
                            if (!((mutable_bitField0_ & 0x00000008) == 0x00000008) && input.getBytesUntilLimit() > 0) {
                                d_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000008;
                            }
                            while (input.getBytesUntilLimit() > 0) {
                                d_.add(input.readInt32());
                            }
                            input.popLimit(limit);
                            break;
                        }
                        case 40: {
                            if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
                                e_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000010;
                            }
                            e_.add(input.readInt32());
                            break;
                        }
                        case 42: {
                            int length = input.readRawVarint32();
                            int limit = input.pushLimit(length);
                            if (!((mutable_bitField0_ & 0x00000010) == 0x00000010) && input.getBytesUntilLimit() > 0) {
                                e_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000010;
                            }
                            while (input.getBytesUntilLimit() > 0) {
                                e_.add(input.readInt32());
                            }
                            input.popLimit(limit);
                            break;
                        }
                        case 48: {
                            if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
                                f_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000020;
                            }
                            f_.add(input.readInt32());
                            break;
                        }
                        case 50: {
                            int length = input.readRawVarint32();
                            int limit = input.pushLimit(length);
                            if (!((mutable_bitField0_ & 0x00000020) == 0x00000020) && input.getBytesUntilLimit() > 0) {
                                f_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000020;
                            }
                            while (input.getBytesUntilLimit() > 0) {
                                f_.add(input.readInt32());
                            }
                            input.popLimit(limit);
                            break;
                        }
                        case 56: {
                            if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
                                g_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000040;
                            }
                            g_.add(input.readInt32());
                            break;
                        }
                        case 58: {
                            int length = input.readRawVarint32();
                            int limit = input.pushLimit(length);
                            if (!((mutable_bitField0_ & 0x00000040) == 0x00000040) && input.getBytesUntilLimit() > 0) {
                                g_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000040;
                            }
                            while (input.getBytesUntilLimit() > 0) {
                                g_.add(input.readInt32());
                            }
                            input.popLimit(limit);
                            break;
                        }
                        case 64: {
                            if (!((mutable_bitField0_ & 0x00000080) == 0x00000080)) {
                                h_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000080;
                            }
                            h_.add(input.readInt32());
                            break;
                        }
                        case 66: {
                            int length = input.readRawVarint32();
                            int limit = input.pushLimit(length);
                            if (!((mutable_bitField0_ & 0x00000080) == 0x00000080) && input.getBytesUntilLimit() > 0) {
                                h_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000080;
                            }
                            while (input.getBytesUntilLimit() > 0) {
                                h_.add(input.readInt32());
                            }
                            input.popLimit(limit);
                            break;
                        }
                        case 72: {
                            if (!((mutable_bitField0_ & 0x00000100) == 0x00000100)) {
                                i_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000100;
                            }
                            i_.add(input.readInt32());
                            break;
                        }
                        case 74: {
                            int length = input.readRawVarint32();
                            int limit = input.pushLimit(length);
                            if (!((mutable_bitField0_ & 0x00000100) == 0x00000100) && input.getBytesUntilLimit() > 0) {
                                i_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000100;
                            }
                            while (input.getBytesUntilLimit() > 0) {
                                i_.add(input.readInt32());
                            }
                            input.popLimit(limit);
                            break;
                        }
                        case 80: {
                            if (!((mutable_bitField0_ & 0x00000200) == 0x00000200)) {
                                j_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000200;
                            }
                            j_.add(input.readInt32());
                            break;
                        }
                        case 82: {
                            int length = input.readRawVarint32();
                            int limit = input.pushLimit(length);
                            if (!((mutable_bitField0_ & 0x00000200) == 0x00000200) && input.getBytesUntilLimit() > 0) {
                                j_ = new java.util.ArrayList<Integer>();
                                mutable_bitField0_ |= 0x00000200;
                            }
                            while (input.getBytesUntilLimit() > 0) {
                                j_.add(input.readInt32());
                            }
                            input.popLimit(limit);
                            break;
                        }
                        default: {
                            if (!parseUnknownFieldProto3(
                                    input, unknownFields, extensionRegistry, tag)) {
                                done = true;
                            }
                            break;
                        }
                    }
                }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
                throw new com.google.protobuf.InvalidProtocolBufferException(
                        e).setUnfinishedMessage(this);
            } finally {
                if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                    a_ = java.util.Collections.unmodifiableList(a_);
                }
                if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                    b_ = java.util.Collections.unmodifiableList(b_);
                }
                if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
                    c_ = java.util.Collections.unmodifiableList(c_);
                }
                if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
                    d_ = java.util.Collections.unmodifiableList(d_);
                }
                if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
                    e_ = java.util.Collections.unmodifiableList(e_);
                }
                if (((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
                    f_ = java.util.Collections.unmodifiableList(f_);
                }
                if (((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
                    g_ = java.util.Collections.unmodifiableList(g_);
                }
                if (((mutable_bitField0_ & 0x00000080) == 0x00000080)) {
                    h_ = java.util.Collections.unmodifiableList(h_);
                }
                if (((mutable_bitField0_ & 0x00000100) == 0x00000100)) {
                    i_ = java.util.Collections.unmodifiableList(i_);
                }
                if (((mutable_bitField0_ & 0x00000200) == 0x00000200)) {
                    j_ = java.util.Collections.unmodifiableList(j_);
                }
                this.unknownFields = unknownFields.build();
                makeExtensionsImmutable();
            }
        }

        public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
            return FieldProtobufObject.internal_static_ListIntegerObject_descriptor;
        }

        @Override
        protected FieldAccessorTable
        internalGetFieldAccessorTable() {
            return FieldProtobufObject.internal_static_ListIntegerObject_fieldAccessorTable
                    .ensureFieldAccessorsInitialized(
                            ListIntegerObject.class, Builder.class);
        }

        public static final int A_FIELD_NUMBER = 1;
        private java.util.List<Integer> a_;

        /**
         * <code>repeated int32 a = 1;</code>
         */
        public java.util.List<Integer>
        getAList() {
            return a_;
        }

        /**
         * <code>repeated int32 a = 1;</code>
         */
        public int getACount() {
            return a_.size();
        }

        /**
         * <code>repeated int32 a = 1;</code>
         */
        public int getA(int index) {
            return a_.get(index);
        }

        private int aMemoizedSerializedSize = -1;

        public static final int B_FIELD_NUMBER = 2;
        private java.util.List<Integer> b_;

        /**
         * <code>repeated int32 b = 2;</code>
         */
        public java.util.List<Integer>
        getBList() {
            return b_;
        }

        /**
         * <code>repeated int32 b = 2;</code>
         */
        public int getBCount() {
            return b_.size();
        }

        /**
         * <code>repeated int32 b = 2;</code>
         */
        public int getB(int index) {
            return b_.get(index);
        }

        private int bMemoizedSerializedSize = -1;

        public static final int C_FIELD_NUMBER = 3;
        private java.util.List<Integer> c_;

        /**
         * <code>repeated int32 c = 3;</code>
         */
        public java.util.List<Integer>
        getCList() {
            return c_;
        }

        /**
         * <code>repeated int32 c = 3;</code>
         */
        public int getCCount() {
            return c_.size();
        }

        /**
         * <code>repeated int32 c = 3;</code>
         */
        public int getC(int index) {
            return c_.get(index);
        }

        private int cMemoizedSerializedSize = -1;

        public static final int D_FIELD_NUMBER = 4;
        private java.util.List<Integer> d_;

        /**
         * <code>repeated int32 d = 4;</code>
         */
        public java.util.List<Integer>
        getDList() {
            return d_;
        }

        /**
         * <code>repeated int32 d = 4;</code>
         */
        public int getDCount() {
            return d_.size();
        }

        /**
         * <code>repeated int32 d = 4;</code>
         */
        public int getD(int index) {
            return d_.get(index);
        }

        private int dMemoizedSerializedSize = -1;

        public static final int E_FIELD_NUMBER = 5;
        private java.util.List<Integer> e_;

        /**
         * <code>repeated int32 e = 5;</code>
         */
        public java.util.List<Integer>
        getEList() {
            return e_;
        }

        /**
         * <code>repeated int32 e = 5;</code>
         */
        public int getECount() {
            return e_.size();
        }

        /**
         * <code>repeated int32 e = 5;</code>
         */
        public int getE(int index) {
            return e_.get(index);
        }

        private int eMemoizedSerializedSize = -1;

        public static final int F_FIELD_NUMBER = 6;
        private java.util.List<Integer> f_;

        /**
         * <code>repeated int32 f = 6;</code>
         */
        public java.util.List<Integer>
        getFList() {
            return f_;
        }

        /**
         * <code>repeated int32 f = 6;</code>
         */
        public int getFCount() {
            return f_.size();
        }

        /**
         * <code>repeated int32 f = 6;</code>
         */
        public int getF(int index) {
            return f_.get(index);
        }

        private int fMemoizedSerializedSize = -1;

        public static final int G_FIELD_NUMBER = 7;
        private java.util.List<Integer> g_;

        /**
         * <code>repeated int32 g = 7;</code>
         */
        public java.util.List<Integer>
        getGList() {
            return g_;
        }

        /**
         * <code>repeated int32 g = 7;</code>
         */
        public int getGCount() {
            return g_.size();
        }

        /**
         * <code>repeated int32 g = 7;</code>
         */
        public int getG(int index) {
            return g_.get(index);
        }

        private int gMemoizedSerializedSize = -1;

        public static final int H_FIELD_NUMBER = 8;
        private java.util.List<Integer> h_;

        /**
         * <code>repeated int32 h = 8;</code>
         */
        public java.util.List<Integer>
        getHList() {
            return h_;
        }

        /**
         * <code>repeated int32 h = 8;</code>
         */
        public int getHCount() {
            return h_.size();
        }

        /**
         * <code>repeated int32 h = 8;</code>
         */
        public int getH(int index) {
            return h_.get(index);
        }

        private int hMemoizedSerializedSize = -1;

        public static final int I_FIELD_NUMBER = 9;
        private java.util.List<Integer> i_;

        /**
         * <code>repeated int32 i = 9;</code>
         */
        public java.util.List<Integer>
        getIList() {
            return i_;
        }

        /**
         * <code>repeated int32 i = 9;</code>
         */
        public int getICount() {
            return i_.size();
        }

        /**
         * <code>repeated int32 i = 9;</code>
         */
        public int getI(int index) {
            return i_.get(index);
        }

        private int iMemoizedSerializedSize = -1;

        public static final int J_FIELD_NUMBER = 10;
        private java.util.List<Integer> j_;

        /**
         * <code>repeated int32 j = 10;</code>
         */
        public java.util.List<Integer>
        getJList() {
            return j_;
        }

        /**
         * <code>repeated int32 j = 10;</code>
         */
        public int getJCount() {
            return j_.size();
        }

        /**
         * <code>repeated int32 j = 10;</code>
         */
        public int getJ(int index) {
            return j_.get(index);
        }

        private int jMemoizedSerializedSize = -1;

        private byte memoizedIsInitialized = -1;

        @Override
        public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
        }

        @Override
        public void writeTo(com.google.protobuf.CodedOutputStream output)
                throws java.io.IOException {
            getSerializedSize();
            if (getAList().size() > 0) {
                output.writeUInt32NoTag(10);
                output.writeUInt32NoTag(aMemoizedSerializedSize);
            }
            for (int i = 0; i < a_.size(); i++) {
                output.writeInt32NoTag(a_.get(i));
            }
            if (getBList().size() > 0) {
                output.writeUInt32NoTag(18);
                output.writeUInt32NoTag(bMemoizedSerializedSize);
            }
            for (int i = 0; i < b_.size(); i++) {
                output.writeInt32NoTag(b_.get(i));
            }
            if (getCList().size() > 0) {
                output.writeUInt32NoTag(26);
                output.writeUInt32NoTag(cMemoizedSerializedSize);
            }
            for (int i = 0; i < c_.size(); i++) {
                output.writeInt32NoTag(c_.get(i));
            }
            if (getDList().size() > 0) {
                output.writeUInt32NoTag(34);
                output.writeUInt32NoTag(dMemoizedSerializedSize);
            }
            for (int i = 0; i < d_.size(); i++) {
                output.writeInt32NoTag(d_.get(i));
            }
            if (getEList().size() > 0) {
                output.writeUInt32NoTag(42);
                output.writeUInt32NoTag(eMemoizedSerializedSize);
            }
            for (int i = 0; i < e_.size(); i++) {
                output.writeInt32NoTag(e_.get(i));
            }
            if (getFList().size() > 0) {
                output.writeUInt32NoTag(50);
                output.writeUInt32NoTag(fMemoizedSerializedSize);
            }
            for (int i = 0; i < f_.size(); i++) {
                output.writeInt32NoTag(f_.get(i));
            }
            if (getGList().size() > 0) {
                output.writeUInt32NoTag(58);
                output.writeUInt32NoTag(gMemoizedSerializedSize);
            }
            for (int i = 0; i < g_.size(); i++) {
                output.writeInt32NoTag(g_.get(i));
            }
            if (getHList().size() > 0) {
                output.writeUInt32NoTag(66);
                output.writeUInt32NoTag(hMemoizedSerializedSize);
            }
            for (int i = 0; i < h_.size(); i++) {
                output.writeInt32NoTag(h_.get(i));
            }
            if (getIList().size() > 0) {
                output.writeUInt32NoTag(74);
                output.writeUInt32NoTag(iMemoizedSerializedSize);
            }
            for (int i = 0; i < i_.size(); i++) {
                output.writeInt32NoTag(i_.get(i));
            }
            if (getJList().size() > 0) {
                output.writeUInt32NoTag(82);
                output.writeUInt32NoTag(jMemoizedSerializedSize);
            }
            for (int i = 0; i < j_.size(); i++) {
                output.writeInt32NoTag(j_.get(i));
            }
            unknownFields.writeTo(output);
        }

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

            size = 0;
            {
                int dataSize = 0;
                for (int i = 0; i < a_.size(); i++) {
                    dataSize += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(a_.get(i));
                }
                size += dataSize;
                if (!getAList().isEmpty()) {
                    size += 1;
                    size += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(dataSize);
                }
                aMemoizedSerializedSize = dataSize;
            }
            {
                int dataSize = 0;
                for (int i = 0; i < b_.size(); i++) {
                    dataSize += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(b_.get(i));
                }
                size += dataSize;
                if (!getBList().isEmpty()) {
                    size += 1;
                    size += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(dataSize);
                }
                bMemoizedSerializedSize = dataSize;
            }
            {
                int dataSize = 0;
                for (int i = 0; i < c_.size(); i++) {
                    dataSize += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(c_.get(i));
                }
                size += dataSize;
                if (!getCList().isEmpty()) {
                    size += 1;
                    size += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(dataSize);
                }
                cMemoizedSerializedSize = dataSize;
            }
            {
                int dataSize = 0;
                for (int i = 0; i < d_.size(); i++) {
                    dataSize += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(d_.get(i));
                }
                size += dataSize;
                if (!getDList().isEmpty()) {
                    size += 1;
                    size += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(dataSize);
                }
                dMemoizedSerializedSize = dataSize;
            }
            {
                int dataSize = 0;
                for (int i = 0; i < e_.size(); i++) {
                    dataSize += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(e_.get(i));
                }
                size += dataSize;
                if (!getEList().isEmpty()) {
                    size += 1;
                    size += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(dataSize);
                }
                eMemoizedSerializedSize = dataSize;
            }
            {
                int dataSize = 0;
                for (int i = 0; i < f_.size(); i++) {
                    dataSize += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(f_.get(i));
                }
                size += dataSize;
                if (!getFList().isEmpty()) {
                    size += 1;
                    size += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(dataSize);
                }
                fMemoizedSerializedSize = dataSize;
            }
            {
                int dataSize = 0;
                for (int i = 0; i < g_.size(); i++) {
                    dataSize += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(g_.get(i));
                }
                size += dataSize;
                if (!getGList().isEmpty()) {
                    size += 1;
                    size += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(dataSize);
                }
                gMemoizedSerializedSize = dataSize;
            }
            {
                int dataSize = 0;
                for (int i = 0; i < h_.size(); i++) {
                    dataSize += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(h_.get(i));
                }
                size += dataSize;
                if (!getHList().isEmpty()) {
                    size += 1;
                    size += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(dataSize);
                }
                hMemoizedSerializedSize = dataSize;
            }
            {
                int dataSize = 0;
                for (int i = 0; i < i_.size(); i++) {
                    dataSize += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(i_.get(i));
                }
                size += dataSize;
                if (!getIList().isEmpty()) {
                    size += 1;
                    size += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(dataSize);
                }
                iMemoizedSerializedSize = dataSize;
            }
            {
                int dataSize = 0;
                for (int i = 0; i < j_.size(); i++) {
                    dataSize += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(j_.get(i));
                }
                size += dataSize;
                if (!getJList().isEmpty()) {
                    size += 1;
                    size += com.google.protobuf.CodedOutputStream
                            .computeInt32SizeNoTag(dataSize);
                }
                jMemoizedSerializedSize = dataSize;
            }
            size += unknownFields.getSerializedSize();
            memoizedSize = size;
            return size;
        }

        @Override
        public boolean equals(final Object obj) {
            if (obj == this) {
                return true;
            }
            if (!(obj instanceof ListIntegerObject)) {
                return super.equals(obj);
            }
            ListIntegerObject other = (ListIntegerObject) obj;

            boolean result = true;
            result = result && getAList()
                    .equals(other.getAList());
            result = result && getBList()
                    .equals(other.getBList());
            result = result && getCList()
                    .equals(other.getCList());
            result = result && getDList()
                    .equals(other.getDList());
            result = result && getEList()
                    .equals(other.getEList());
            result = result && getFList()
                    .equals(other.getFList());
            result = result && getGList()
                    .equals(other.getGList());
            result = result && getHList()
                    .equals(other.getHList());
            result = result && getIList()
                    .equals(other.getIList());
            result = result && getJList()
                    .equals(other.getJList());
            result = result && unknownFields.equals(other.unknownFields);
            return result;
        }

        @Override
        public int hashCode() {
            if (memoizedHashCode != 0) {
                return memoizedHashCode;
            }
            int hash = 41;
            hash = (19 * hash) + getDescriptor().hashCode();
            if (getACount() > 0) {
                hash = (37 * hash) + A_FIELD_NUMBER;
                hash = (53 * hash) + getAList().hashCode();
            }
            if (getBCount() > 0) {
                hash = (37 * hash) + B_FIELD_NUMBER;
                hash = (53 * hash) + getBList().hashCode();
            }
            if (getCCount() > 0) {
                hash = (37 * hash) + C_FIELD_NUMBER;
                hash = (53 * hash) + getCList().hashCode();
            }
            if (getDCount() > 0) {
                hash = (37 * hash) + D_FIELD_NUMBER;
                hash = (53 * hash) + getDList().hashCode();
            }
            if (getECount() > 0) {
                hash = (37 * hash) + E_FIELD_NUMBER;
                hash = (53 * hash) + getEList().hashCode();
            }
            if (getFCount() > 0) {
                hash = (37 * hash) + F_FIELD_NUMBER;
                hash = (53 * hash) + getFList().hashCode();
            }
            if (getGCount() > 0) {
                hash = (37 * hash) + G_FIELD_NUMBER;
                hash = (53 * hash) + getGList().hashCode();
            }
            if (getHCount() > 0) {
                hash = (37 * hash) + H_FIELD_NUMBER;
                hash = (53 * hash) + getHList().hashCode();
            }
            if (getICount() > 0) {
                hash = (37 * hash) + I_FIELD_NUMBER;
                hash = (53 * hash) + getIList().hashCode();
            }
            if (getJCount() > 0) {
                hash = (37 * hash) + J_FIELD_NUMBER;
                hash = (53 * hash) + getJList().hashCode();
            }
            hash = (29 * hash) + unknownFields.hashCode();
            memoizedHashCode = hash;
            return hash;
        }

        public static ListIntegerObject parseFrom(
                java.nio.ByteBuffer data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static ListIntegerObject parseFrom(
                java.nio.ByteBuffer data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static ListIntegerObject parseFrom(
                com.google.protobuf.ByteString data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static ListIntegerObject parseFrom(
                com.google.protobuf.ByteString data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static ListIntegerObject parseFrom(byte[] data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static ListIntegerObject parseFrom(
                byte[] data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static ListIntegerObject parseFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static ListIntegerObject 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 ListIntegerObject parseDelimitedFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input);
        }

        public static ListIntegerObject 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 ListIntegerObject parseFrom(
                com.google.protobuf.CodedInputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static ListIntegerObject parseFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        @Override
        public Builder newBuilderForType() {
            return newBuilder();
        }

        public static Builder newBuilder() {
            return DEFAULT_INSTANCE.toBuilder();
        }

        public static Builder newBuilder(ListIntegerObject prototype) {
            return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
        }

        @Override
        public Builder toBuilder() {
            return this == DEFAULT_INSTANCE
                    ? new Builder() : new Builder().mergeFrom(this);
        }

        @Override
        protected Builder newBuilderForType(
                BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
        }

        /**
         * Protobuf type {@code ListIntegerObject}
         */
        public static final class Builder extends
                com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
                // @@protoc_insertion_point(builder_implements:ListIntegerObject)
                ListIntegerObjectOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
                return FieldProtobufObject.internal_static_ListIntegerObject_descriptor;
            }

            @Override
            protected FieldAccessorTable
            internalGetFieldAccessorTable() {
                return FieldProtobufObject.internal_static_ListIntegerObject_fieldAccessorTable
                        .ensureFieldAccessorsInitialized(
                                ListIntegerObject.class, Builder.class);
            }

            // Construct using com.zfoo.protocol.field.packet.FieldProtobufObject.ListIntegerObject.newBuilder()
            private Builder() {
                maybeForceBuilderInitialization();
            }

            private Builder(
                    BuilderParent parent) {
                super(parent);
                maybeForceBuilderInitialization();
            }

            private void maybeForceBuilderInitialization() {
                if (com.google.protobuf.GeneratedMessageV3
                        .alwaysUseFieldBuilders) {
                }
            }

            @Override
            public Builder clear() {
                super.clear();
                a_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000001);
                b_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000002);
                c_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000004);
                d_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000008);
                e_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000010);
                f_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000020);
                g_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000040);
                h_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000080);
                i_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000100);
                j_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000200);
                return this;
            }

            @Override
            public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
                return FieldProtobufObject.internal_static_ListIntegerObject_descriptor;
            }

            @Override
            public ListIntegerObject getDefaultInstanceForType() {
                return ListIntegerObject.getDefaultInstance();
            }

            @Override
            public ListIntegerObject build() {
                ListIntegerObject result = buildPartial();
                if (!result.isInitialized()) {
                    throw newUninitializedMessageException(result);
                }
                return result;
            }

            @Override
            public ListIntegerObject buildPartial() {
                ListIntegerObject result = new ListIntegerObject(this);
                int from_bitField0_ = bitField0_;
                if (((bitField0_ & 0x00000001) == 0x00000001)) {
                    a_ = java.util.Collections.unmodifiableList(a_);
                    bitField0_ = (bitField0_ & ~0x00000001);
                }
                result.a_ = a_;
                if (((bitField0_ & 0x00000002) == 0x00000002)) {
                    b_ = java.util.Collections.unmodifiableList(b_);
                    bitField0_ = (bitField0_ & ~0x00000002);
                }
                result.b_ = b_;
                if (((bitField0_ & 0x00000004) == 0x00000004)) {
                    c_ = java.util.Collections.unmodifiableList(c_);
                    bitField0_ = (bitField0_ & ~0x00000004);
                }
                result.c_ = c_;
                if (((bitField0_ & 0x00000008) == 0x00000008)) {
                    d_ = java.util.Collections.unmodifiableList(d_);
                    bitField0_ = (bitField0_ & ~0x00000008);
                }
                result.d_ = d_;
                if (((bitField0_ & 0x00000010) == 0x00000010)) {
                    e_ = java.util.Collections.unmodifiableList(e_);
                    bitField0_ = (bitField0_ & ~0x00000010);
                }
                result.e_ = e_;
                if (((bitField0_ & 0x00000020) == 0x00000020)) {
                    f_ = java.util.Collections.unmodifiableList(f_);
                    bitField0_ = (bitField0_ & ~0x00000020);
                }
                result.f_ = f_;
                if (((bitField0_ & 0x00000040) == 0x00000040)) {
                    g_ = java.util.Collections.unmodifiableList(g_);
                    bitField0_ = (bitField0_ & ~0x00000040);
                }
                result.g_ = g_;
                if (((bitField0_ & 0x00000080) == 0x00000080)) {
                    h_ = java.util.Collections.unmodifiableList(h_);
                    bitField0_ = (bitField0_ & ~0x00000080);
                }
                result.h_ = h_;
                if (((bitField0_ & 0x00000100) == 0x00000100)) {
                    i_ = java.util.Collections.unmodifiableList(i_);
                    bitField0_ = (bitField0_ & ~0x00000100);
                }
                result.i_ = i_;
                if (((bitField0_ & 0x00000200) == 0x00000200)) {
                    j_ = java.util.Collections.unmodifiableList(j_);
                    bitField0_ = (bitField0_ & ~0x00000200);
                }
                result.j_ = j_;
                onBuilt();
                return result;
            }

            @Override
            public Builder clone() {
                return (Builder) super.clone();
            }

            @Override
            public Builder setField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.setField(field, value);
            }

            @Override
            public Builder clearField(
                    com.google.protobuf.Descriptors.FieldDescriptor field) {
                return (Builder) super.clearField(field);
            }

            @Override
            public Builder clearOneof(
                    com.google.protobuf.Descriptors.OneofDescriptor oneof) {
                return (Builder) super.clearOneof(oneof);
            }

            @Override
            public Builder setRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    int index, Object value) {
                return (Builder) super.setRepeatedField(field, index, value);
            }

            @Override
            public Builder addRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.addRepeatedField(field, value);
            }

            @Override
            public Builder mergeFrom(com.google.protobuf.Message other) {
                if (other instanceof ListIntegerObject) {
                    return mergeFrom((ListIntegerObject) other);
                } else {
                    super.mergeFrom(other);
                    return this;
                }
            }

            public Builder mergeFrom(ListIntegerObject other) {
                if (other == ListIntegerObject.getDefaultInstance()) return this;
                if (!other.a_.isEmpty()) {
                    if (a_.isEmpty()) {
                        a_ = other.a_;
                        bitField0_ = (bitField0_ & ~0x00000001);
                    } else {
                        ensureAIsMutable();
                        a_.addAll(other.a_);
                    }
                    onChanged();
                }
                if (!other.b_.isEmpty()) {
                    if (b_.isEmpty()) {
                        b_ = other.b_;
                        bitField0_ = (bitField0_ & ~0x00000002);
                    } else {
                        ensureBIsMutable();
                        b_.addAll(other.b_);
                    }
                    onChanged();
                }
                if (!other.c_.isEmpty()) {
                    if (c_.isEmpty()) {
                        c_ = other.c_;
                        bitField0_ = (bitField0_ & ~0x00000004);
                    } else {
                        ensureCIsMutable();
                        c_.addAll(other.c_);
                    }
                    onChanged();
                }
                if (!other.d_.isEmpty()) {
                    if (d_.isEmpty()) {
                        d_ = other.d_;
                        bitField0_ = (bitField0_ & ~0x00000008);
                    } else {
                        ensureDIsMutable();
                        d_.addAll(other.d_);
                    }
                    onChanged();
                }
                if (!other.e_.isEmpty()) {
                    if (e_.isEmpty()) {
                        e_ = other.e_;
                        bitField0_ = (bitField0_ & ~0x00000010);
                    } else {
                        ensureEIsMutable();
                        e_.addAll(other.e_);
                    }
                    onChanged();
                }
                if (!other.f_.isEmpty()) {
                    if (f_.isEmpty()) {
                        f_ = other.f_;
                        bitField0_ = (bitField0_ & ~0x00000020);
                    } else {
                        ensureFIsMutable();
                        f_.addAll(other.f_);
                    }
                    onChanged();
                }
                if (!other.g_.isEmpty()) {
                    if (g_.isEmpty()) {
                        g_ = other.g_;
                        bitField0_ = (bitField0_ & ~0x00000040);
                    } else {
                        ensureGIsMutable();
                        g_.addAll(other.g_);
                    }
                    onChanged();
                }
                if (!other.h_.isEmpty()) {
                    if (h_.isEmpty()) {
                        h_ = other.h_;
                        bitField0_ = (bitField0_ & ~0x00000080);
                    } else {
                        ensureHIsMutable();
                        h_.addAll(other.h_);
                    }
                    onChanged();
                }
                if (!other.i_.isEmpty()) {
                    if (i_.isEmpty()) {
                        i_ = other.i_;
                        bitField0_ = (bitField0_ & ~0x00000100);
                    } else {
                        ensureIIsMutable();
                        i_.addAll(other.i_);
                    }
                    onChanged();
                }
                if (!other.j_.isEmpty()) {
                    if (j_.isEmpty()) {
                        j_ = other.j_;
                        bitField0_ = (bitField0_ & ~0x00000200);
                    } else {
                        ensureJIsMutable();
                        j_.addAll(other.j_);
                    }
                    onChanged();
                }
                this.mergeUnknownFields(other.unknownFields);
                onChanged();
                return this;
            }

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

            @Override
            public Builder mergeFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws java.io.IOException {
                ListIntegerObject parsedMessage = null;
                try {
                    parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
                } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                    parsedMessage = (ListIntegerObject) e.getUnfinishedMessage();
                    throw e.unwrapIOException();
                } finally {
                    if (parsedMessage != null) {
                        mergeFrom(parsedMessage);
                    }
                }
                return this;
            }

            private int bitField0_;

            private java.util.List<Integer> a_ = java.util.Collections.emptyList();

            private void ensureAIsMutable() {
                if (!((bitField0_ & 0x00000001) == 0x00000001)) {
                    a_ = new java.util.ArrayList<Integer>(a_);
                    bitField0_ |= 0x00000001;
                }
            }

            /**
             * <code>repeated int32 a = 1;</code>
             */
            public java.util.List<Integer>
            getAList() {
                return java.util.Collections.unmodifiableList(a_);
            }

            /**
             * <code>repeated int32 a = 1;</code>
             */
            public int getACount() {
                return a_.size();
            }

            /**
             * <code>repeated int32 a = 1;</code>
             */
            public int getA(int index) {
                return a_.get(index);
            }

            /**
             * <code>repeated int32 a = 1;</code>
             */
            public Builder setA(
                    int index, int value) {
                ensureAIsMutable();
                a_.set(index, value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 a = 1;</code>
             */
            public Builder addA(int value) {
                ensureAIsMutable();
                a_.add(value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 a = 1;</code>
             */
            public Builder addAllA(
                    Iterable<? extends Integer> values) {
                ensureAIsMutable();
                com.google.protobuf.AbstractMessageLite.Builder.addAll(
                        values, a_);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 a = 1;</code>
             */
            public Builder clearA() {
                a_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000001);
                onChanged();
                return this;
            }

            private java.util.List<Integer> b_ = java.util.Collections.emptyList();

            private void ensureBIsMutable() {
                if (!((bitField0_ & 0x00000002) == 0x00000002)) {
                    b_ = new java.util.ArrayList<Integer>(b_);
                    bitField0_ |= 0x00000002;
                }
            }

            /**
             * <code>repeated int32 b = 2;</code>
             */
            public java.util.List<Integer>
            getBList() {
                return java.util.Collections.unmodifiableList(b_);
            }

            /**
             * <code>repeated int32 b = 2;</code>
             */
            public int getBCount() {
                return b_.size();
            }

            /**
             * <code>repeated int32 b = 2;</code>
             */
            public int getB(int index) {
                return b_.get(index);
            }

            /**
             * <code>repeated int32 b = 2;</code>
             */
            public Builder setB(
                    int index, int value) {
                ensureBIsMutable();
                b_.set(index, value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 b = 2;</code>
             */
            public Builder addB(int value) {
                ensureBIsMutable();
                b_.add(value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 b = 2;</code>
             */
            public Builder addAllB(
                    Iterable<? extends Integer> values) {
                ensureBIsMutable();
                com.google.protobuf.AbstractMessageLite.Builder.addAll(
                        values, b_);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 b = 2;</code>
             */
            public Builder clearB() {
                b_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000002);
                onChanged();
                return this;
            }

            private java.util.List<Integer> c_ = java.util.Collections.emptyList();

            private void ensureCIsMutable() {
                if (!((bitField0_ & 0x00000004) == 0x00000004)) {
                    c_ = new java.util.ArrayList<Integer>(c_);
                    bitField0_ |= 0x00000004;
                }
            }

            /**
             * <code>repeated int32 c = 3;</code>
             */
            public java.util.List<Integer>
            getCList() {
                return java.util.Collections.unmodifiableList(c_);
            }

            /**
             * <code>repeated int32 c = 3;</code>
             */
            public int getCCount() {
                return c_.size();
            }

            /**
             * <code>repeated int32 c = 3;</code>
             */
            public int getC(int index) {
                return c_.get(index);
            }

            /**
             * <code>repeated int32 c = 3;</code>
             */
            public Builder setC(
                    int index, int value) {
                ensureCIsMutable();
                c_.set(index, value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 c = 3;</code>
             */
            public Builder addC(int value) {
                ensureCIsMutable();
                c_.add(value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 c = 3;</code>
             */
            public Builder addAllC(
                    Iterable<? extends Integer> values) {
                ensureCIsMutable();
                com.google.protobuf.AbstractMessageLite.Builder.addAll(
                        values, c_);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 c = 3;</code>
             */
            public Builder clearC() {
                c_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000004);
                onChanged();
                return this;
            }

            private java.util.List<Integer> d_ = java.util.Collections.emptyList();

            private void ensureDIsMutable() {
                if (!((bitField0_ & 0x00000008) == 0x00000008)) {
                    d_ = new java.util.ArrayList<Integer>(d_);
                    bitField0_ |= 0x00000008;
                }
            }

            /**
             * <code>repeated int32 d = 4;</code>
             */
            public java.util.List<Integer>
            getDList() {
                return java.util.Collections.unmodifiableList(d_);
            }

            /**
             * <code>repeated int32 d = 4;</code>
             */
            public int getDCount() {
                return d_.size();
            }

            /**
             * <code>repeated int32 d = 4;</code>
             */
            public int getD(int index) {
                return d_.get(index);
            }

            /**
             * <code>repeated int32 d = 4;</code>
             */
            public Builder setD(
                    int index, int value) {
                ensureDIsMutable();
                d_.set(index, value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 d = 4;</code>
             */
            public Builder addD(int value) {
                ensureDIsMutable();
                d_.add(value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 d = 4;</code>
             */
            public Builder addAllD(
                    Iterable<? extends Integer> values) {
                ensureDIsMutable();
                com.google.protobuf.AbstractMessageLite.Builder.addAll(
                        values, d_);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 d = 4;</code>
             */
            public Builder clearD() {
                d_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000008);
                onChanged();
                return this;
            }

            private java.util.List<Integer> e_ = java.util.Collections.emptyList();

            private void ensureEIsMutable() {
                if (!((bitField0_ & 0x00000010) == 0x00000010)) {
                    e_ = new java.util.ArrayList<Integer>(e_);
                    bitField0_ |= 0x00000010;
                }
            }

            /**
             * <code>repeated int32 e = 5;</code>
             */
            public java.util.List<Integer>
            getEList() {
                return java.util.Collections.unmodifiableList(e_);
            }

            /**
             * <code>repeated int32 e = 5;</code>
             */
            public int getECount() {
                return e_.size();
            }

            /**
             * <code>repeated int32 e = 5;</code>
             */
            public int getE(int index) {
                return e_.get(index);
            }

            /**
             * <code>repeated int32 e = 5;</code>
             */
            public Builder setE(
                    int index, int value) {
                ensureEIsMutable();
                e_.set(index, value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 e = 5;</code>
             */
            public Builder addE(int value) {
                ensureEIsMutable();
                e_.add(value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 e = 5;</code>
             */
            public Builder addAllE(
                    Iterable<? extends Integer> values) {
                ensureEIsMutable();
                com.google.protobuf.AbstractMessageLite.Builder.addAll(
                        values, e_);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 e = 5;</code>
             */
            public Builder clearE() {
                e_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000010);
                onChanged();
                return this;
            }

            private java.util.List<Integer> f_ = java.util.Collections.emptyList();

            private void ensureFIsMutable() {
                if (!((bitField0_ & 0x00000020) == 0x00000020)) {
                    f_ = new java.util.ArrayList<Integer>(f_);
                    bitField0_ |= 0x00000020;
                }
            }

            /**
             * <code>repeated int32 f = 6;</code>
             */
            public java.util.List<Integer>
            getFList() {
                return java.util.Collections.unmodifiableList(f_);
            }

            /**
             * <code>repeated int32 f = 6;</code>
             */
            public int getFCount() {
                return f_.size();
            }

            /**
             * <code>repeated int32 f = 6;</code>
             */
            public int getF(int index) {
                return f_.get(index);
            }

            /**
             * <code>repeated int32 f = 6;</code>
             */
            public Builder setF(
                    int index, int value) {
                ensureFIsMutable();
                f_.set(index, value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 f = 6;</code>
             */
            public Builder addF(int value) {
                ensureFIsMutable();
                f_.add(value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 f = 6;</code>
             */
            public Builder addAllF(
                    Iterable<? extends Integer> values) {
                ensureFIsMutable();
                com.google.protobuf.AbstractMessageLite.Builder.addAll(
                        values, f_);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 f = 6;</code>
             */
            public Builder clearF() {
                f_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000020);
                onChanged();
                return this;
            }

            private java.util.List<Integer> g_ = java.util.Collections.emptyList();

            private void ensureGIsMutable() {
                if (!((bitField0_ & 0x00000040) == 0x00000040)) {
                    g_ = new java.util.ArrayList<Integer>(g_);
                    bitField0_ |= 0x00000040;
                }
            }

            /**
             * <code>repeated int32 g = 7;</code>
             */
            public java.util.List<Integer>
            getGList() {
                return java.util.Collections.unmodifiableList(g_);
            }

            /**
             * <code>repeated int32 g = 7;</code>
             */
            public int getGCount() {
                return g_.size();
            }

            /**
             * <code>repeated int32 g = 7;</code>
             */
            public int getG(int index) {
                return g_.get(index);
            }

            /**
             * <code>repeated int32 g = 7;</code>
             */
            public Builder setG(
                    int index, int value) {
                ensureGIsMutable();
                g_.set(index, value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 g = 7;</code>
             */
            public Builder addG(int value) {
                ensureGIsMutable();
                g_.add(value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 g = 7;</code>
             */
            public Builder addAllG(
                    Iterable<? extends Integer> values) {
                ensureGIsMutable();
                com.google.protobuf.AbstractMessageLite.Builder.addAll(
                        values, g_);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 g = 7;</code>
             */
            public Builder clearG() {
                g_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000040);
                onChanged();
                return this;
            }

            private java.util.List<Integer> h_ = java.util.Collections.emptyList();

            private void ensureHIsMutable() {
                if (!((bitField0_ & 0x00000080) == 0x00000080)) {
                    h_ = new java.util.ArrayList<Integer>(h_);
                    bitField0_ |= 0x00000080;
                }
            }

            /**
             * <code>repeated int32 h = 8;</code>
             */
            public java.util.List<Integer>
            getHList() {
                return java.util.Collections.unmodifiableList(h_);
            }

            /**
             * <code>repeated int32 h = 8;</code>
             */
            public int getHCount() {
                return h_.size();
            }

            /**
             * <code>repeated int32 h = 8;</code>
             */
            public int getH(int index) {
                return h_.get(index);
            }

            /**
             * <code>repeated int32 h = 8;</code>
             */
            public Builder setH(
                    int index, int value) {
                ensureHIsMutable();
                h_.set(index, value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 h = 8;</code>
             */
            public Builder addH(int value) {
                ensureHIsMutable();
                h_.add(value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 h = 8;</code>
             */
            public Builder addAllH(
                    Iterable<? extends Integer> values) {
                ensureHIsMutable();
                com.google.protobuf.AbstractMessageLite.Builder.addAll(
                        values, h_);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 h = 8;</code>
             */
            public Builder clearH() {
                h_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000080);
                onChanged();
                return this;
            }

            private java.util.List<Integer> i_ = java.util.Collections.emptyList();

            private void ensureIIsMutable() {
                if (!((bitField0_ & 0x00000100) == 0x00000100)) {
                    i_ = new java.util.ArrayList<Integer>(i_);
                    bitField0_ |= 0x00000100;
                }
            }

            /**
             * <code>repeated int32 i = 9;</code>
             */
            public java.util.List<Integer>
            getIList() {
                return java.util.Collections.unmodifiableList(i_);
            }

            /**
             * <code>repeated int32 i = 9;</code>
             */
            public int getICount() {
                return i_.size();
            }

            /**
             * <code>repeated int32 i = 9;</code>
             */
            public int getI(int index) {
                return i_.get(index);
            }

            /**
             * <code>repeated int32 i = 9;</code>
             */
            public Builder setI(
                    int index, int value) {
                ensureIIsMutable();
                i_.set(index, value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 i = 9;</code>
             */
            public Builder addI(int value) {
                ensureIIsMutable();
                i_.add(value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 i = 9;</code>
             */
            public Builder addAllI(
                    Iterable<? extends Integer> values) {
                ensureIIsMutable();
                com.google.protobuf.AbstractMessageLite.Builder.addAll(
                        values, i_);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 i = 9;</code>
             */
            public Builder clearI() {
                i_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000100);
                onChanged();
                return this;
            }

            private java.util.List<Integer> j_ = java.util.Collections.emptyList();

            private void ensureJIsMutable() {
                if (!((bitField0_ & 0x00000200) == 0x00000200)) {
                    j_ = new java.util.ArrayList<Integer>(j_);
                    bitField0_ |= 0x00000200;
                }
            }

            /**
             * <code>repeated int32 j = 10;</code>
             */
            public java.util.List<Integer>
            getJList() {
                return java.util.Collections.unmodifiableList(j_);
            }

            /**
             * <code>repeated int32 j = 10;</code>
             */
            public int getJCount() {
                return j_.size();
            }

            /**
             * <code>repeated int32 j = 10;</code>
             */
            public int getJ(int index) {
                return j_.get(index);
            }

            /**
             * <code>repeated int32 j = 10;</code>
             */
            public Builder setJ(
                    int index, int value) {
                ensureJIsMutable();
                j_.set(index, value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 j = 10;</code>
             */
            public Builder addJ(int value) {
                ensureJIsMutable();
                j_.add(value);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 j = 10;</code>
             */
            public Builder addAllJ(
                    Iterable<? extends Integer> values) {
                ensureJIsMutable();
                com.google.protobuf.AbstractMessageLite.Builder.addAll(
                        values, j_);
                onChanged();
                return this;
            }

            /**
             * <code>repeated int32 j = 10;</code>
             */
            public Builder clearJ() {
                j_ = java.util.Collections.emptyList();
                bitField0_ = (bitField0_ & ~0x00000200);
                onChanged();
                return this;
            }

            @Override
            public final Builder setUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.setUnknownFieldsProto3(unknownFields);
            }

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


            // @@protoc_insertion_point(builder_scope:ListIntegerObject)
        }

        // @@protoc_insertion_point(class_scope:ListIntegerObject)
        private static final ListIntegerObject DEFAULT_INSTANCE;

        static {
            DEFAULT_INSTANCE = new ListIntegerObject();
        }

        public static ListIntegerObject getDefaultInstance() {
            return DEFAULT_INSTANCE;
        }

        private static final com.google.protobuf.Parser<ListIntegerObject>
                PARSER = new com.google.protobuf.AbstractParser<ListIntegerObject>() {
            @Override
            public ListIntegerObject parsePartialFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws com.google.protobuf.InvalidProtocolBufferException {
                return new ListIntegerObject(input, extensionRegistry);
            }
        };

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

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

        @Override
        public ListIntegerObject getDefaultInstanceForType() {
            return DEFAULT_INSTANCE;
        }

    }

    public interface MapObjectOrBuilder extends
            // @@protoc_insertion_point(interface_extends:MapObject)
            com.google.protobuf.MessageOrBuilder {

        /**
         * <code>map&lt;int32, string&gt; a = 1;</code>
         */
        int getACount();

        /**
         * <code>map&lt;int32, string&gt; a = 1;</code>
         */
        boolean containsA(
                int key);

        /**
         * Use {@link #getAMap()} instead.
         */
        @Deprecated
        java.util.Map<Integer, String>
        getA();

        /**
         * <code>map&lt;int32, string&gt; a = 1;</code>
         */
        java.util.Map<Integer, String>
        getAMap();

        /**
         * <code>map&lt;int32, string&gt; a = 1;</code>
         */

        String getAOrDefault(
                int key,
                String defaultValue);

        /**
         * <code>map&lt;int32, string&gt; a = 1;</code>
         */

        String getAOrThrow(
                int key);

        /**
         * <code>map&lt;int32, string&gt; b = 2;</code>
         */
        int getBCount();

        /**
         * <code>map&lt;int32, string&gt; b = 2;</code>
         */
        boolean containsB(
                int key);

        /**
         * Use {@link #getBMap()} instead.
         */
        @Deprecated
        java.util.Map<Integer, String>
        getB();

        /**
         * <code>map&lt;int32, string&gt; b = 2;</code>
         */
        java.util.Map<Integer, String>
        getBMap();

        /**
         * <code>map&lt;int32, string&gt; b = 2;</code>
         */

        String getBOrDefault(
                int key,
                String defaultValue);

        /**
         * <code>map&lt;int32, string&gt; b = 2;</code>
         */

        String getBOrThrow(
                int key);

        /**
         * <code>map&lt;int32, string&gt; c = 3;</code>
         */
        int getCCount();

        /**
         * <code>map&lt;int32, string&gt; c = 3;</code>
         */
        boolean containsC(
                int key);

        /**
         * Use {@link #getCMap()} instead.
         */
        @Deprecated
        java.util.Map<Integer, String>
        getC();

        /**
         * <code>map&lt;int32, string&gt; c = 3;</code>
         */
        java.util.Map<Integer, String>
        getCMap();

        /**
         * <code>map&lt;int32, string&gt; c = 3;</code>
         */

        String getCOrDefault(
                int key,
                String defaultValue);

        /**
         * <code>map&lt;int32, string&gt; c = 3;</code>
         */

        String getCOrThrow(
                int key);

        /**
         * <code>map&lt;int32, string&gt; d = 4;</code>
         */
        int getDCount();

        /**
         * <code>map&lt;int32, string&gt; d = 4;</code>
         */
        boolean containsD(
                int key);

        /**
         * Use {@link #getDMap()} instead.
         */
        @Deprecated
        java.util.Map<Integer, String>
        getD();

        /**
         * <code>map&lt;int32, string&gt; d = 4;</code>
         */
        java.util.Map<Integer, String>
        getDMap();

        /**
         * <code>map&lt;int32, string&gt; d = 4;</code>
         */

        String getDOrDefault(
                int key,
                String defaultValue);

        /**
         * <code>map&lt;int32, string&gt; d = 4;</code>
         */

        String getDOrThrow(
                int key);

        /**
         * <code>map&lt;int32, string&gt; e = 5;</code>
         */
        int getECount();

        /**
         * <code>map&lt;int32, string&gt; e = 5;</code>
         */
        boolean containsE(
                int key);

        /**
         * Use {@link #getEMap()} instead.
         */
        @Deprecated
        java.util.Map<Integer, String>
        getE();

        /**
         * <code>map&lt;int32, string&gt; e = 5;</code>
         */
        java.util.Map<Integer, String>
        getEMap();

        /**
         * <code>map&lt;int32, string&gt; e = 5;</code>
         */

        String getEOrDefault(
                int key,
                String defaultValue);

        /**
         * <code>map&lt;int32, string&gt; e = 5;</code>
         */

        String getEOrThrow(
                int key);

        /**
         * <code>map&lt;int32, string&gt; f = 6;</code>
         */
        int getFCount();

        /**
         * <code>map&lt;int32, string&gt; f = 6;</code>
         */
        boolean containsF(
                int key);

        /**
         * Use {@link #getFMap()} instead.
         */
        @Deprecated
        java.util.Map<Integer, String>
        getF();

        /**
         * <code>map&lt;int32, string&gt; f = 6;</code>
         */
        java.util.Map<Integer, String>
        getFMap();

        /**
         * <code>map&lt;int32, string&gt; f = 6;</code>
         */

        String getFOrDefault(
                int key,
                String defaultValue);

        /**
         * <code>map&lt;int32, string&gt; f = 6;</code>
         */

        String getFOrThrow(
                int key);

        /**
         * <code>map&lt;int32, string&gt; g = 7;</code>
         */
        int getGCount();

        /**
         * <code>map&lt;int32, string&gt; g = 7;</code>
         */
        boolean containsG(
                int key);

        /**
         * Use {@link #getGMap()} instead.
         */
        @Deprecated
        java.util.Map<Integer, String>
        getG();

        /**
         * <code>map&lt;int32, string&gt; g = 7;</code>
         */
        java.util.Map<Integer, String>
        getGMap();

        /**
         * <code>map&lt;int32, string&gt; g = 7;</code>
         */

        String getGOrDefault(
                int key,
                String defaultValue);

        /**
         * <code>map&lt;int32, string&gt; g = 7;</code>
         */

        String getGOrThrow(
                int key);

        /**
         * <code>map&lt;int32, string&gt; h = 8;</code>
         */
        int getHCount();

        /**
         * <code>map&lt;int32, string&gt; h = 8;</code>
         */
        boolean containsH(
                int key);

        /**
         * Use {@link #getHMap()} instead.
         */
        @Deprecated
        java.util.Map<Integer, String>
        getH();

        /**
         * <code>map&lt;int32, string&gt; h = 8;</code>
         */
        java.util.Map<Integer, String>
        getHMap();

        /**
         * <code>map&lt;int32, string&gt; h = 8;</code>
         */

        String getHOrDefault(
                int key,
                String defaultValue);

        /**
         * <code>map&lt;int32, string&gt; h = 8;</code>
         */

        String getHOrThrow(
                int key);

        /**
         * <code>map&lt;int32, string&gt; i = 9;</code>
         */
        int getICount();

        /**
         * <code>map&lt;int32, string&gt; i = 9;</code>
         */
        boolean containsI(
                int key);

        /**
         * Use {@link #getIMap()} instead.
         */
        @Deprecated
        java.util.Map<Integer, String>
        getI();

        /**
         * <code>map&lt;int32, string&gt; i = 9;</code>
         */
        java.util.Map<Integer, String>
        getIMap();

        /**
         * <code>map&lt;int32, string&gt; i = 9;</code>
         */

        String getIOrDefault(
                int key,
                String defaultValue);

        /**
         * <code>map&lt;int32, string&gt; i = 9;</code>
         */

        String getIOrThrow(
                int key);

        /**
         * <code>map&lt;int32, string&gt; j = 10;</code>
         */
        int getJCount();

        /**
         * <code>map&lt;int32, string&gt; j = 10;</code>
         */
        boolean containsJ(
                int key);

        /**
         * Use {@link #getJMap()} instead.
         */
        @Deprecated
        java.util.Map<Integer, String>
        getJ();

        /**
         * <code>map&lt;int32, string&gt; j = 10;</code>
         */
        java.util.Map<Integer, String>
        getJMap();

        /**
         * <code>map&lt;int32, string&gt; j = 10;</code>
         */

        String getJOrDefault(
                int key,
                String defaultValue);

        /**
         * <code>map&lt;int32, string&gt; j = 10;</code>
         */

        String getJOrThrow(
                int key);
    }

    /**
     * Protobuf type {@code MapObject}
     */
    public static final class MapObject extends
            com.google.protobuf.GeneratedMessageV3 implements
            // @@protoc_insertion_point(message_implements:MapObject)
            MapObjectOrBuilder {
        private static final long serialVersionUID = 0L;

        // Use MapObject.newBuilder() to construct.
        private MapObject(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
            super(builder);
        }

        private MapObject() {
        }

        @Override
        public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
            return this.unknownFields;
        }

        private MapObject(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            this();
            if (extensionRegistry == null) {
                throw new NullPointerException();
            }
            int mutable_bitField0_ = 0;
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                    com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
                boolean done = false;
                while (!done) {
                    int tag = input.readTag();
                    switch (tag) {
                        case 0:
                            done = true;
                            break;
                        case 10: {
                            if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                                a_ = com.google.protobuf.MapField.newMapField(
                                        ADefaultEntryHolder.defaultEntry);
                                mutable_bitField0_ |= 0x00000001;
                            }
                            com.google.protobuf.MapEntry<Integer, String>
                                    a__ = input.readMessage(
                                    ADefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                            a_.getMutableMap().put(
                                    a__.getKey(), a__.getValue());
                            break;
                        }
                        case 18: {
                            if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                                b_ = com.google.protobuf.MapField.newMapField(
                                        BDefaultEntryHolder.defaultEntry);
                                mutable_bitField0_ |= 0x00000002;
                            }
                            com.google.protobuf.MapEntry<Integer, String>
                                    b__ = input.readMessage(
                                    BDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                            b_.getMutableMap().put(
                                    b__.getKey(), b__.getValue());
                            break;
                        }
                        case 26: {
                            if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
                                c_ = com.google.protobuf.MapField.newMapField(
                                        CDefaultEntryHolder.defaultEntry);
                                mutable_bitField0_ |= 0x00000004;
                            }
                            com.google.protobuf.MapEntry<Integer, String>
                                    c__ = input.readMessage(
                                    CDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                            c_.getMutableMap().put(
                                    c__.getKey(), c__.getValue());
                            break;
                        }
                        case 34: {
                            if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
                                d_ = com.google.protobuf.MapField.newMapField(
                                        DDefaultEntryHolder.defaultEntry);
                                mutable_bitField0_ |= 0x00000008;
                            }
                            com.google.protobuf.MapEntry<Integer, String>
                                    d__ = input.readMessage(
                                    DDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                            d_.getMutableMap().put(
                                    d__.getKey(), d__.getValue());
                            break;
                        }
                        case 42: {
                            if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
                                e_ = com.google.protobuf.MapField.newMapField(
                                        EDefaultEntryHolder.defaultEntry);
                                mutable_bitField0_ |= 0x00000010;
                            }
                            com.google.protobuf.MapEntry<Integer, String>
                                    e__ = input.readMessage(
                                    EDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                            e_.getMutableMap().put(
                                    e__.getKey(), e__.getValue());
                            break;
                        }
                        case 50: {
                            if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
                                f_ = com.google.protobuf.MapField.newMapField(
                                        FDefaultEntryHolder.defaultEntry);
                                mutable_bitField0_ |= 0x00000020;
                            }
                            com.google.protobuf.MapEntry<Integer, String>
                                    f__ = input.readMessage(
                                    FDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                            f_.getMutableMap().put(
                                    f__.getKey(), f__.getValue());
                            break;
                        }
                        case 58: {
                            if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
                                g_ = com.google.protobuf.MapField.newMapField(
                                        GDefaultEntryHolder.defaultEntry);
                                mutable_bitField0_ |= 0x00000040;
                            }
                            com.google.protobuf.MapEntry<Integer, String>
                                    g__ = input.readMessage(
                                    GDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                            g_.getMutableMap().put(
                                    g__.getKey(), g__.getValue());
                            break;
                        }
                        case 66: {
                            if (!((mutable_bitField0_ & 0x00000080) == 0x00000080)) {
                                h_ = com.google.protobuf.MapField.newMapField(
                                        HDefaultEntryHolder.defaultEntry);
                                mutable_bitField0_ |= 0x00000080;
                            }
                            com.google.protobuf.MapEntry<Integer, String>
                                    h__ = input.readMessage(
                                    HDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                            h_.getMutableMap().put(
                                    h__.getKey(), h__.getValue());
                            break;
                        }
                        case 74: {
                            if (!((mutable_bitField0_ & 0x00000100) == 0x00000100)) {
                                i_ = com.google.protobuf.MapField.newMapField(
                                        IDefaultEntryHolder.defaultEntry);
                                mutable_bitField0_ |= 0x00000100;
                            }
                            com.google.protobuf.MapEntry<Integer, String>
                                    i__ = input.readMessage(
                                    IDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                            i_.getMutableMap().put(
                                    i__.getKey(), i__.getValue());
                            break;
                        }
                        case 82: {
                            if (!((mutable_bitField0_ & 0x00000200) == 0x00000200)) {
                                j_ = com.google.protobuf.MapField.newMapField(
                                        JDefaultEntryHolder.defaultEntry);
                                mutable_bitField0_ |= 0x00000200;
                            }
                            com.google.protobuf.MapEntry<Integer, String>
                                    j__ = input.readMessage(
                                    JDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                            j_.getMutableMap().put(
                                    j__.getKey(), j__.getValue());
                            break;
                        }
                        default: {
                            if (!parseUnknownFieldProto3(
                                    input, unknownFields, extensionRegistry, tag)) {
                                done = true;
                            }
                            break;
                        }
                    }
                }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
                throw new com.google.protobuf.InvalidProtocolBufferException(
                        e).setUnfinishedMessage(this);
            } finally {
                this.unknownFields = unknownFields.build();
                makeExtensionsImmutable();
            }
        }

        public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
            return FieldProtobufObject.internal_static_MapObject_descriptor;
        }

        @SuppressWarnings({"rawtypes"})
        @Override
        protected com.google.protobuf.MapField internalGetMapField(
                int number) {
            switch (number) {
                case 1:
                    return internalGetA();
                case 2:
                    return internalGetB();
                case 3:
                    return internalGetC();
                case 4:
                    return internalGetD();
                case 5:
                    return internalGetE();
                case 6:
                    return internalGetF();
                case 7:
                    return internalGetG();
                case 8:
                    return internalGetH();
                case 9:
                    return internalGetI();
                case 10:
                    return internalGetJ();
                default:
                    throw new RuntimeException(
                            "Invalid map field number: " + number);
            }
        }

        @Override
        protected FieldAccessorTable
        internalGetFieldAccessorTable() {
            return FieldProtobufObject.internal_static_MapObject_fieldAccessorTable
                    .ensureFieldAccessorsInitialized(
                            MapObject.class, Builder.class);
        }

        public static final int A_FIELD_NUMBER = 1;

        private static final class ADefaultEntryHolder {
            static final com.google.protobuf.MapEntry<
                    Integer, String> defaultEntry =
                    com.google.protobuf.MapEntry
                            .<Integer, String>newDefaultInstance(
                                    FieldProtobufObject.internal_static_MapObject_AEntry_descriptor,
                                    com.google.protobuf.WireFormat.FieldType.INT32,
                                    0,
                                    com.google.protobuf.WireFormat.FieldType.STRING,
                                    "");
        }

        private com.google.protobuf.MapField<
                Integer, String> a_;

        private com.google.protobuf.MapField<Integer, String>
        internalGetA() {
            if (a_ == null) {
                return com.google.protobuf.MapField.emptyMapField(
                        ADefaultEntryHolder.defaultEntry);
            }
            return a_;
        }

        public int getACount() {
            return internalGetA().getMap().size();
        }

        /**
         * <code>map&lt;int32, string&gt; a = 1;</code>
         */

        public boolean containsA(
                int key) {

            return internalGetA().getMap().containsKey(key);
        }

        /**
         * Use {@link #getAMap()} instead.
         */
        @Deprecated
        public java.util.Map<Integer, String> getA() {
            return getAMap();
        }

        /**
         * <code>map&lt;int32, string&gt; a = 1;</code>
         */

        public java.util.Map<Integer, String> getAMap() {
            return internalGetA().getMap();
        }

        /**
         * <code>map&lt;int32, string&gt; a = 1;</code>
         */

        public String getAOrDefault(
                int key,
                String defaultValue) {

            java.util.Map<Integer, String> map =
                    internalGetA().getMap();
            return map.containsKey(key) ? map.get(key) : defaultValue;
        }

        /**
         * <code>map&lt;int32, string&gt; a = 1;</code>
         */

        public String getAOrThrow(
                int key) {

            java.util.Map<Integer, String> map =
                    internalGetA().getMap();
            if (!map.containsKey(key)) {
                throw new IllegalArgumentException();
            }
            return map.get(key);
        }

        public static final int B_FIELD_NUMBER = 2;

        private static final class BDefaultEntryHolder {
            static final com.google.protobuf.MapEntry<
                    Integer, String> defaultEntry =
                    com.google.protobuf.MapEntry
                            .<Integer, String>newDefaultInstance(
                                    FieldProtobufObject.internal_static_MapObject_BEntry_descriptor,
                                    com.google.protobuf.WireFormat.FieldType.INT32,
                                    0,
                                    com.google.protobuf.WireFormat.FieldType.STRING,
                                    "");
        }

        private com.google.protobuf.MapField<
                Integer, String> b_;

        private com.google.protobuf.MapField<Integer, String>
        internalGetB() {
            if (b_ == null) {
                return com.google.protobuf.MapField.emptyMapField(
                        BDefaultEntryHolder.defaultEntry);
            }
            return b_;
        }

        public int getBCount() {
            return internalGetB().getMap().size();
        }

        /**
         * <code>map&lt;int32, string&gt; b = 2;</code>
         */

        public boolean containsB(
                int key) {

            return internalGetB().getMap().containsKey(key);
        }

        /**
         * Use {@link #getBMap()} instead.
         */
        @Deprecated
        public java.util.Map<Integer, String> getB() {
            return getBMap();
        }

        /**
         * <code>map&lt;int32, string&gt; b = 2;</code>
         */

        public java.util.Map<Integer, String> getBMap() {
            return internalGetB().getMap();
        }

        /**
         * <code>map&lt;int32, string&gt; b = 2;</code>
         */

        public String getBOrDefault(
                int key,
                String defaultValue) {

            java.util.Map<Integer, String> map =
                    internalGetB().getMap();
            return map.containsKey(key) ? map.get(key) : defaultValue;
        }

        /**
         * <code>map&lt;int32, string&gt; b = 2;</code>
         */

        public String getBOrThrow(
                int key) {

            java.util.Map<Integer, String> map =
                    internalGetB().getMap();
            if (!map.containsKey(key)) {
                throw new IllegalArgumentException();
            }
            return map.get(key);
        }

        public static final int C_FIELD_NUMBER = 3;

        private static final class CDefaultEntryHolder {
            static final com.google.protobuf.MapEntry<
                    Integer, String> defaultEntry =
                    com.google.protobuf.MapEntry
                            .<Integer, String>newDefaultInstance(
                                    FieldProtobufObject.internal_static_MapObject_CEntry_descriptor,
                                    com.google.protobuf.WireFormat.FieldType.INT32,
                                    0,
                                    com.google.protobuf.WireFormat.FieldType.STRING,
                                    "");
        }

        private com.google.protobuf.MapField<
                Integer, String> c_;

        private com.google.protobuf.MapField<Integer, String>
        internalGetC() {
            if (c_ == null) {
                return com.google.protobuf.MapField.emptyMapField(
                        CDefaultEntryHolder.defaultEntry);
            }
            return c_;
        }

        public int getCCount() {
            return internalGetC().getMap().size();
        }

        /**
         * <code>map&lt;int32, string&gt; c = 3;</code>
         */

        public boolean containsC(
                int key) {

            return internalGetC().getMap().containsKey(key);
        }

        /**
         * Use {@link #getCMap()} instead.
         */
        @Deprecated
        public java.util.Map<Integer, String> getC() {
            return getCMap();
        }

        /**
         * <code>map&lt;int32, string&gt; c = 3;</code>
         */

        public java.util.Map<Integer, String> getCMap() {
            return internalGetC().getMap();
        }

        /**
         * <code>map&lt;int32, string&gt; c = 3;</code>
         */

        public String getCOrDefault(
                int key,
                String defaultValue) {

            java.util.Map<Integer, String> map =
                    internalGetC().getMap();
            return map.containsKey(key) ? map.get(key) : defaultValue;
        }

        /**
         * <code>map&lt;int32, string&gt; c = 3;</code>
         */

        public String getCOrThrow(
                int key) {

            java.util.Map<Integer, String> map =
                    internalGetC().getMap();
            if (!map.containsKey(key)) {
                throw new IllegalArgumentException();
            }
            return map.get(key);
        }

        public static final int D_FIELD_NUMBER = 4;

        private static final class DDefaultEntryHolder {
            static final com.google.protobuf.MapEntry<
                    Integer, String> defaultEntry =
                    com.google.protobuf.MapEntry
                            .<Integer, String>newDefaultInstance(
                                    FieldProtobufObject.internal_static_MapObject_DEntry_descriptor,
                                    com.google.protobuf.WireFormat.FieldType.INT32,
                                    0,
                                    com.google.protobuf.WireFormat.FieldType.STRING,
                                    "");
        }

        private com.google.protobuf.MapField<
                Integer, String> d_;

        private com.google.protobuf.MapField<Integer, String>
        internalGetD() {
            if (d_ == null) {
                return com.google.protobuf.MapField.emptyMapField(
                        DDefaultEntryHolder.defaultEntry);
            }
            return d_;
        }

        public int getDCount() {
            return internalGetD().getMap().size();
        }

        /**
         * <code>map&lt;int32, string&gt; d = 4;</code>
         */

        public boolean containsD(
                int key) {

            return internalGetD().getMap().containsKey(key);
        }

        /**
         * Use {@link #getDMap()} instead.
         */
        @Deprecated
        public java.util.Map<Integer, String> getD() {
            return getDMap();
        }

        /**
         * <code>map&lt;int32, string&gt; d = 4;</code>
         */

        public java.util.Map<Integer, String> getDMap() {
            return internalGetD().getMap();
        }

        /**
         * <code>map&lt;int32, string&gt; d = 4;</code>
         */

        public String getDOrDefault(
                int key,
                String defaultValue) {

            java.util.Map<Integer, String> map =
                    internalGetD().getMap();
            return map.containsKey(key) ? map.get(key) : defaultValue;
        }

        /**
         * <code>map&lt;int32, string&gt; d = 4;</code>
         */

        public String getDOrThrow(
                int key) {

            java.util.Map<Integer, String> map =
                    internalGetD().getMap();
            if (!map.containsKey(key)) {
                throw new IllegalArgumentException();
            }
            return map.get(key);
        }

        public static final int E_FIELD_NUMBER = 5;

        private static final class EDefaultEntryHolder {
            static final com.google.protobuf.MapEntry<
                    Integer, String> defaultEntry =
                    com.google.protobuf.MapEntry
                            .<Integer, String>newDefaultInstance(
                                    FieldProtobufObject.internal_static_MapObject_EEntry_descriptor,
                                    com.google.protobuf.WireFormat.FieldType.INT32,
                                    0,
                                    com.google.protobuf.WireFormat.FieldType.STRING,
                                    "");
        }

        private com.google.protobuf.MapField<
                Integer, String> e_;

        private com.google.protobuf.MapField<Integer, String>
        internalGetE() {
            if (e_ == null) {
                return com.google.protobuf.MapField.emptyMapField(
                        EDefaultEntryHolder.defaultEntry);
            }
            return e_;
        }

        public int getECount() {
            return internalGetE().getMap().size();
        }

        /**
         * <code>map&lt;int32, string&gt; e = 5;</code>
         */

        public boolean containsE(
                int key) {

            return internalGetE().getMap().containsKey(key);
        }

        /**
         * Use {@link #getEMap()} instead.
         */
        @Deprecated
        public java.util.Map<Integer, String> getE() {
            return getEMap();
        }

        /**
         * <code>map&lt;int32, string&gt; e = 5;</code>
         */

        public java.util.Map<Integer, String> getEMap() {
            return internalGetE().getMap();
        }

        /**
         * <code>map&lt;int32, string&gt; e = 5;</code>
         */

        public String getEOrDefault(
                int key,
                String defaultValue) {

            java.util.Map<Integer, String> map =
                    internalGetE().getMap();
            return map.containsKey(key) ? map.get(key) : defaultValue;
        }

        /**
         * <code>map&lt;int32, string&gt; e = 5;</code>
         */

        public String getEOrThrow(
                int key) {

            java.util.Map<Integer, String> map =
                    internalGetE().getMap();
            if (!map.containsKey(key)) {
                throw new IllegalArgumentException();
            }
            return map.get(key);
        }

        public static final int F_FIELD_NUMBER = 6;

        private static final class FDefaultEntryHolder {
            static final com.google.protobuf.MapEntry<
                    Integer, String> defaultEntry =
                    com.google.protobuf.MapEntry
                            .<Integer, String>newDefaultInstance(
                                    FieldProtobufObject.internal_static_MapObject_FEntry_descriptor,
                                    com.google.protobuf.WireFormat.FieldType.INT32,
                                    0,
                                    com.google.protobuf.WireFormat.FieldType.STRING,
                                    "");
        }

        private com.google.protobuf.MapField<
                Integer, String> f_;

        private com.google.protobuf.MapField<Integer, String>
        internalGetF() {
            if (f_ == null) {
                return com.google.protobuf.MapField.emptyMapField(
                        FDefaultEntryHolder.defaultEntry);
            }
            return f_;
        }

        public int getFCount() {
            return internalGetF().getMap().size();
        }

        /**
         * <code>map&lt;int32, string&gt; f = 6;</code>
         */

        public boolean containsF(
                int key) {

            return internalGetF().getMap().containsKey(key);
        }

        /**
         * Use {@link #getFMap()} instead.
         */
        @Deprecated
        public java.util.Map<Integer, String> getF() {
            return getFMap();
        }

        /**
         * <code>map&lt;int32, string&gt; f = 6;</code>
         */

        public java.util.Map<Integer, String> getFMap() {
            return internalGetF().getMap();
        }

        /**
         * <code>map&lt;int32, string&gt; f = 6;</code>
         */

        public String getFOrDefault(
                int key,
                String defaultValue) {

            java.util.Map<Integer, String> map =
                    internalGetF().getMap();
            return map.containsKey(key) ? map.get(key) : defaultValue;
        }

        /**
         * <code>map&lt;int32, string&gt; f = 6;</code>
         */

        public String getFOrThrow(
                int key) {

            java.util.Map<Integer, String> map =
                    internalGetF().getMap();
            if (!map.containsKey(key)) {
                throw new IllegalArgumentException();
            }
            return map.get(key);
        }

        public static final int G_FIELD_NUMBER = 7;

        private static final class GDefaultEntryHolder {
            static final com.google.protobuf.MapEntry<
                    Integer, String> defaultEntry =
                    com.google.protobuf.MapEntry
                            .<Integer, String>newDefaultInstance(
                                    FieldProtobufObject.internal_static_MapObject_GEntry_descriptor,
                                    com.google.protobuf.WireFormat.FieldType.INT32,
                                    0,
                                    com.google.protobuf.WireFormat.FieldType.STRING,
                                    "");
        }

        private com.google.protobuf.MapField<
                Integer, String> g_;

        private com.google.protobuf.MapField<Integer, String>
        internalGetG() {
            if (g_ == null) {
                return com.google.protobuf.MapField.emptyMapField(
                        GDefaultEntryHolder.defaultEntry);
            }
            return g_;
        }

        public int getGCount() {
            return internalGetG().getMap().size();
        }

        /**
         * <code>map&lt;int32, string&gt; g = 7;</code>
         */

        public boolean containsG(
                int key) {

            return internalGetG().getMap().containsKey(key);
        }

        /**
         * Use {@link #getGMap()} instead.
         */
        @Deprecated
        public java.util.Map<Integer, String> getG() {
            return getGMap();
        }

        /**
         * <code>map&lt;int32, string&gt; g = 7;</code>
         */

        public java.util.Map<Integer, String> getGMap() {
            return internalGetG().getMap();
        }

        /**
         * <code>map&lt;int32, string&gt; g = 7;</code>
         */

        public String getGOrDefault(
                int key,
                String defaultValue) {

            java.util.Map<Integer, String> map =
                    internalGetG().getMap();
            return map.containsKey(key) ? map.get(key) : defaultValue;
        }

        /**
         * <code>map&lt;int32, string&gt; g = 7;</code>
         */

        public String getGOrThrow(
                int key) {

            java.util.Map<Integer, String> map =
                    internalGetG().getMap();
            if (!map.containsKey(key)) {
                throw new IllegalArgumentException();
            }
            return map.get(key);
        }

        public static final int H_FIELD_NUMBER = 8;

        private static final class HDefaultEntryHolder {
            static final com.google.protobuf.MapEntry<
                    Integer, String> defaultEntry =
                    com.google.protobuf.MapEntry
                            .<Integer, String>newDefaultInstance(
                                    FieldProtobufObject.internal_static_MapObject_HEntry_descriptor,
                                    com.google.protobuf.WireFormat.FieldType.INT32,
                                    0,
                                    com.google.protobuf.WireFormat.FieldType.STRING,
                                    "");
        }

        private com.google.protobuf.MapField<
                Integer, String> h_;

        private com.google.protobuf.MapField<Integer, String>
        internalGetH() {
            if (h_ == null) {
                return com.google.protobuf.MapField.emptyMapField(
                        HDefaultEntryHolder.defaultEntry);
            }
            return h_;
        }

        public int getHCount() {
            return internalGetH().getMap().size();
        }

        /**
         * <code>map&lt;int32, string&gt; h = 8;</code>
         */

        public boolean containsH(
                int key) {

            return internalGetH().getMap().containsKey(key);
        }

        /**
         * Use {@link #getHMap()} instead.
         */
        @Deprecated
        public java.util.Map<Integer, String> getH() {
            return getHMap();
        }

        /**
         * <code>map&lt;int32, string&gt; h = 8;</code>
         */

        public java.util.Map<Integer, String> getHMap() {
            return internalGetH().getMap();
        }

        /**
         * <code>map&lt;int32, string&gt; h = 8;</code>
         */

        public String getHOrDefault(
                int key,
                String defaultValue) {

            java.util.Map<Integer, String> map =
                    internalGetH().getMap();
            return map.containsKey(key) ? map.get(key) : defaultValue;
        }

        /**
         * <code>map&lt;int32, string&gt; h = 8;</code>
         */

        public String getHOrThrow(
                int key) {

            java.util.Map<Integer, String> map =
                    internalGetH().getMap();
            if (!map.containsKey(key)) {
                throw new IllegalArgumentException();
            }
            return map.get(key);
        }

        public static final int I_FIELD_NUMBER = 9;

        private static final class IDefaultEntryHolder {
            static final com.google.protobuf.MapEntry<
                    Integer, String> defaultEntry =
                    com.google.protobuf.MapEntry
                            .<Integer, String>newDefaultInstance(
                                    FieldProtobufObject.internal_static_MapObject_IEntry_descriptor,
                                    com.google.protobuf.WireFormat.FieldType.INT32,
                                    0,
                                    com.google.protobuf.WireFormat.FieldType.STRING,
                                    "");
        }

        private com.google.protobuf.MapField<
                Integer, String> i_;

        private com.google.protobuf.MapField<Integer, String>
        internalGetI() {
            if (i_ == null) {
                return com.google.protobuf.MapField.emptyMapField(
                        IDefaultEntryHolder.defaultEntry);
            }
            return i_;
        }

        public int getICount() {
            return internalGetI().getMap().size();
        }

        /**
         * <code>map&lt;int32, string&gt; i = 9;</code>
         */

        public boolean containsI(
                int key) {

            return internalGetI().getMap().containsKey(key);
        }

        /**
         * Use {@link #getIMap()} instead.
         */
        @Deprecated
        public java.util.Map<Integer, String> getI() {
            return getIMap();
        }

        /**
         * <code>map&lt;int32, string&gt; i = 9;</code>
         */

        public java.util.Map<Integer, String> getIMap() {
            return internalGetI().getMap();
        }

        /**
         * <code>map&lt;int32, string&gt; i = 9;</code>
         */

        public String getIOrDefault(
                int key,
                String defaultValue) {

            java.util.Map<Integer, String> map =
                    internalGetI().getMap();
            return map.containsKey(key) ? map.get(key) : defaultValue;
        }

        /**
         * <code>map&lt;int32, string&gt; i = 9;</code>
         */

        public String getIOrThrow(
                int key) {

            java.util.Map<Integer, String> map =
                    internalGetI().getMap();
            if (!map.containsKey(key)) {
                throw new IllegalArgumentException();
            }
            return map.get(key);
        }

        public static final int J_FIELD_NUMBER = 10;

        private static final class JDefaultEntryHolder {
            static final com.google.protobuf.MapEntry<
                    Integer, String> defaultEntry =
                    com.google.protobuf.MapEntry
                            .<Integer, String>newDefaultInstance(
                                    FieldProtobufObject.internal_static_MapObject_JEntry_descriptor,
                                    com.google.protobuf.WireFormat.FieldType.INT32,
                                    0,
                                    com.google.protobuf.WireFormat.FieldType.STRING,
                                    "");
        }

        private com.google.protobuf.MapField<
                Integer, String> j_;

        private com.google.protobuf.MapField<Integer, String>
        internalGetJ() {
            if (j_ == null) {
                return com.google.protobuf.MapField.emptyMapField(
                        JDefaultEntryHolder.defaultEntry);
            }
            return j_;
        }

        public int getJCount() {
            return internalGetJ().getMap().size();
        }

        /**
         * <code>map&lt;int32, string&gt; j = 10;</code>
         */

        public boolean containsJ(
                int key) {

            return internalGetJ().getMap().containsKey(key);
        }

        /**
         * Use {@link #getJMap()} instead.
         */
        @Deprecated
        public java.util.Map<Integer, String> getJ() {
            return getJMap();
        }

        /**
         * <code>map&lt;int32, string&gt; j = 10;</code>
         */

        public java.util.Map<Integer, String> getJMap() {
            return internalGetJ().getMap();
        }

        /**
         * <code>map&lt;int32, string&gt; j = 10;</code>
         */

        public String getJOrDefault(
                int key,
                String defaultValue) {

            java.util.Map<Integer, String> map =
                    internalGetJ().getMap();
            return map.containsKey(key) ? map.get(key) : defaultValue;
        }

        /**
         * <code>map&lt;int32, string&gt; j = 10;</code>
         */

        public String getJOrThrow(
                int key) {

            java.util.Map<Integer, String> map =
                    internalGetJ().getMap();
            if (!map.containsKey(key)) {
                throw new IllegalArgumentException();
            }
            return map.get(key);
        }

        private byte memoizedIsInitialized = -1;

        @Override
        public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
        }

        @Override
        public void writeTo(com.google.protobuf.CodedOutputStream output)
                throws java.io.IOException {
            com.google.protobuf.GeneratedMessageV3
                    .serializeIntegerMapTo(
                            output,
                            internalGetA(),
                            ADefaultEntryHolder.defaultEntry,
                            1);
            com.google.protobuf.GeneratedMessageV3
                    .serializeIntegerMapTo(
                            output,
                            internalGetB(),
                            BDefaultEntryHolder.defaultEntry,
                            2);
            com.google.protobuf.GeneratedMessageV3
                    .serializeIntegerMapTo(
                            output,
                            internalGetC(),
                            CDefaultEntryHolder.defaultEntry,
                            3);
            com.google.protobuf.GeneratedMessageV3
                    .serializeIntegerMapTo(
                            output,
                            internalGetD(),
                            DDefaultEntryHolder.defaultEntry,
                            4);
            com.google.protobuf.GeneratedMessageV3
                    .serializeIntegerMapTo(
                            output,
                            internalGetE(),
                            EDefaultEntryHolder.defaultEntry,
                            5);
            com.google.protobuf.GeneratedMessageV3
                    .serializeIntegerMapTo(
                            output,
                            internalGetF(),
                            FDefaultEntryHolder.defaultEntry,
                            6);
            com.google.protobuf.GeneratedMessageV3
                    .serializeIntegerMapTo(
                            output,
                            internalGetG(),
                            GDefaultEntryHolder.defaultEntry,
                            7);
            com.google.protobuf.GeneratedMessageV3
                    .serializeIntegerMapTo(
                            output,
                            internalGetH(),
                            HDefaultEntryHolder.defaultEntry,
                            8);
            com.google.protobuf.GeneratedMessageV3
                    .serializeIntegerMapTo(
                            output,
                            internalGetI(),
                            IDefaultEntryHolder.defaultEntry,
                            9);
            com.google.protobuf.GeneratedMessageV3
                    .serializeIntegerMapTo(
                            output,
                            internalGetJ(),
                            JDefaultEntryHolder.defaultEntry,
                            10);
            unknownFields.writeTo(output);
        }

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

            size = 0;
            for (java.util.Map.Entry<Integer, String> entry
                    : internalGetA().getMap().entrySet()) {
                com.google.protobuf.MapEntry<Integer, String>
                        a__ = ADefaultEntryHolder.defaultEntry.newBuilderForType()
                        .setKey(entry.getKey())
                        .setValue(entry.getValue())
                        .build();
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(1, a__);
            }
            for (java.util.Map.Entry<Integer, String> entry
                    : internalGetB().getMap().entrySet()) {
                com.google.protobuf.MapEntry<Integer, String>
                        b__ = BDefaultEntryHolder.defaultEntry.newBuilderForType()
                        .setKey(entry.getKey())
                        .setValue(entry.getValue())
                        .build();
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(2, b__);
            }
            for (java.util.Map.Entry<Integer, String> entry
                    : internalGetC().getMap().entrySet()) {
                com.google.protobuf.MapEntry<Integer, String>
                        c__ = CDefaultEntryHolder.defaultEntry.newBuilderForType()
                        .setKey(entry.getKey())
                        .setValue(entry.getValue())
                        .build();
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(3, c__);
            }
            for (java.util.Map.Entry<Integer, String> entry
                    : internalGetD().getMap().entrySet()) {
                com.google.protobuf.MapEntry<Integer, String>
                        d__ = DDefaultEntryHolder.defaultEntry.newBuilderForType()
                        .setKey(entry.getKey())
                        .setValue(entry.getValue())
                        .build();
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(4, d__);
            }
            for (java.util.Map.Entry<Integer, String> entry
                    : internalGetE().getMap().entrySet()) {
                com.google.protobuf.MapEntry<Integer, String>
                        e__ = EDefaultEntryHolder.defaultEntry.newBuilderForType()
                        .setKey(entry.getKey())
                        .setValue(entry.getValue())
                        .build();
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(5, e__);
            }
            for (java.util.Map.Entry<Integer, String> entry
                    : internalGetF().getMap().entrySet()) {
                com.google.protobuf.MapEntry<Integer, String>
                        f__ = FDefaultEntryHolder.defaultEntry.newBuilderForType()
                        .setKey(entry.getKey())
                        .setValue(entry.getValue())
                        .build();
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(6, f__);
            }
            for (java.util.Map.Entry<Integer, String> entry
                    : internalGetG().getMap().entrySet()) {
                com.google.protobuf.MapEntry<Integer, String>
                        g__ = GDefaultEntryHolder.defaultEntry.newBuilderForType()
                        .setKey(entry.getKey())
                        .setValue(entry.getValue())
                        .build();
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(7, g__);
            }
            for (java.util.Map.Entry<Integer, String> entry
                    : internalGetH().getMap().entrySet()) {
                com.google.protobuf.MapEntry<Integer, String>
                        h__ = HDefaultEntryHolder.defaultEntry.newBuilderForType()
                        .setKey(entry.getKey())
                        .setValue(entry.getValue())
                        .build();
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(8, h__);
            }
            for (java.util.Map.Entry<Integer, String> entry
                    : internalGetI().getMap().entrySet()) {
                com.google.protobuf.MapEntry<Integer, String>
                        i__ = IDefaultEntryHolder.defaultEntry.newBuilderForType()
                        .setKey(entry.getKey())
                        .setValue(entry.getValue())
                        .build();
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(9, i__);
            }
            for (java.util.Map.Entry<Integer, String> entry
                    : internalGetJ().getMap().entrySet()) {
                com.google.protobuf.MapEntry<Integer, String>
                        j__ = JDefaultEntryHolder.defaultEntry.newBuilderForType()
                        .setKey(entry.getKey())
                        .setValue(entry.getValue())
                        .build();
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(10, j__);
            }
            size += unknownFields.getSerializedSize();
            memoizedSize = size;
            return size;
        }

        @Override
        public boolean equals(final Object obj) {
            if (obj == this) {
                return true;
            }
            if (!(obj instanceof MapObject)) {
                return super.equals(obj);
            }
            MapObject other = (MapObject) obj;

            boolean result = true;
            result = result && internalGetA().equals(
                    other.internalGetA());
            result = result && internalGetB().equals(
                    other.internalGetB());
            result = result && internalGetC().equals(
                    other.internalGetC());
            result = result && internalGetD().equals(
                    other.internalGetD());
            result = result && internalGetE().equals(
                    other.internalGetE());
            result = result && internalGetF().equals(
                    other.internalGetF());
            result = result && internalGetG().equals(
                    other.internalGetG());
            result = result && internalGetH().equals(
                    other.internalGetH());
            result = result && internalGetI().equals(
                    other.internalGetI());
            result = result && internalGetJ().equals(
                    other.internalGetJ());
            result = result && unknownFields.equals(other.unknownFields);
            return result;
        }

        @Override
        public int hashCode() {
            if (memoizedHashCode != 0) {
                return memoizedHashCode;
            }
            int hash = 41;
            hash = (19 * hash) + getDescriptor().hashCode();
            if (!internalGetA().getMap().isEmpty()) {
                hash = (37 * hash) + A_FIELD_NUMBER;
                hash = (53 * hash) + internalGetA().hashCode();
            }
            if (!internalGetB().getMap().isEmpty()) {
                hash = (37 * hash) + B_FIELD_NUMBER;
                hash = (53 * hash) + internalGetB().hashCode();
            }
            if (!internalGetC().getMap().isEmpty()) {
                hash = (37 * hash) + C_FIELD_NUMBER;
                hash = (53 * hash) + internalGetC().hashCode();
            }
            if (!internalGetD().getMap().isEmpty()) {
                hash = (37 * hash) + D_FIELD_NUMBER;
                hash = (53 * hash) + internalGetD().hashCode();
            }
            if (!internalGetE().getMap().isEmpty()) {
                hash = (37 * hash) + E_FIELD_NUMBER;
                hash = (53 * hash) + internalGetE().hashCode();
            }
            if (!internalGetF().getMap().isEmpty()) {
                hash = (37 * hash) + F_FIELD_NUMBER;
                hash = (53 * hash) + internalGetF().hashCode();
            }
            if (!internalGetG().getMap().isEmpty()) {
                hash = (37 * hash) + G_FIELD_NUMBER;
                hash = (53 * hash) + internalGetG().hashCode();
            }
            if (!internalGetH().getMap().isEmpty()) {
                hash = (37 * hash) + H_FIELD_NUMBER;
                hash = (53 * hash) + internalGetH().hashCode();
            }
            if (!internalGetI().getMap().isEmpty()) {
                hash = (37 * hash) + I_FIELD_NUMBER;
                hash = (53 * hash) + internalGetI().hashCode();
            }
            if (!internalGetJ().getMap().isEmpty()) {
                hash = (37 * hash) + J_FIELD_NUMBER;
                hash = (53 * hash) + internalGetJ().hashCode();
            }
            hash = (29 * hash) + unknownFields.hashCode();
            memoizedHashCode = hash;
            return hash;
        }

        public static MapObject parseFrom(
                java.nio.ByteBuffer data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static MapObject parseFrom(
                java.nio.ByteBuffer data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static MapObject parseFrom(
                com.google.protobuf.ByteString data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static MapObject parseFrom(
                com.google.protobuf.ByteString data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static MapObject parseFrom(byte[] data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static MapObject parseFrom(
                byte[] data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static MapObject parseFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static MapObject 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 MapObject parseDelimitedFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input);
        }

        public static MapObject 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 MapObject parseFrom(
                com.google.protobuf.CodedInputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static MapObject parseFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        @Override
        public Builder newBuilderForType() {
            return newBuilder();
        }

        public static Builder newBuilder() {
            return DEFAULT_INSTANCE.toBuilder();
        }

        public static Builder newBuilder(MapObject prototype) {
            return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
        }

        @Override
        public Builder toBuilder() {
            return this == DEFAULT_INSTANCE
                    ? new Builder() : new Builder().mergeFrom(this);
        }

        @Override
        protected Builder newBuilderForType(
                BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
        }

        /**
         * Protobuf type {@code MapObject}
         */
        public static final class Builder extends
                com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
                // @@protoc_insertion_point(builder_implements:MapObject)
                MapObjectOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
                return FieldProtobufObject.internal_static_MapObject_descriptor;
            }

            @SuppressWarnings({"rawtypes"})
            protected com.google.protobuf.MapField internalGetMapField(
                    int number) {
                switch (number) {
                    case 1:
                        return internalGetA();
                    case 2:
                        return internalGetB();
                    case 3:
                        return internalGetC();
                    case 4:
                        return internalGetD();
                    case 5:
                        return internalGetE();
                    case 6:
                        return internalGetF();
                    case 7:
                        return internalGetG();
                    case 8:
                        return internalGetH();
                    case 9:
                        return internalGetI();
                    case 10:
                        return internalGetJ();
                    default:
                        throw new RuntimeException(
                                "Invalid map field number: " + number);
                }
            }

            @SuppressWarnings({"rawtypes"})
            protected com.google.protobuf.MapField internalGetMutableMapField(
                    int number) {
                switch (number) {
                    case 1:
                        return internalGetMutableA();
                    case 2:
                        return internalGetMutableB();
                    case 3:
                        return internalGetMutableC();
                    case 4:
                        return internalGetMutableD();
                    case 5:
                        return internalGetMutableE();
                    case 6:
                        return internalGetMutableF();
                    case 7:
                        return internalGetMutableG();
                    case 8:
                        return internalGetMutableH();
                    case 9:
                        return internalGetMutableI();
                    case 10:
                        return internalGetMutableJ();
                    default:
                        throw new RuntimeException(
                                "Invalid map field number: " + number);
                }
            }

            @Override
            protected FieldAccessorTable
            internalGetFieldAccessorTable() {
                return FieldProtobufObject.internal_static_MapObject_fieldAccessorTable
                        .ensureFieldAccessorsInitialized(
                                MapObject.class, Builder.class);
            }

            // Construct using com.zfoo.protocol.field.packet.FieldProtobufObject.MapObject.newBuilder()
            private Builder() {
                maybeForceBuilderInitialization();
            }

            private Builder(
                    BuilderParent parent) {
                super(parent);
                maybeForceBuilderInitialization();
            }

            private void maybeForceBuilderInitialization() {
                if (com.google.protobuf.GeneratedMessageV3
                        .alwaysUseFieldBuilders) {
                }
            }

            @Override
            public Builder clear() {
                super.clear();
                internalGetMutableA().clear();
                internalGetMutableB().clear();
                internalGetMutableC().clear();
                internalGetMutableD().clear();
                internalGetMutableE().clear();
                internalGetMutableF().clear();
                internalGetMutableG().clear();
                internalGetMutableH().clear();
                internalGetMutableI().clear();
                internalGetMutableJ().clear();
                return this;
            }

            @Override
            public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
                return FieldProtobufObject.internal_static_MapObject_descriptor;
            }

            @Override
            public MapObject getDefaultInstanceForType() {
                return MapObject.getDefaultInstance();
            }

            @Override
            public MapObject build() {
                MapObject result = buildPartial();
                if (!result.isInitialized()) {
                    throw newUninitializedMessageException(result);
                }
                return result;
            }

            @Override
            public MapObject buildPartial() {
                MapObject result = new MapObject(this);
                int from_bitField0_ = bitField0_;
                result.a_ = internalGetA();
                result.a_.makeImmutable();
                result.b_ = internalGetB();
                result.b_.makeImmutable();
                result.c_ = internalGetC();
                result.c_.makeImmutable();
                result.d_ = internalGetD();
                result.d_.makeImmutable();
                result.e_ = internalGetE();
                result.e_.makeImmutable();
                result.f_ = internalGetF();
                result.f_.makeImmutable();
                result.g_ = internalGetG();
                result.g_.makeImmutable();
                result.h_ = internalGetH();
                result.h_.makeImmutable();
                result.i_ = internalGetI();
                result.i_.makeImmutable();
                result.j_ = internalGetJ();
                result.j_.makeImmutable();
                onBuilt();
                return result;
            }

            @Override
            public Builder clone() {
                return (Builder) super.clone();
            }

            @Override
            public Builder setField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.setField(field, value);
            }

            @Override
            public Builder clearField(
                    com.google.protobuf.Descriptors.FieldDescriptor field) {
                return (Builder) super.clearField(field);
            }

            @Override
            public Builder clearOneof(
                    com.google.protobuf.Descriptors.OneofDescriptor oneof) {
                return (Builder) super.clearOneof(oneof);
            }

            @Override
            public Builder setRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    int index, Object value) {
                return (Builder) super.setRepeatedField(field, index, value);
            }

            @Override
            public Builder addRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.addRepeatedField(field, value);
            }

            @Override
            public Builder mergeFrom(com.google.protobuf.Message other) {
                if (other instanceof MapObject) {
                    return mergeFrom((MapObject) other);
                } else {
                    super.mergeFrom(other);
                    return this;
                }
            }

            public Builder mergeFrom(MapObject other) {
                if (other == MapObject.getDefaultInstance()) return this;
                internalGetMutableA().mergeFrom(
                        other.internalGetA());
                internalGetMutableB().mergeFrom(
                        other.internalGetB());
                internalGetMutableC().mergeFrom(
                        other.internalGetC());
                internalGetMutableD().mergeFrom(
                        other.internalGetD());
                internalGetMutableE().mergeFrom(
                        other.internalGetE());
                internalGetMutableF().mergeFrom(
                        other.internalGetF());
                internalGetMutableG().mergeFrom(
                        other.internalGetG());
                internalGetMutableH().mergeFrom(
                        other.internalGetH());
                internalGetMutableI().mergeFrom(
                        other.internalGetI());
                internalGetMutableJ().mergeFrom(
                        other.internalGetJ());
                this.mergeUnknownFields(other.unknownFields);
                onChanged();
                return this;
            }

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

            @Override
            public Builder mergeFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws java.io.IOException {
                MapObject parsedMessage = null;
                try {
                    parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
                } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                    parsedMessage = (MapObject) e.getUnfinishedMessage();
                    throw e.unwrapIOException();
                } finally {
                    if (parsedMessage != null) {
                        mergeFrom(parsedMessage);
                    }
                }
                return this;
            }

            private int bitField0_;

            private com.google.protobuf.MapField<
                    Integer, String> a_;

            private com.google.protobuf.MapField<Integer, String>
            internalGetA() {
                if (a_ == null) {
                    return com.google.protobuf.MapField.emptyMapField(
                            ADefaultEntryHolder.defaultEntry);
                }
                return a_;
            }

            private com.google.protobuf.MapField<Integer, String>
            internalGetMutableA() {
                onChanged();
                ;
                if (a_ == null) {
                    a_ = com.google.protobuf.MapField.newMapField(
                            ADefaultEntryHolder.defaultEntry);
                }
                if (!a_.isMutable()) {
                    a_ = a_.copy();
                }
                return a_;
            }

            public int getACount() {
                return internalGetA().getMap().size();
            }

            /**
             * <code>map&lt;int32, string&gt; a = 1;</code>
             */

            public boolean containsA(
                    int key) {

                return internalGetA().getMap().containsKey(key);
            }

            /**
             * Use {@link #getAMap()} instead.
             */
            @Deprecated
            public java.util.Map<Integer, String> getA() {
                return getAMap();
            }

            /**
             * <code>map&lt;int32, string&gt; a = 1;</code>
             */

            public java.util.Map<Integer, String> getAMap() {
                return internalGetA().getMap();
            }

            /**
             * <code>map&lt;int32, string&gt; a = 1;</code>
             */

            public String getAOrDefault(
                    int key,
                    String defaultValue) {

                java.util.Map<Integer, String> map =
                        internalGetA().getMap();
                return map.containsKey(key) ? map.get(key) : defaultValue;
            }

            /**
             * <code>map&lt;int32, string&gt; a = 1;</code>
             */

            public String getAOrThrow(
                    int key) {

                java.util.Map<Integer, String> map =
                        internalGetA().getMap();
                if (!map.containsKey(key)) {
                    throw new IllegalArgumentException();
                }
                return map.get(key);
            }

            public Builder clearA() {
                internalGetMutableA().getMutableMap()
                        .clear();
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; a = 1;</code>
             */

            public Builder removeA(
                    int key) {

                internalGetMutableA().getMutableMap()
                        .remove(key);
                return this;
            }

            /**
             * Use alternate mutation accessors instead.
             */
            @Deprecated
            public java.util.Map<Integer, String>
            getMutableA() {
                return internalGetMutableA().getMutableMap();
            }

            /**
             * <code>map&lt;int32, string&gt; a = 1;</code>
             */
            public Builder putA(
                    int key,
                    String value) {

                if (value == null) {
                    throw new NullPointerException();
                }
                internalGetMutableA().getMutableMap()
                        .put(key, value);
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; a = 1;</code>
             */

            public Builder putAllA(
                    java.util.Map<Integer, String> values) {
                internalGetMutableA().getMutableMap()
                        .putAll(values);
                return this;
            }

            private com.google.protobuf.MapField<
                    Integer, String> b_;

            private com.google.protobuf.MapField<Integer, String>
            internalGetB() {
                if (b_ == null) {
                    return com.google.protobuf.MapField.emptyMapField(
                            BDefaultEntryHolder.defaultEntry);
                }
                return b_;
            }

            private com.google.protobuf.MapField<Integer, String>
            internalGetMutableB() {
                onChanged();
                ;
                if (b_ == null) {
                    b_ = com.google.protobuf.MapField.newMapField(
                            BDefaultEntryHolder.defaultEntry);
                }
                if (!b_.isMutable()) {
                    b_ = b_.copy();
                }
                return b_;
            }

            public int getBCount() {
                return internalGetB().getMap().size();
            }

            /**
             * <code>map&lt;int32, string&gt; b = 2;</code>
             */

            public boolean containsB(
                    int key) {

                return internalGetB().getMap().containsKey(key);
            }

            /**
             * Use {@link #getBMap()} instead.
             */
            @Deprecated
            public java.util.Map<Integer, String> getB() {
                return getBMap();
            }

            /**
             * <code>map&lt;int32, string&gt; b = 2;</code>
             */

            public java.util.Map<Integer, String> getBMap() {
                return internalGetB().getMap();
            }

            /**
             * <code>map&lt;int32, string&gt; b = 2;</code>
             */

            public String getBOrDefault(
                    int key,
                    String defaultValue) {

                java.util.Map<Integer, String> map =
                        internalGetB().getMap();
                return map.containsKey(key) ? map.get(key) : defaultValue;
            }

            /**
             * <code>map&lt;int32, string&gt; b = 2;</code>
             */

            public String getBOrThrow(
                    int key) {

                java.util.Map<Integer, String> map =
                        internalGetB().getMap();
                if (!map.containsKey(key)) {
                    throw new IllegalArgumentException();
                }
                return map.get(key);
            }

            public Builder clearB() {
                internalGetMutableB().getMutableMap()
                        .clear();
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; b = 2;</code>
             */

            public Builder removeB(
                    int key) {

                internalGetMutableB().getMutableMap()
                        .remove(key);
                return this;
            }

            /**
             * Use alternate mutation accessors instead.
             */
            @Deprecated
            public java.util.Map<Integer, String>
            getMutableB() {
                return internalGetMutableB().getMutableMap();
            }

            /**
             * <code>map&lt;int32, string&gt; b = 2;</code>
             */
            public Builder putB(
                    int key,
                    String value) {

                if (value == null) {
                    throw new NullPointerException();
                }
                internalGetMutableB().getMutableMap()
                        .put(key, value);
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; b = 2;</code>
             */

            public Builder putAllB(
                    java.util.Map<Integer, String> values) {
                internalGetMutableB().getMutableMap()
                        .putAll(values);
                return this;
            }

            private com.google.protobuf.MapField<
                    Integer, String> c_;

            private com.google.protobuf.MapField<Integer, String>
            internalGetC() {
                if (c_ == null) {
                    return com.google.protobuf.MapField.emptyMapField(
                            CDefaultEntryHolder.defaultEntry);
                }
                return c_;
            }

            private com.google.protobuf.MapField<Integer, String>
            internalGetMutableC() {
                onChanged();
                ;
                if (c_ == null) {
                    c_ = com.google.protobuf.MapField.newMapField(
                            CDefaultEntryHolder.defaultEntry);
                }
                if (!c_.isMutable()) {
                    c_ = c_.copy();
                }
                return c_;
            }

            public int getCCount() {
                return internalGetC().getMap().size();
            }

            /**
             * <code>map&lt;int32, string&gt; c = 3;</code>
             */

            public boolean containsC(
                    int key) {

                return internalGetC().getMap().containsKey(key);
            }

            /**
             * Use {@link #getCMap()} instead.
             */
            @Deprecated
            public java.util.Map<Integer, String> getC() {
                return getCMap();
            }

            /**
             * <code>map&lt;int32, string&gt; c = 3;</code>
             */

            public java.util.Map<Integer, String> getCMap() {
                return internalGetC().getMap();
            }

            /**
             * <code>map&lt;int32, string&gt; c = 3;</code>
             */

            public String getCOrDefault(
                    int key,
                    String defaultValue) {

                java.util.Map<Integer, String> map =
                        internalGetC().getMap();
                return map.containsKey(key) ? map.get(key) : defaultValue;
            }

            /**
             * <code>map&lt;int32, string&gt; c = 3;</code>
             */

            public String getCOrThrow(
                    int key) {

                java.util.Map<Integer, String> map =
                        internalGetC().getMap();
                if (!map.containsKey(key)) {
                    throw new IllegalArgumentException();
                }
                return map.get(key);
            }

            public Builder clearC() {
                internalGetMutableC().getMutableMap()
                        .clear();
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; c = 3;</code>
             */

            public Builder removeC(
                    int key) {

                internalGetMutableC().getMutableMap()
                        .remove(key);
                return this;
            }

            /**
             * Use alternate mutation accessors instead.
             */
            @Deprecated
            public java.util.Map<Integer, String>
            getMutableC() {
                return internalGetMutableC().getMutableMap();
            }

            /**
             * <code>map&lt;int32, string&gt; c = 3;</code>
             */
            public Builder putC(
                    int key,
                    String value) {

                if (value == null) {
                    throw new NullPointerException();
                }
                internalGetMutableC().getMutableMap()
                        .put(key, value);
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; c = 3;</code>
             */

            public Builder putAllC(
                    java.util.Map<Integer, String> values) {
                internalGetMutableC().getMutableMap()
                        .putAll(values);
                return this;
            }

            private com.google.protobuf.MapField<
                    Integer, String> d_;

            private com.google.protobuf.MapField<Integer, String>
            internalGetD() {
                if (d_ == null) {
                    return com.google.protobuf.MapField.emptyMapField(
                            DDefaultEntryHolder.defaultEntry);
                }
                return d_;
            }

            private com.google.protobuf.MapField<Integer, String>
            internalGetMutableD() {
                onChanged();
                ;
                if (d_ == null) {
                    d_ = com.google.protobuf.MapField.newMapField(
                            DDefaultEntryHolder.defaultEntry);
                }
                if (!d_.isMutable()) {
                    d_ = d_.copy();
                }
                return d_;
            }

            public int getDCount() {
                return internalGetD().getMap().size();
            }

            /**
             * <code>map&lt;int32, string&gt; d = 4;</code>
             */

            public boolean containsD(
                    int key) {

                return internalGetD().getMap().containsKey(key);
            }

            /**
             * Use {@link #getDMap()} instead.
             */
            @Deprecated
            public java.util.Map<Integer, String> getD() {
                return getDMap();
            }

            /**
             * <code>map&lt;int32, string&gt; d = 4;</code>
             */

            public java.util.Map<Integer, String> getDMap() {
                return internalGetD().getMap();
            }

            /**
             * <code>map&lt;int32, string&gt; d = 4;</code>
             */

            public String getDOrDefault(
                    int key,
                    String defaultValue) {

                java.util.Map<Integer, String> map =
                        internalGetD().getMap();
                return map.containsKey(key) ? map.get(key) : defaultValue;
            }

            /**
             * <code>map&lt;int32, string&gt; d = 4;</code>
             */

            public String getDOrThrow(
                    int key) {

                java.util.Map<Integer, String> map =
                        internalGetD().getMap();
                if (!map.containsKey(key)) {
                    throw new IllegalArgumentException();
                }
                return map.get(key);
            }

            public Builder clearD() {
                internalGetMutableD().getMutableMap()
                        .clear();
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; d = 4;</code>
             */

            public Builder removeD(
                    int key) {

                internalGetMutableD().getMutableMap()
                        .remove(key);
                return this;
            }

            /**
             * Use alternate mutation accessors instead.
             */
            @Deprecated
            public java.util.Map<Integer, String>
            getMutableD() {
                return internalGetMutableD().getMutableMap();
            }

            /**
             * <code>map&lt;int32, string&gt; d = 4;</code>
             */
            public Builder putD(
                    int key,
                    String value) {

                if (value == null) {
                    throw new NullPointerException();
                }
                internalGetMutableD().getMutableMap()
                        .put(key, value);
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; d = 4;</code>
             */

            public Builder putAllD(
                    java.util.Map<Integer, String> values) {
                internalGetMutableD().getMutableMap()
                        .putAll(values);
                return this;
            }

            private com.google.protobuf.MapField<
                    Integer, String> e_;

            private com.google.protobuf.MapField<Integer, String>
            internalGetE() {
                if (e_ == null) {
                    return com.google.protobuf.MapField.emptyMapField(
                            EDefaultEntryHolder.defaultEntry);
                }
                return e_;
            }

            private com.google.protobuf.MapField<Integer, String>
            internalGetMutableE() {
                onChanged();
                ;
                if (e_ == null) {
                    e_ = com.google.protobuf.MapField.newMapField(
                            EDefaultEntryHolder.defaultEntry);
                }
                if (!e_.isMutable()) {
                    e_ = e_.copy();
                }
                return e_;
            }

            public int getECount() {
                return internalGetE().getMap().size();
            }

            /**
             * <code>map&lt;int32, string&gt; e = 5;</code>
             */

            public boolean containsE(
                    int key) {

                return internalGetE().getMap().containsKey(key);
            }

            /**
             * Use {@link #getEMap()} instead.
             */
            @Deprecated
            public java.util.Map<Integer, String> getE() {
                return getEMap();
            }

            /**
             * <code>map&lt;int32, string&gt; e = 5;</code>
             */

            public java.util.Map<Integer, String> getEMap() {
                return internalGetE().getMap();
            }

            /**
             * <code>map&lt;int32, string&gt; e = 5;</code>
             */

            public String getEOrDefault(
                    int key,
                    String defaultValue) {

                java.util.Map<Integer, String> map =
                        internalGetE().getMap();
                return map.containsKey(key) ? map.get(key) : defaultValue;
            }

            /**
             * <code>map&lt;int32, string&gt; e = 5;</code>
             */

            public String getEOrThrow(
                    int key) {

                java.util.Map<Integer, String> map =
                        internalGetE().getMap();
                if (!map.containsKey(key)) {
                    throw new IllegalArgumentException();
                }
                return map.get(key);
            }

            public Builder clearE() {
                internalGetMutableE().getMutableMap()
                        .clear();
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; e = 5;</code>
             */

            public Builder removeE(
                    int key) {

                internalGetMutableE().getMutableMap()
                        .remove(key);
                return this;
            }

            /**
             * Use alternate mutation accessors instead.
             */
            @Deprecated
            public java.util.Map<Integer, String>
            getMutableE() {
                return internalGetMutableE().getMutableMap();
            }

            /**
             * <code>map&lt;int32, string&gt; e = 5;</code>
             */
            public Builder putE(
                    int key,
                    String value) {

                if (value == null) {
                    throw new NullPointerException();
                }
                internalGetMutableE().getMutableMap()
                        .put(key, value);
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; e = 5;</code>
             */

            public Builder putAllE(
                    java.util.Map<Integer, String> values) {
                internalGetMutableE().getMutableMap()
                        .putAll(values);
                return this;
            }

            private com.google.protobuf.MapField<
                    Integer, String> f_;

            private com.google.protobuf.MapField<Integer, String>
            internalGetF() {
                if (f_ == null) {
                    return com.google.protobuf.MapField.emptyMapField(
                            FDefaultEntryHolder.defaultEntry);
                }
                return f_;
            }

            private com.google.protobuf.MapField<Integer, String>
            internalGetMutableF() {
                onChanged();
                ;
                if (f_ == null) {
                    f_ = com.google.protobuf.MapField.newMapField(
                            FDefaultEntryHolder.defaultEntry);
                }
                if (!f_.isMutable()) {
                    f_ = f_.copy();
                }
                return f_;
            }

            public int getFCount() {
                return internalGetF().getMap().size();
            }

            /**
             * <code>map&lt;int32, string&gt; f = 6;</code>
             */

            public boolean containsF(
                    int key) {

                return internalGetF().getMap().containsKey(key);
            }

            /**
             * Use {@link #getFMap()} instead.
             */
            @Deprecated
            public java.util.Map<Integer, String> getF() {
                return getFMap();
            }

            /**
             * <code>map&lt;int32, string&gt; f = 6;</code>
             */

            public java.util.Map<Integer, String> getFMap() {
                return internalGetF().getMap();
            }

            /**
             * <code>map&lt;int32, string&gt; f = 6;</code>
             */

            public String getFOrDefault(
                    int key,
                    String defaultValue) {

                java.util.Map<Integer, String> map =
                        internalGetF().getMap();
                return map.containsKey(key) ? map.get(key) : defaultValue;
            }

            /**
             * <code>map&lt;int32, string&gt; f = 6;</code>
             */

            public String getFOrThrow(
                    int key) {

                java.util.Map<Integer, String> map =
                        internalGetF().getMap();
                if (!map.containsKey(key)) {
                    throw new IllegalArgumentException();
                }
                return map.get(key);
            }

            public Builder clearF() {
                internalGetMutableF().getMutableMap()
                        .clear();
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; f = 6;</code>
             */

            public Builder removeF(
                    int key) {

                internalGetMutableF().getMutableMap()
                        .remove(key);
                return this;
            }

            /**
             * Use alternate mutation accessors instead.
             */
            @Deprecated
            public java.util.Map<Integer, String>
            getMutableF() {
                return internalGetMutableF().getMutableMap();
            }

            /**
             * <code>map&lt;int32, string&gt; f = 6;</code>
             */
            public Builder putF(
                    int key,
                    String value) {

                if (value == null) {
                    throw new NullPointerException();
                }
                internalGetMutableF().getMutableMap()
                        .put(key, value);
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; f = 6;</code>
             */

            public Builder putAllF(
                    java.util.Map<Integer, String> values) {
                internalGetMutableF().getMutableMap()
                        .putAll(values);
                return this;
            }

            private com.google.protobuf.MapField<
                    Integer, String> g_;

            private com.google.protobuf.MapField<Integer, String>
            internalGetG() {
                if (g_ == null) {
                    return com.google.protobuf.MapField.emptyMapField(
                            GDefaultEntryHolder.defaultEntry);
                }
                return g_;
            }

            private com.google.protobuf.MapField<Integer, String>
            internalGetMutableG() {
                onChanged();
                ;
                if (g_ == null) {
                    g_ = com.google.protobuf.MapField.newMapField(
                            GDefaultEntryHolder.defaultEntry);
                }
                if (!g_.isMutable()) {
                    g_ = g_.copy();
                }
                return g_;
            }

            public int getGCount() {
                return internalGetG().getMap().size();
            }

            /**
             * <code>map&lt;int32, string&gt; g = 7;</code>
             */

            public boolean containsG(
                    int key) {

                return internalGetG().getMap().containsKey(key);
            }

            /**
             * Use {@link #getGMap()} instead.
             */
            @Deprecated
            public java.util.Map<Integer, String> getG() {
                return getGMap();
            }

            /**
             * <code>map&lt;int32, string&gt; g = 7;</code>
             */

            public java.util.Map<Integer, String> getGMap() {
                return internalGetG().getMap();
            }

            /**
             * <code>map&lt;int32, string&gt; g = 7;</code>
             */

            public String getGOrDefault(
                    int key,
                    String defaultValue) {

                java.util.Map<Integer, String> map =
                        internalGetG().getMap();
                return map.containsKey(key) ? map.get(key) : defaultValue;
            }

            /**
             * <code>map&lt;int32, string&gt; g = 7;</code>
             */

            public String getGOrThrow(
                    int key) {

                java.util.Map<Integer, String> map =
                        internalGetG().getMap();
                if (!map.containsKey(key)) {
                    throw new IllegalArgumentException();
                }
                return map.get(key);
            }

            public Builder clearG() {
                internalGetMutableG().getMutableMap()
                        .clear();
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; g = 7;</code>
             */

            public Builder removeG(
                    int key) {

                internalGetMutableG().getMutableMap()
                        .remove(key);
                return this;
            }

            /**
             * Use alternate mutation accessors instead.
             */
            @Deprecated
            public java.util.Map<Integer, String>
            getMutableG() {
                return internalGetMutableG().getMutableMap();
            }

            /**
             * <code>map&lt;int32, string&gt; g = 7;</code>
             */
            public Builder putG(
                    int key,
                    String value) {

                if (value == null) {
                    throw new NullPointerException();
                }
                internalGetMutableG().getMutableMap()
                        .put(key, value);
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; g = 7;</code>
             */

            public Builder putAllG(
                    java.util.Map<Integer, String> values) {
                internalGetMutableG().getMutableMap()
                        .putAll(values);
                return this;
            }

            private com.google.protobuf.MapField<
                    Integer, String> h_;

            private com.google.protobuf.MapField<Integer, String>
            internalGetH() {
                if (h_ == null) {
                    return com.google.protobuf.MapField.emptyMapField(
                            HDefaultEntryHolder.defaultEntry);
                }
                return h_;
            }

            private com.google.protobuf.MapField<Integer, String>
            internalGetMutableH() {
                onChanged();
                ;
                if (h_ == null) {
                    h_ = com.google.protobuf.MapField.newMapField(
                            HDefaultEntryHolder.defaultEntry);
                }
                if (!h_.isMutable()) {
                    h_ = h_.copy();
                }
                return h_;
            }

            public int getHCount() {
                return internalGetH().getMap().size();
            }

            /**
             * <code>map&lt;int32, string&gt; h = 8;</code>
             */

            public boolean containsH(
                    int key) {

                return internalGetH().getMap().containsKey(key);
            }

            /**
             * Use {@link #getHMap()} instead.
             */
            @Deprecated
            public java.util.Map<Integer, String> getH() {
                return getHMap();
            }

            /**
             * <code>map&lt;int32, string&gt; h = 8;</code>
             */

            public java.util.Map<Integer, String> getHMap() {
                return internalGetH().getMap();
            }

            /**
             * <code>map&lt;int32, string&gt; h = 8;</code>
             */

            public String getHOrDefault(
                    int key,
                    String defaultValue) {

                java.util.Map<Integer, String> map =
                        internalGetH().getMap();
                return map.containsKey(key) ? map.get(key) : defaultValue;
            }

            /**
             * <code>map&lt;int32, string&gt; h = 8;</code>
             */

            public String getHOrThrow(
                    int key) {

                java.util.Map<Integer, String> map =
                        internalGetH().getMap();
                if (!map.containsKey(key)) {
                    throw new IllegalArgumentException();
                }
                return map.get(key);
            }

            public Builder clearH() {
                internalGetMutableH().getMutableMap()
                        .clear();
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; h = 8;</code>
             */

            public Builder removeH(
                    int key) {

                internalGetMutableH().getMutableMap()
                        .remove(key);
                return this;
            }

            /**
             * Use alternate mutation accessors instead.
             */
            @Deprecated
            public java.util.Map<Integer, String>
            getMutableH() {
                return internalGetMutableH().getMutableMap();
            }

            /**
             * <code>map&lt;int32, string&gt; h = 8;</code>
             */
            public Builder putH(
                    int key,
                    String value) {

                if (value == null) {
                    throw new NullPointerException();
                }
                internalGetMutableH().getMutableMap()
                        .put(key, value);
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; h = 8;</code>
             */

            public Builder putAllH(
                    java.util.Map<Integer, String> values) {
                internalGetMutableH().getMutableMap()
                        .putAll(values);
                return this;
            }

            private com.google.protobuf.MapField<
                    Integer, String> i_;

            private com.google.protobuf.MapField<Integer, String>
            internalGetI() {
                if (i_ == null) {
                    return com.google.protobuf.MapField.emptyMapField(
                            IDefaultEntryHolder.defaultEntry);
                }
                return i_;
            }

            private com.google.protobuf.MapField<Integer, String>
            internalGetMutableI() {
                onChanged();
                ;
                if (i_ == null) {
                    i_ = com.google.protobuf.MapField.newMapField(
                            IDefaultEntryHolder.defaultEntry);
                }
                if (!i_.isMutable()) {
                    i_ = i_.copy();
                }
                return i_;
            }

            public int getICount() {
                return internalGetI().getMap().size();
            }

            /**
             * <code>map&lt;int32, string&gt; i = 9;</code>
             */

            public boolean containsI(
                    int key) {

                return internalGetI().getMap().containsKey(key);
            }

            /**
             * Use {@link #getIMap()} instead.
             */
            @Deprecated
            public java.util.Map<Integer, String> getI() {
                return getIMap();
            }

            /**
             * <code>map&lt;int32, string&gt; i = 9;</code>
             */

            public java.util.Map<Integer, String> getIMap() {
                return internalGetI().getMap();
            }

            /**
             * <code>map&lt;int32, string&gt; i = 9;</code>
             */

            public String getIOrDefault(
                    int key,
                    String defaultValue) {

                java.util.Map<Integer, String> map =
                        internalGetI().getMap();
                return map.containsKey(key) ? map.get(key) : defaultValue;
            }

            /**
             * <code>map&lt;int32, string&gt; i = 9;</code>
             */

            public String getIOrThrow(
                    int key) {

                java.util.Map<Integer, String> map =
                        internalGetI().getMap();
                if (!map.containsKey(key)) {
                    throw new IllegalArgumentException();
                }
                return map.get(key);
            }

            public Builder clearI() {
                internalGetMutableI().getMutableMap()
                        .clear();
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; i = 9;</code>
             */

            public Builder removeI(
                    int key) {

                internalGetMutableI().getMutableMap()
                        .remove(key);
                return this;
            }

            /**
             * Use alternate mutation accessors instead.
             */
            @Deprecated
            public java.util.Map<Integer, String>
            getMutableI() {
                return internalGetMutableI().getMutableMap();
            }

            /**
             * <code>map&lt;int32, string&gt; i = 9;</code>
             */
            public Builder putI(
                    int key,
                    String value) {

                if (value == null) {
                    throw new NullPointerException();
                }
                internalGetMutableI().getMutableMap()
                        .put(key, value);
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; i = 9;</code>
             */

            public Builder putAllI(
                    java.util.Map<Integer, String> values) {
                internalGetMutableI().getMutableMap()
                        .putAll(values);
                return this;
            }

            private com.google.protobuf.MapField<
                    Integer, String> j_;

            private com.google.protobuf.MapField<Integer, String>
            internalGetJ() {
                if (j_ == null) {
                    return com.google.protobuf.MapField.emptyMapField(
                            JDefaultEntryHolder.defaultEntry);
                }
                return j_;
            }

            private com.google.protobuf.MapField<Integer, String>
            internalGetMutableJ() {
                onChanged();
                ;
                if (j_ == null) {
                    j_ = com.google.protobuf.MapField.newMapField(
                            JDefaultEntryHolder.defaultEntry);
                }
                if (!j_.isMutable()) {
                    j_ = j_.copy();
                }
                return j_;
            }

            public int getJCount() {
                return internalGetJ().getMap().size();
            }

            /**
             * <code>map&lt;int32, string&gt; j = 10;</code>
             */

            public boolean containsJ(
                    int key) {

                return internalGetJ().getMap().containsKey(key);
            }

            /**
             * Use {@link #getJMap()} instead.
             */
            @Deprecated
            public java.util.Map<Integer, String> getJ() {
                return getJMap();
            }

            /**
             * <code>map&lt;int32, string&gt; j = 10;</code>
             */

            public java.util.Map<Integer, String> getJMap() {
                return internalGetJ().getMap();
            }

            /**
             * <code>map&lt;int32, string&gt; j = 10;</code>
             */

            public String getJOrDefault(
                    int key,
                    String defaultValue) {

                java.util.Map<Integer, String> map =
                        internalGetJ().getMap();
                return map.containsKey(key) ? map.get(key) : defaultValue;
            }

            /**
             * <code>map&lt;int32, string&gt; j = 10;</code>
             */

            public String getJOrThrow(
                    int key) {

                java.util.Map<Integer, String> map =
                        internalGetJ().getMap();
                if (!map.containsKey(key)) {
                    throw new IllegalArgumentException();
                }
                return map.get(key);
            }

            public Builder clearJ() {
                internalGetMutableJ().getMutableMap()
                        .clear();
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; j = 10;</code>
             */

            public Builder removeJ(
                    int key) {

                internalGetMutableJ().getMutableMap()
                        .remove(key);
                return this;
            }

            /**
             * Use alternate mutation accessors instead.
             */
            @Deprecated
            public java.util.Map<Integer, String>
            getMutableJ() {
                return internalGetMutableJ().getMutableMap();
            }

            /**
             * <code>map&lt;int32, string&gt; j = 10;</code>
             */
            public Builder putJ(
                    int key,
                    String value) {

                if (value == null) {
                    throw new NullPointerException();
                }
                internalGetMutableJ().getMutableMap()
                        .put(key, value);
                return this;
            }

            /**
             * <code>map&lt;int32, string&gt; j = 10;</code>
             */

            public Builder putAllJ(
                    java.util.Map<Integer, String> values) {
                internalGetMutableJ().getMutableMap()
                        .putAll(values);
                return this;
            }

            @Override
            public final Builder setUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.setUnknownFieldsProto3(unknownFields);
            }

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


            // @@protoc_insertion_point(builder_scope:MapObject)
        }

        // @@protoc_insertion_point(class_scope:MapObject)
        private static final MapObject DEFAULT_INSTANCE;

        static {
            DEFAULT_INSTANCE = new MapObject();
        }

        public static MapObject getDefaultInstance() {
            return DEFAULT_INSTANCE;
        }

        private static final com.google.protobuf.Parser<MapObject>
                PARSER = new com.google.protobuf.AbstractParser<MapObject>() {
            @Override
            public MapObject parsePartialFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws com.google.protobuf.InvalidProtocolBufferException {
                return new MapObject(input, extensionRegistry);
            }
        };

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

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

        @Override
        public MapObject getDefaultInstanceForType() {
            return DEFAULT_INSTANCE;
        }

    }

    public interface InnerObjectOrBuilder extends
            // @@protoc_insertion_point(interface_extends:InnerObject)
            com.google.protobuf.MessageOrBuilder {

        /**
         * <code>int32 x = 1;</code>
         */
        int getX();
    }

    /**
     * Protobuf type {@code InnerObject}
     */
    public static final class InnerObject extends
            com.google.protobuf.GeneratedMessageV3 implements
            // @@protoc_insertion_point(message_implements:InnerObject)
            InnerObjectOrBuilder {
        private static final long serialVersionUID = 0L;

        // Use InnerObject.newBuilder() to construct.
        private InnerObject(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
            super(builder);
        }

        private InnerObject() {
            x_ = 0;
        }

        @Override
        public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
            return this.unknownFields;
        }

        private InnerObject(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            this();
            if (extensionRegistry == null) {
                throw new NullPointerException();
            }
            int mutable_bitField0_ = 0;
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                    com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
                boolean done = false;
                while (!done) {
                    int tag = input.readTag();
                    switch (tag) {
                        case 0:
                            done = true;
                            break;
                        case 8: {

                            x_ = input.readInt32();
                            break;
                        }
                        default: {
                            if (!parseUnknownFieldProto3(
                                    input, unknownFields, extensionRegistry, tag)) {
                                done = true;
                            }
                            break;
                        }
                    }
                }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
                throw new com.google.protobuf.InvalidProtocolBufferException(
                        e).setUnfinishedMessage(this);
            } finally {
                this.unknownFields = unknownFields.build();
                makeExtensionsImmutable();
            }
        }

        public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
            return FieldProtobufObject.internal_static_InnerObject_descriptor;
        }

        @Override
        protected FieldAccessorTable
        internalGetFieldAccessorTable() {
            return FieldProtobufObject.internal_static_InnerObject_fieldAccessorTable
                    .ensureFieldAccessorsInitialized(
                            InnerObject.class, Builder.class);
        }

        public static final int X_FIELD_NUMBER = 1;
        private int x_;

        /**
         * <code>int32 x = 1;</code>
         */
        public int getX() {
            return x_;
        }

        private byte memoizedIsInitialized = -1;

        @Override
        public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
        }

        @Override
        public void writeTo(com.google.protobuf.CodedOutputStream output)
                throws java.io.IOException {
            if (x_ != 0) {
                output.writeInt32(1, x_);
            }
            unknownFields.writeTo(output);
        }

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

            size = 0;
            if (x_ != 0) {
                size += com.google.protobuf.CodedOutputStream
                        .computeInt32Size(1, x_);
            }
            size += unknownFields.getSerializedSize();
            memoizedSize = size;
            return size;
        }

        @Override
        public boolean equals(final Object obj) {
            if (obj == this) {
                return true;
            }
            if (!(obj instanceof InnerObject)) {
                return super.equals(obj);
            }
            InnerObject other = (InnerObject) obj;

            boolean result = true;
            result = result && (getX()
                    == other.getX());
            result = result && unknownFields.equals(other.unknownFields);
            return result;
        }

        @Override
        public int hashCode() {
            if (memoizedHashCode != 0) {
                return memoizedHashCode;
            }
            int hash = 41;
            hash = (19 * hash) + getDescriptor().hashCode();
            hash = (37 * hash) + X_FIELD_NUMBER;
            hash = (53 * hash) + getX();
            hash = (29 * hash) + unknownFields.hashCode();
            memoizedHashCode = hash;
            return hash;
        }

        public static InnerObject parseFrom(
                java.nio.ByteBuffer data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static InnerObject parseFrom(
                java.nio.ByteBuffer data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static InnerObject parseFrom(
                com.google.protobuf.ByteString data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static InnerObject parseFrom(
                com.google.protobuf.ByteString data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static InnerObject parseFrom(byte[] data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static InnerObject parseFrom(
                byte[] data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static InnerObject parseFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static InnerObject 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 InnerObject parseDelimitedFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input);
        }

        public static InnerObject 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 InnerObject parseFrom(
                com.google.protobuf.CodedInputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static InnerObject parseFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        @Override
        public Builder newBuilderForType() {
            return newBuilder();
        }

        public static Builder newBuilder() {
            return DEFAULT_INSTANCE.toBuilder();
        }

        public static Builder newBuilder(InnerObject prototype) {
            return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
        }

        @Override
        public Builder toBuilder() {
            return this == DEFAULT_INSTANCE
                    ? new Builder() : new Builder().mergeFrom(this);
        }

        @Override
        protected Builder newBuilderForType(
                BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
        }

        /**
         * Protobuf type {@code InnerObject}
         */
        public static final class Builder extends
                com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
                // @@protoc_insertion_point(builder_implements:InnerObject)
                InnerObjectOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
                return FieldProtobufObject.internal_static_InnerObject_descriptor;
            }

            @Override
            protected FieldAccessorTable
            internalGetFieldAccessorTable() {
                return FieldProtobufObject.internal_static_InnerObject_fieldAccessorTable
                        .ensureFieldAccessorsInitialized(
                                InnerObject.class, Builder.class);
            }

            // Construct using com.zfoo.protocol.field.packet.FieldProtobufObject.InnerObject.newBuilder()
            private Builder() {
                maybeForceBuilderInitialization();
            }

            private Builder(
                    BuilderParent parent) {
                super(parent);
                maybeForceBuilderInitialization();
            }

            private void maybeForceBuilderInitialization() {
                if (com.google.protobuf.GeneratedMessageV3
                        .alwaysUseFieldBuilders) {
                }
            }

            @Override
            public Builder clear() {
                super.clear();
                x_ = 0;

                return this;
            }

            @Override
            public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
                return FieldProtobufObject.internal_static_InnerObject_descriptor;
            }

            @Override
            public InnerObject getDefaultInstanceForType() {
                return InnerObject.getDefaultInstance();
            }

            @Override
            public InnerObject build() {
                InnerObject result = buildPartial();
                if (!result.isInitialized()) {
                    throw newUninitializedMessageException(result);
                }
                return result;
            }

            @Override
            public InnerObject buildPartial() {
                InnerObject result = new InnerObject(this);
                result.x_ = x_;
                onBuilt();
                return result;
            }

            @Override
            public Builder clone() {
                return (Builder) super.clone();
            }

            @Override
            public Builder setField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.setField(field, value);
            }

            @Override
            public Builder clearField(
                    com.google.protobuf.Descriptors.FieldDescriptor field) {
                return (Builder) super.clearField(field);
            }

            @Override
            public Builder clearOneof(
                    com.google.protobuf.Descriptors.OneofDescriptor oneof) {
                return (Builder) super.clearOneof(oneof);
            }

            @Override
            public Builder setRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    int index, Object value) {
                return (Builder) super.setRepeatedField(field, index, value);
            }

            @Override
            public Builder addRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.addRepeatedField(field, value);
            }

            @Override
            public Builder mergeFrom(com.google.protobuf.Message other) {
                if (other instanceof InnerObject) {
                    return mergeFrom((InnerObject) other);
                } else {
                    super.mergeFrom(other);
                    return this;
                }
            }

            public Builder mergeFrom(InnerObject other) {
                if (other == InnerObject.getDefaultInstance()) return this;
                if (other.getX() != 0) {
                    setX(other.getX());
                }
                this.mergeUnknownFields(other.unknownFields);
                onChanged();
                return this;
            }

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

            @Override
            public Builder mergeFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws java.io.IOException {
                InnerObject parsedMessage = null;
                try {
                    parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
                } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                    parsedMessage = (InnerObject) e.getUnfinishedMessage();
                    throw e.unwrapIOException();
                } finally {
                    if (parsedMessage != null) {
                        mergeFrom(parsedMessage);
                    }
                }
                return this;
            }

            private int x_;

            /**
             * <code>int32 x = 1;</code>
             */
            public int getX() {
                return x_;
            }

            /**
             * <code>int32 x = 1;</code>
             */
            public Builder setX(int value) {

                x_ = value;
                onChanged();
                return this;
            }

            /**
             * <code>int32 x = 1;</code>
             */
            public Builder clearX() {

                x_ = 0;
                onChanged();
                return this;
            }

            @Override
            public final Builder setUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.setUnknownFieldsProto3(unknownFields);
            }

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


            // @@protoc_insertion_point(builder_scope:InnerObject)
        }

        // @@protoc_insertion_point(class_scope:InnerObject)
        private static final InnerObject DEFAULT_INSTANCE;

        static {
            DEFAULT_INSTANCE = new InnerObject();
        }

        public static InnerObject getDefaultInstance() {
            return DEFAULT_INSTANCE;
        }

        private static final com.google.protobuf.Parser<InnerObject>
                PARSER = new com.google.protobuf.AbstractParser<InnerObject>() {
            @Override
            public InnerObject parsePartialFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws com.google.protobuf.InvalidProtocolBufferException {
                return new InnerObject(input, extensionRegistry);
            }
        };

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

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

        @Override
        public InnerObject getDefaultInstanceForType() {
            return DEFAULT_INSTANCE;
        }

    }

    public interface InnerObjectObjectOrBuilder extends
            // @@protoc_insertion_point(interface_extends:InnerObjectObject)
            com.google.protobuf.MessageOrBuilder {

        /**
         * <code>.InnerObject a = 1;</code>
         */
        boolean hasA();

        /**
         * <code>.InnerObject a = 1;</code>
         */
        InnerObject getA();

        /**
         * <code>.InnerObject a = 1;</code>
         */
        InnerObjectOrBuilder getAOrBuilder();

        /**
         * <code>.InnerObject b = 2;</code>
         */
        boolean hasB();

        /**
         * <code>.InnerObject b = 2;</code>
         */
        InnerObject getB();

        /**
         * <code>.InnerObject b = 2;</code>
         */
        InnerObjectOrBuilder getBOrBuilder();

        /**
         * <code>.InnerObject c = 3;</code>
         */
        boolean hasC();

        /**
         * <code>.InnerObject c = 3;</code>
         */
        InnerObject getC();

        /**
         * <code>.InnerObject c = 3;</code>
         */
        InnerObjectOrBuilder getCOrBuilder();

        /**
         * <code>.InnerObject d = 4;</code>
         */
        boolean hasD();

        /**
         * <code>.InnerObject d = 4;</code>
         */
        InnerObject getD();

        /**
         * <code>.InnerObject d = 4;</code>
         */
        InnerObjectOrBuilder getDOrBuilder();

        /**
         * <code>.InnerObject e = 5;</code>
         */
        boolean hasE();

        /**
         * <code>.InnerObject e = 5;</code>
         */
        InnerObject getE();

        /**
         * <code>.InnerObject e = 5;</code>
         */
        InnerObjectOrBuilder getEOrBuilder();

        /**
         * <code>.InnerObject f = 6;</code>
         */
        boolean hasF();

        /**
         * <code>.InnerObject f = 6;</code>
         */
        InnerObject getF();

        /**
         * <code>.InnerObject f = 6;</code>
         */
        InnerObjectOrBuilder getFOrBuilder();

        /**
         * <code>.InnerObject g = 7;</code>
         */
        boolean hasG();

        /**
         * <code>.InnerObject g = 7;</code>
         */
        InnerObject getG();

        /**
         * <code>.InnerObject g = 7;</code>
         */
        InnerObjectOrBuilder getGOrBuilder();

        /**
         * <code>.InnerObject h = 8;</code>
         */
        boolean hasH();

        /**
         * <code>.InnerObject h = 8;</code>
         */
        InnerObject getH();

        /**
         * <code>.InnerObject h = 8;</code>
         */
        InnerObjectOrBuilder getHOrBuilder();

        /**
         * <code>.InnerObject i = 9;</code>
         */
        boolean hasI();

        /**
         * <code>.InnerObject i = 9;</code>
         */
        InnerObject getI();

        /**
         * <code>.InnerObject i = 9;</code>
         */
        InnerObjectOrBuilder getIOrBuilder();

        /**
         * <code>.InnerObject j = 10;</code>
         */
        boolean hasJ();

        /**
         * <code>.InnerObject j = 10;</code>
         */
        InnerObject getJ();

        /**
         * <code>.InnerObject j = 10;</code>
         */
        InnerObjectOrBuilder getJOrBuilder();
    }

    /**
     * Protobuf type {@code InnerObjectObject}
     */
    public static final class InnerObjectObject extends
            com.google.protobuf.GeneratedMessageV3 implements
            // @@protoc_insertion_point(message_implements:InnerObjectObject)
            InnerObjectObjectOrBuilder {
        private static final long serialVersionUID = 0L;

        // Use InnerObjectObject.newBuilder() to construct.
        private InnerObjectObject(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
            super(builder);
        }

        private InnerObjectObject() {
        }

        @Override
        public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
            return this.unknownFields;
        }

        private InnerObjectObject(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            this();
            if (extensionRegistry == null) {
                throw new NullPointerException();
            }
            int mutable_bitField0_ = 0;
            com.google.protobuf.UnknownFieldSet.Builder unknownFields =
                    com.google.protobuf.UnknownFieldSet.newBuilder();
            try {
                boolean done = false;
                while (!done) {
                    int tag = input.readTag();
                    switch (tag) {
                        case 0:
                            done = true;
                            break;
                        case 10: {
                            InnerObject.Builder subBuilder = null;
                            if (a_ != null) {
                                subBuilder = a_.toBuilder();
                            }
                            a_ = input.readMessage(InnerObject.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(a_);
                                a_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        case 18: {
                            InnerObject.Builder subBuilder = null;
                            if (b_ != null) {
                                subBuilder = b_.toBuilder();
                            }
                            b_ = input.readMessage(InnerObject.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(b_);
                                b_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        case 26: {
                            InnerObject.Builder subBuilder = null;
                            if (c_ != null) {
                                subBuilder = c_.toBuilder();
                            }
                            c_ = input.readMessage(InnerObject.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(c_);
                                c_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        case 34: {
                            InnerObject.Builder subBuilder = null;
                            if (d_ != null) {
                                subBuilder = d_.toBuilder();
                            }
                            d_ = input.readMessage(InnerObject.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(d_);
                                d_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        case 42: {
                            InnerObject.Builder subBuilder = null;
                            if (e_ != null) {
                                subBuilder = e_.toBuilder();
                            }
                            e_ = input.readMessage(InnerObject.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(e_);
                                e_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        case 50: {
                            InnerObject.Builder subBuilder = null;
                            if (f_ != null) {
                                subBuilder = f_.toBuilder();
                            }
                            f_ = input.readMessage(InnerObject.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(f_);
                                f_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        case 58: {
                            InnerObject.Builder subBuilder = null;
                            if (g_ != null) {
                                subBuilder = g_.toBuilder();
                            }
                            g_ = input.readMessage(InnerObject.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(g_);
                                g_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        case 66: {
                            InnerObject.Builder subBuilder = null;
                            if (h_ != null) {
                                subBuilder = h_.toBuilder();
                            }
                            h_ = input.readMessage(InnerObject.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(h_);
                                h_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        case 74: {
                            InnerObject.Builder subBuilder = null;
                            if (i_ != null) {
                                subBuilder = i_.toBuilder();
                            }
                            i_ = input.readMessage(InnerObject.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(i_);
                                i_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        case 82: {
                            InnerObject.Builder subBuilder = null;
                            if (j_ != null) {
                                subBuilder = j_.toBuilder();
                            }
                            j_ = input.readMessage(InnerObject.parser(), extensionRegistry);
                            if (subBuilder != null) {
                                subBuilder.mergeFrom(j_);
                                j_ = subBuilder.buildPartial();
                            }

                            break;
                        }
                        default: {
                            if (!parseUnknownFieldProto3(
                                    input, unknownFields, extensionRegistry, tag)) {
                                done = true;
                            }
                            break;
                        }
                    }
                }
            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                throw e.setUnfinishedMessage(this);
            } catch (java.io.IOException e) {
                throw new com.google.protobuf.InvalidProtocolBufferException(
                        e).setUnfinishedMessage(this);
            } finally {
                this.unknownFields = unknownFields.build();
                makeExtensionsImmutable();
            }
        }

        public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
            return FieldProtobufObject.internal_static_InnerObjectObject_descriptor;
        }

        @Override
        protected FieldAccessorTable
        internalGetFieldAccessorTable() {
            return FieldProtobufObject.internal_static_InnerObjectObject_fieldAccessorTable
                    .ensureFieldAccessorsInitialized(
                            InnerObjectObject.class, Builder.class);
        }

        public static final int A_FIELD_NUMBER = 1;
        private InnerObject a_;

        /**
         * <code>.InnerObject a = 1;</code>
         */
        public boolean hasA() {
            return a_ != null;
        }

        /**
         * <code>.InnerObject a = 1;</code>
         */
        public InnerObject getA() {
            return a_ == null ? InnerObject.getDefaultInstance() : a_;
        }

        /**
         * <code>.InnerObject a = 1;</code>
         */
        public InnerObjectOrBuilder getAOrBuilder() {
            return getA();
        }

        public static final int B_FIELD_NUMBER = 2;
        private InnerObject b_;

        /**
         * <code>.InnerObject b = 2;</code>
         */
        public boolean hasB() {
            return b_ != null;
        }

        /**
         * <code>.InnerObject b = 2;</code>
         */
        public InnerObject getB() {
            return b_ == null ? InnerObject.getDefaultInstance() : b_;
        }

        /**
         * <code>.InnerObject b = 2;</code>
         */
        public InnerObjectOrBuilder getBOrBuilder() {
            return getB();
        }

        public static final int C_FIELD_NUMBER = 3;
        private InnerObject c_;

        /**
         * <code>.InnerObject c = 3;</code>
         */
        public boolean hasC() {
            return c_ != null;
        }

        /**
         * <code>.InnerObject c = 3;</code>
         */
        public InnerObject getC() {
            return c_ == null ? InnerObject.getDefaultInstance() : c_;
        }

        /**
         * <code>.InnerObject c = 3;</code>
         */
        public InnerObjectOrBuilder getCOrBuilder() {
            return getC();
        }

        public static final int D_FIELD_NUMBER = 4;
        private InnerObject d_;

        /**
         * <code>.InnerObject d = 4;</code>
         */
        public boolean hasD() {
            return d_ != null;
        }

        /**
         * <code>.InnerObject d = 4;</code>
         */
        public InnerObject getD() {
            return d_ == null ? InnerObject.getDefaultInstance() : d_;
        }

        /**
         * <code>.InnerObject d = 4;</code>
         */
        public InnerObjectOrBuilder getDOrBuilder() {
            return getD();
        }

        public static final int E_FIELD_NUMBER = 5;
        private InnerObject e_;

        /**
         * <code>.InnerObject e = 5;</code>
         */
        public boolean hasE() {
            return e_ != null;
        }

        /**
         * <code>.InnerObject e = 5;</code>
         */
        public InnerObject getE() {
            return e_ == null ? InnerObject.getDefaultInstance() : e_;
        }

        /**
         * <code>.InnerObject e = 5;</code>
         */
        public InnerObjectOrBuilder getEOrBuilder() {
            return getE();
        }

        public static final int F_FIELD_NUMBER = 6;
        private InnerObject f_;

        /**
         * <code>.InnerObject f = 6;</code>
         */
        public boolean hasF() {
            return f_ != null;
        }

        /**
         * <code>.InnerObject f = 6;</code>
         */
        public InnerObject getF() {
            return f_ == null ? InnerObject.getDefaultInstance() : f_;
        }

        /**
         * <code>.InnerObject f = 6;</code>
         */
        public InnerObjectOrBuilder getFOrBuilder() {
            return getF();
        }

        public static final int G_FIELD_NUMBER = 7;
        private InnerObject g_;

        /**
         * <code>.InnerObject g = 7;</code>
         */
        public boolean hasG() {
            return g_ != null;
        }

        /**
         * <code>.InnerObject g = 7;</code>
         */
        public InnerObject getG() {
            return g_ == null ? InnerObject.getDefaultInstance() : g_;
        }

        /**
         * <code>.InnerObject g = 7;</code>
         */
        public InnerObjectOrBuilder getGOrBuilder() {
            return getG();
        }

        public static final int H_FIELD_NUMBER = 8;
        private InnerObject h_;

        /**
         * <code>.InnerObject h = 8;</code>
         */
        public boolean hasH() {
            return h_ != null;
        }

        /**
         * <code>.InnerObject h = 8;</code>
         */
        public InnerObject getH() {
            return h_ == null ? InnerObject.getDefaultInstance() : h_;
        }

        /**
         * <code>.InnerObject h = 8;</code>
         */
        public InnerObjectOrBuilder getHOrBuilder() {
            return getH();
        }

        public static final int I_FIELD_NUMBER = 9;
        private InnerObject i_;

        /**
         * <code>.InnerObject i = 9;</code>
         */
        public boolean hasI() {
            return i_ != null;
        }

        /**
         * <code>.InnerObject i = 9;</code>
         */
        public InnerObject getI() {
            return i_ == null ? InnerObject.getDefaultInstance() : i_;
        }

        /**
         * <code>.InnerObject i = 9;</code>
         */
        public InnerObjectOrBuilder getIOrBuilder() {
            return getI();
        }

        public static final int J_FIELD_NUMBER = 10;
        private InnerObject j_;

        /**
         * <code>.InnerObject j = 10;</code>
         */
        public boolean hasJ() {
            return j_ != null;
        }

        /**
         * <code>.InnerObject j = 10;</code>
         */
        public InnerObject getJ() {
            return j_ == null ? InnerObject.getDefaultInstance() : j_;
        }

        /**
         * <code>.InnerObject j = 10;</code>
         */
        public InnerObjectOrBuilder getJOrBuilder() {
            return getJ();
        }

        private byte memoizedIsInitialized = -1;

        @Override
        public final boolean isInitialized() {
            byte isInitialized = memoizedIsInitialized;
            if (isInitialized == 1) return true;
            if (isInitialized == 0) return false;

            memoizedIsInitialized = 1;
            return true;
        }

        @Override
        public void writeTo(com.google.protobuf.CodedOutputStream output)
                throws java.io.IOException {
            if (a_ != null) {
                output.writeMessage(1, getA());
            }
            if (b_ != null) {
                output.writeMessage(2, getB());
            }
            if (c_ != null) {
                output.writeMessage(3, getC());
            }
            if (d_ != null) {
                output.writeMessage(4, getD());
            }
            if (e_ != null) {
                output.writeMessage(5, getE());
            }
            if (f_ != null) {
                output.writeMessage(6, getF());
            }
            if (g_ != null) {
                output.writeMessage(7, getG());
            }
            if (h_ != null) {
                output.writeMessage(8, getH());
            }
            if (i_ != null) {
                output.writeMessage(9, getI());
            }
            if (j_ != null) {
                output.writeMessage(10, getJ());
            }
            unknownFields.writeTo(output);
        }

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

            size = 0;
            if (a_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(1, getA());
            }
            if (b_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(2, getB());
            }
            if (c_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(3, getC());
            }
            if (d_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(4, getD());
            }
            if (e_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(5, getE());
            }
            if (f_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(6, getF());
            }
            if (g_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(7, getG());
            }
            if (h_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(8, getH());
            }
            if (i_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(9, getI());
            }
            if (j_ != null) {
                size += com.google.protobuf.CodedOutputStream
                        .computeMessageSize(10, getJ());
            }
            size += unknownFields.getSerializedSize();
            memoizedSize = size;
            return size;
        }

        @Override
        public boolean equals(final Object obj) {
            if (obj == this) {
                return true;
            }
            if (!(obj instanceof InnerObjectObject)) {
                return super.equals(obj);
            }
            InnerObjectObject other = (InnerObjectObject) obj;

            boolean result = true;
            result = result && (hasA() == other.hasA());
            if (hasA()) {
                result = result && getA()
                        .equals(other.getA());
            }
            result = result && (hasB() == other.hasB());
            if (hasB()) {
                result = result && getB()
                        .equals(other.getB());
            }
            result = result && (hasC() == other.hasC());
            if (hasC()) {
                result = result && getC()
                        .equals(other.getC());
            }
            result = result && (hasD() == other.hasD());
            if (hasD()) {
                result = result && getD()
                        .equals(other.getD());
            }
            result = result && (hasE() == other.hasE());
            if (hasE()) {
                result = result && getE()
                        .equals(other.getE());
            }
            result = result && (hasF() == other.hasF());
            if (hasF()) {
                result = result && getF()
                        .equals(other.getF());
            }
            result = result && (hasG() == other.hasG());
            if (hasG()) {
                result = result && getG()
                        .equals(other.getG());
            }
            result = result && (hasH() == other.hasH());
            if (hasH()) {
                result = result && getH()
                        .equals(other.getH());
            }
            result = result && (hasI() == other.hasI());
            if (hasI()) {
                result = result && getI()
                        .equals(other.getI());
            }
            result = result && (hasJ() == other.hasJ());
            if (hasJ()) {
                result = result && getJ()
                        .equals(other.getJ());
            }
            result = result && unknownFields.equals(other.unknownFields);
            return result;
        }

        @Override
        public int hashCode() {
            if (memoizedHashCode != 0) {
                return memoizedHashCode;
            }
            int hash = 41;
            hash = (19 * hash) + getDescriptor().hashCode();
            if (hasA()) {
                hash = (37 * hash) + A_FIELD_NUMBER;
                hash = (53 * hash) + getA().hashCode();
            }
            if (hasB()) {
                hash = (37 * hash) + B_FIELD_NUMBER;
                hash = (53 * hash) + getB().hashCode();
            }
            if (hasC()) {
                hash = (37 * hash) + C_FIELD_NUMBER;
                hash = (53 * hash) + getC().hashCode();
            }
            if (hasD()) {
                hash = (37 * hash) + D_FIELD_NUMBER;
                hash = (53 * hash) + getD().hashCode();
            }
            if (hasE()) {
                hash = (37 * hash) + E_FIELD_NUMBER;
                hash = (53 * hash) + getE().hashCode();
            }
            if (hasF()) {
                hash = (37 * hash) + F_FIELD_NUMBER;
                hash = (53 * hash) + getF().hashCode();
            }
            if (hasG()) {
                hash = (37 * hash) + G_FIELD_NUMBER;
                hash = (53 * hash) + getG().hashCode();
            }
            if (hasH()) {
                hash = (37 * hash) + H_FIELD_NUMBER;
                hash = (53 * hash) + getH().hashCode();
            }
            if (hasI()) {
                hash = (37 * hash) + I_FIELD_NUMBER;
                hash = (53 * hash) + getI().hashCode();
            }
            if (hasJ()) {
                hash = (37 * hash) + J_FIELD_NUMBER;
                hash = (53 * hash) + getJ().hashCode();
            }
            hash = (29 * hash) + unknownFields.hashCode();
            memoizedHashCode = hash;
            return hash;
        }

        public static InnerObjectObject parseFrom(
                java.nio.ByteBuffer data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static InnerObjectObject parseFrom(
                java.nio.ByteBuffer data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static InnerObjectObject parseFrom(
                com.google.protobuf.ByteString data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static InnerObjectObject parseFrom(
                com.google.protobuf.ByteString data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static InnerObjectObject parseFrom(byte[] data)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data);
        }

        public static InnerObjectObject parseFrom(
                byte[] data,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws com.google.protobuf.InvalidProtocolBufferException {
            return PARSER.parseFrom(data, extensionRegistry);
        }

        public static InnerObjectObject parseFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static InnerObjectObject 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 InnerObjectObject parseDelimitedFrom(java.io.InputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseDelimitedWithIOException(PARSER, input);
        }

        public static InnerObjectObject 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 InnerObjectObject parseFrom(
                com.google.protobuf.CodedInputStream input)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input);
        }

        public static InnerObjectObject parseFrom(
                com.google.protobuf.CodedInputStream input,
                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                throws java.io.IOException {
            return com.google.protobuf.GeneratedMessageV3
                    .parseWithIOException(PARSER, input, extensionRegistry);
        }

        @Override
        public Builder newBuilderForType() {
            return newBuilder();
        }

        public static Builder newBuilder() {
            return DEFAULT_INSTANCE.toBuilder();
        }

        public static Builder newBuilder(InnerObjectObject prototype) {
            return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
        }

        @Override
        public Builder toBuilder() {
            return this == DEFAULT_INSTANCE
                    ? new Builder() : new Builder().mergeFrom(this);
        }

        @Override
        protected Builder newBuilderForType(
                BuilderParent parent) {
            Builder builder = new Builder(parent);
            return builder;
        }

        /**
         * Protobuf type {@code InnerObjectObject}
         */
        public static final class Builder extends
                com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
                // @@protoc_insertion_point(builder_implements:InnerObjectObject)
                InnerObjectObjectOrBuilder {
            public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
                return FieldProtobufObject.internal_static_InnerObjectObject_descriptor;
            }

            @Override
            protected FieldAccessorTable
            internalGetFieldAccessorTable() {
                return FieldProtobufObject.internal_static_InnerObjectObject_fieldAccessorTable
                        .ensureFieldAccessorsInitialized(
                                InnerObjectObject.class, Builder.class);
            }

            // Construct using com.zfoo.protocol.field.packet.FieldProtobufObject.InnerObjectObject.newBuilder()
            private Builder() {
                maybeForceBuilderInitialization();
            }

            private Builder(
                    BuilderParent parent) {
                super(parent);
                maybeForceBuilderInitialization();
            }

            private void maybeForceBuilderInitialization() {
                if (com.google.protobuf.GeneratedMessageV3
                        .alwaysUseFieldBuilders) {
                }
            }

            @Override
            public Builder clear() {
                super.clear();
                if (aBuilder_ == null) {
                    a_ = null;
                } else {
                    a_ = null;
                    aBuilder_ = null;
                }
                if (bBuilder_ == null) {
                    b_ = null;
                } else {
                    b_ = null;
                    bBuilder_ = null;
                }
                if (cBuilder_ == null) {
                    c_ = null;
                } else {
                    c_ = null;
                    cBuilder_ = null;
                }
                if (dBuilder_ == null) {
                    d_ = null;
                } else {
                    d_ = null;
                    dBuilder_ = null;
                }
                if (eBuilder_ == null) {
                    e_ = null;
                } else {
                    e_ = null;
                    eBuilder_ = null;
                }
                if (fBuilder_ == null) {
                    f_ = null;
                } else {
                    f_ = null;
                    fBuilder_ = null;
                }
                if (gBuilder_ == null) {
                    g_ = null;
                } else {
                    g_ = null;
                    gBuilder_ = null;
                }
                if (hBuilder_ == null) {
                    h_ = null;
                } else {
                    h_ = null;
                    hBuilder_ = null;
                }
                if (iBuilder_ == null) {
                    i_ = null;
                } else {
                    i_ = null;
                    iBuilder_ = null;
                }
                if (jBuilder_ == null) {
                    j_ = null;
                } else {
                    j_ = null;
                    jBuilder_ = null;
                }
                return this;
            }

            @Override
            public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
                return FieldProtobufObject.internal_static_InnerObjectObject_descriptor;
            }

            @Override
            public InnerObjectObject getDefaultInstanceForType() {
                return InnerObjectObject.getDefaultInstance();
            }

            @Override
            public InnerObjectObject build() {
                InnerObjectObject result = buildPartial();
                if (!result.isInitialized()) {
                    throw newUninitializedMessageException(result);
                }
                return result;
            }

            @Override
            public InnerObjectObject buildPartial() {
                InnerObjectObject result = new InnerObjectObject(this);
                if (aBuilder_ == null) {
                    result.a_ = a_;
                } else {
                    result.a_ = aBuilder_.build();
                }
                if (bBuilder_ == null) {
                    result.b_ = b_;
                } else {
                    result.b_ = bBuilder_.build();
                }
                if (cBuilder_ == null) {
                    result.c_ = c_;
                } else {
                    result.c_ = cBuilder_.build();
                }
                if (dBuilder_ == null) {
                    result.d_ = d_;
                } else {
                    result.d_ = dBuilder_.build();
                }
                if (eBuilder_ == null) {
                    result.e_ = e_;
                } else {
                    result.e_ = eBuilder_.build();
                }
                if (fBuilder_ == null) {
                    result.f_ = f_;
                } else {
                    result.f_ = fBuilder_.build();
                }
                if (gBuilder_ == null) {
                    result.g_ = g_;
                } else {
                    result.g_ = gBuilder_.build();
                }
                if (hBuilder_ == null) {
                    result.h_ = h_;
                } else {
                    result.h_ = hBuilder_.build();
                }
                if (iBuilder_ == null) {
                    result.i_ = i_;
                } else {
                    result.i_ = iBuilder_.build();
                }
                if (jBuilder_ == null) {
                    result.j_ = j_;
                } else {
                    result.j_ = jBuilder_.build();
                }
                onBuilt();
                return result;
            }

            @Override
            public Builder clone() {
                return (Builder) super.clone();
            }

            @Override
            public Builder setField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.setField(field, value);
            }

            @Override
            public Builder clearField(
                    com.google.protobuf.Descriptors.FieldDescriptor field) {
                return (Builder) super.clearField(field);
            }

            @Override
            public Builder clearOneof(
                    com.google.protobuf.Descriptors.OneofDescriptor oneof) {
                return (Builder) super.clearOneof(oneof);
            }

            @Override
            public Builder setRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    int index, Object value) {
                return (Builder) super.setRepeatedField(field, index, value);
            }

            @Override
            public Builder addRepeatedField(
                    com.google.protobuf.Descriptors.FieldDescriptor field,
                    Object value) {
                return (Builder) super.addRepeatedField(field, value);
            }

            @Override
            public Builder mergeFrom(com.google.protobuf.Message other) {
                if (other instanceof InnerObjectObject) {
                    return mergeFrom((InnerObjectObject) other);
                } else {
                    super.mergeFrom(other);
                    return this;
                }
            }

            public Builder mergeFrom(InnerObjectObject other) {
                if (other == InnerObjectObject.getDefaultInstance()) return this;
                if (other.hasA()) {
                    mergeA(other.getA());
                }
                if (other.hasB()) {
                    mergeB(other.getB());
                }
                if (other.hasC()) {
                    mergeC(other.getC());
                }
                if (other.hasD()) {
                    mergeD(other.getD());
                }
                if (other.hasE()) {
                    mergeE(other.getE());
                }
                if (other.hasF()) {
                    mergeF(other.getF());
                }
                if (other.hasG()) {
                    mergeG(other.getG());
                }
                if (other.hasH()) {
                    mergeH(other.getH());
                }
                if (other.hasI()) {
                    mergeI(other.getI());
                }
                if (other.hasJ()) {
                    mergeJ(other.getJ());
                }
                this.mergeUnknownFields(other.unknownFields);
                onChanged();
                return this;
            }

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

            @Override
            public Builder mergeFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws java.io.IOException {
                InnerObjectObject parsedMessage = null;
                try {
                    parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
                } catch (com.google.protobuf.InvalidProtocolBufferException e) {
                    parsedMessage = (InnerObjectObject) e.getUnfinishedMessage();
                    throw e.unwrapIOException();
                } finally {
                    if (parsedMessage != null) {
                        mergeFrom(parsedMessage);
                    }
                }
                return this;
            }

            private InnerObject a_ = null;
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder> aBuilder_;

            /**
             * <code>.InnerObject a = 1;</code>
             */
            public boolean hasA() {
                return aBuilder_ != null || a_ != null;
            }

            /**
             * <code>.InnerObject a = 1;</code>
             */
            public InnerObject getA() {
                if (aBuilder_ == null) {
                    return a_ == null ? InnerObject.getDefaultInstance() : a_;
                } else {
                    return aBuilder_.getMessage();
                }
            }

            /**
             * <code>.InnerObject a = 1;</code>
             */
            public Builder setA(InnerObject value) {
                if (aBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    a_ = value;
                    onChanged();
                } else {
                    aBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject a = 1;</code>
             */
            public Builder setA(
                    InnerObject.Builder builderForValue) {
                if (aBuilder_ == null) {
                    a_ = builderForValue.build();
                    onChanged();
                } else {
                    aBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <code>.InnerObject a = 1;</code>
             */
            public Builder mergeA(InnerObject value) {
                if (aBuilder_ == null) {
                    if (a_ != null) {
                        a_ =
                                InnerObject.newBuilder(a_).mergeFrom(value).buildPartial();
                    } else {
                        a_ = value;
                    }
                    onChanged();
                } else {
                    aBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject a = 1;</code>
             */
            public Builder clearA() {
                if (aBuilder_ == null) {
                    a_ = null;
                    onChanged();
                } else {
                    a_ = null;
                    aBuilder_ = null;
                }

                return this;
            }

            /**
             * <code>.InnerObject a = 1;</code>
             */
            public InnerObject.Builder getABuilder() {

                onChanged();
                return getAFieldBuilder().getBuilder();
            }

            /**
             * <code>.InnerObject a = 1;</code>
             */
            public InnerObjectOrBuilder getAOrBuilder() {
                if (aBuilder_ != null) {
                    return aBuilder_.getMessageOrBuilder();
                } else {
                    return a_ == null ?
                            InnerObject.getDefaultInstance() : a_;
                }
            }

            /**
             * <code>.InnerObject a = 1;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder>
            getAFieldBuilder() {
                if (aBuilder_ == null) {
                    aBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            InnerObject, InnerObject.Builder, InnerObjectOrBuilder>(
                            getA(),
                            getParentForChildren(),
                            isClean());
                    a_ = null;
                }
                return aBuilder_;
            }

            private InnerObject b_ = null;
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder> bBuilder_;

            /**
             * <code>.InnerObject b = 2;</code>
             */
            public boolean hasB() {
                return bBuilder_ != null || b_ != null;
            }

            /**
             * <code>.InnerObject b = 2;</code>
             */
            public InnerObject getB() {
                if (bBuilder_ == null) {
                    return b_ == null ? InnerObject.getDefaultInstance() : b_;
                } else {
                    return bBuilder_.getMessage();
                }
            }

            /**
             * <code>.InnerObject b = 2;</code>
             */
            public Builder setB(InnerObject value) {
                if (bBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    b_ = value;
                    onChanged();
                } else {
                    bBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject b = 2;</code>
             */
            public Builder setB(
                    InnerObject.Builder builderForValue) {
                if (bBuilder_ == null) {
                    b_ = builderForValue.build();
                    onChanged();
                } else {
                    bBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <code>.InnerObject b = 2;</code>
             */
            public Builder mergeB(InnerObject value) {
                if (bBuilder_ == null) {
                    if (b_ != null) {
                        b_ =
                                InnerObject.newBuilder(b_).mergeFrom(value).buildPartial();
                    } else {
                        b_ = value;
                    }
                    onChanged();
                } else {
                    bBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject b = 2;</code>
             */
            public Builder clearB() {
                if (bBuilder_ == null) {
                    b_ = null;
                    onChanged();
                } else {
                    b_ = null;
                    bBuilder_ = null;
                }

                return this;
            }

            /**
             * <code>.InnerObject b = 2;</code>
             */
            public InnerObject.Builder getBBuilder() {

                onChanged();
                return getBFieldBuilder().getBuilder();
            }

            /**
             * <code>.InnerObject b = 2;</code>
             */
            public InnerObjectOrBuilder getBOrBuilder() {
                if (bBuilder_ != null) {
                    return bBuilder_.getMessageOrBuilder();
                } else {
                    return b_ == null ?
                            InnerObject.getDefaultInstance() : b_;
                }
            }

            /**
             * <code>.InnerObject b = 2;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder>
            getBFieldBuilder() {
                if (bBuilder_ == null) {
                    bBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            InnerObject, InnerObject.Builder, InnerObjectOrBuilder>(
                            getB(),
                            getParentForChildren(),
                            isClean());
                    b_ = null;
                }
                return bBuilder_;
            }

            private InnerObject c_ = null;
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder> cBuilder_;

            /**
             * <code>.InnerObject c = 3;</code>
             */
            public boolean hasC() {
                return cBuilder_ != null || c_ != null;
            }

            /**
             * <code>.InnerObject c = 3;</code>
             */
            public InnerObject getC() {
                if (cBuilder_ == null) {
                    return c_ == null ? InnerObject.getDefaultInstance() : c_;
                } else {
                    return cBuilder_.getMessage();
                }
            }

            /**
             * <code>.InnerObject c = 3;</code>
             */
            public Builder setC(InnerObject value) {
                if (cBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    c_ = value;
                    onChanged();
                } else {
                    cBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject c = 3;</code>
             */
            public Builder setC(
                    InnerObject.Builder builderForValue) {
                if (cBuilder_ == null) {
                    c_ = builderForValue.build();
                    onChanged();
                } else {
                    cBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <code>.InnerObject c = 3;</code>
             */
            public Builder mergeC(InnerObject value) {
                if (cBuilder_ == null) {
                    if (c_ != null) {
                        c_ =
                                InnerObject.newBuilder(c_).mergeFrom(value).buildPartial();
                    } else {
                        c_ = value;
                    }
                    onChanged();
                } else {
                    cBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject c = 3;</code>
             */
            public Builder clearC() {
                if (cBuilder_ == null) {
                    c_ = null;
                    onChanged();
                } else {
                    c_ = null;
                    cBuilder_ = null;
                }

                return this;
            }

            /**
             * <code>.InnerObject c = 3;</code>
             */
            public InnerObject.Builder getCBuilder() {

                onChanged();
                return getCFieldBuilder().getBuilder();
            }

            /**
             * <code>.InnerObject c = 3;</code>
             */
            public InnerObjectOrBuilder getCOrBuilder() {
                if (cBuilder_ != null) {
                    return cBuilder_.getMessageOrBuilder();
                } else {
                    return c_ == null ?
                            InnerObject.getDefaultInstance() : c_;
                }
            }

            /**
             * <code>.InnerObject c = 3;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder>
            getCFieldBuilder() {
                if (cBuilder_ == null) {
                    cBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            InnerObject, InnerObject.Builder, InnerObjectOrBuilder>(
                            getC(),
                            getParentForChildren(),
                            isClean());
                    c_ = null;
                }
                return cBuilder_;
            }

            private InnerObject d_ = null;
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder> dBuilder_;

            /**
             * <code>.InnerObject d = 4;</code>
             */
            public boolean hasD() {
                return dBuilder_ != null || d_ != null;
            }

            /**
             * <code>.InnerObject d = 4;</code>
             */
            public InnerObject getD() {
                if (dBuilder_ == null) {
                    return d_ == null ? InnerObject.getDefaultInstance() : d_;
                } else {
                    return dBuilder_.getMessage();
                }
            }

            /**
             * <code>.InnerObject d = 4;</code>
             */
            public Builder setD(InnerObject value) {
                if (dBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    d_ = value;
                    onChanged();
                } else {
                    dBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject d = 4;</code>
             */
            public Builder setD(
                    InnerObject.Builder builderForValue) {
                if (dBuilder_ == null) {
                    d_ = builderForValue.build();
                    onChanged();
                } else {
                    dBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <code>.InnerObject d = 4;</code>
             */
            public Builder mergeD(InnerObject value) {
                if (dBuilder_ == null) {
                    if (d_ != null) {
                        d_ =
                                InnerObject.newBuilder(d_).mergeFrom(value).buildPartial();
                    } else {
                        d_ = value;
                    }
                    onChanged();
                } else {
                    dBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject d = 4;</code>
             */
            public Builder clearD() {
                if (dBuilder_ == null) {
                    d_ = null;
                    onChanged();
                } else {
                    d_ = null;
                    dBuilder_ = null;
                }

                return this;
            }

            /**
             * <code>.InnerObject d = 4;</code>
             */
            public InnerObject.Builder getDBuilder() {

                onChanged();
                return getDFieldBuilder().getBuilder();
            }

            /**
             * <code>.InnerObject d = 4;</code>
             */
            public InnerObjectOrBuilder getDOrBuilder() {
                if (dBuilder_ != null) {
                    return dBuilder_.getMessageOrBuilder();
                } else {
                    return d_ == null ?
                            InnerObject.getDefaultInstance() : d_;
                }
            }

            /**
             * <code>.InnerObject d = 4;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder>
            getDFieldBuilder() {
                if (dBuilder_ == null) {
                    dBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            InnerObject, InnerObject.Builder, InnerObjectOrBuilder>(
                            getD(),
                            getParentForChildren(),
                            isClean());
                    d_ = null;
                }
                return dBuilder_;
            }

            private InnerObject e_ = null;
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder> eBuilder_;

            /**
             * <code>.InnerObject e = 5;</code>
             */
            public boolean hasE() {
                return eBuilder_ != null || e_ != null;
            }

            /**
             * <code>.InnerObject e = 5;</code>
             */
            public InnerObject getE() {
                if (eBuilder_ == null) {
                    return e_ == null ? InnerObject.getDefaultInstance() : e_;
                } else {
                    return eBuilder_.getMessage();
                }
            }

            /**
             * <code>.InnerObject e = 5;</code>
             */
            public Builder setE(InnerObject value) {
                if (eBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    e_ = value;
                    onChanged();
                } else {
                    eBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject e = 5;</code>
             */
            public Builder setE(
                    InnerObject.Builder builderForValue) {
                if (eBuilder_ == null) {
                    e_ = builderForValue.build();
                    onChanged();
                } else {
                    eBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <code>.InnerObject e = 5;</code>
             */
            public Builder mergeE(InnerObject value) {
                if (eBuilder_ == null) {
                    if (e_ != null) {
                        e_ =
                                InnerObject.newBuilder(e_).mergeFrom(value).buildPartial();
                    } else {
                        e_ = value;
                    }
                    onChanged();
                } else {
                    eBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject e = 5;</code>
             */
            public Builder clearE() {
                if (eBuilder_ == null) {
                    e_ = null;
                    onChanged();
                } else {
                    e_ = null;
                    eBuilder_ = null;
                }

                return this;
            }

            /**
             * <code>.InnerObject e = 5;</code>
             */
            public InnerObject.Builder getEBuilder() {

                onChanged();
                return getEFieldBuilder().getBuilder();
            }

            /**
             * <code>.InnerObject e = 5;</code>
             */
            public InnerObjectOrBuilder getEOrBuilder() {
                if (eBuilder_ != null) {
                    return eBuilder_.getMessageOrBuilder();
                } else {
                    return e_ == null ?
                            InnerObject.getDefaultInstance() : e_;
                }
            }

            /**
             * <code>.InnerObject e = 5;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder>
            getEFieldBuilder() {
                if (eBuilder_ == null) {
                    eBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            InnerObject, InnerObject.Builder, InnerObjectOrBuilder>(
                            getE(),
                            getParentForChildren(),
                            isClean());
                    e_ = null;
                }
                return eBuilder_;
            }

            private InnerObject f_ = null;
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder> fBuilder_;

            /**
             * <code>.InnerObject f = 6;</code>
             */
            public boolean hasF() {
                return fBuilder_ != null || f_ != null;
            }

            /**
             * <code>.InnerObject f = 6;</code>
             */
            public InnerObject getF() {
                if (fBuilder_ == null) {
                    return f_ == null ? InnerObject.getDefaultInstance() : f_;
                } else {
                    return fBuilder_.getMessage();
                }
            }

            /**
             * <code>.InnerObject f = 6;</code>
             */
            public Builder setF(InnerObject value) {
                if (fBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    f_ = value;
                    onChanged();
                } else {
                    fBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject f = 6;</code>
             */
            public Builder setF(
                    InnerObject.Builder builderForValue) {
                if (fBuilder_ == null) {
                    f_ = builderForValue.build();
                    onChanged();
                } else {
                    fBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <code>.InnerObject f = 6;</code>
             */
            public Builder mergeF(InnerObject value) {
                if (fBuilder_ == null) {
                    if (f_ != null) {
                        f_ =
                                InnerObject.newBuilder(f_).mergeFrom(value).buildPartial();
                    } else {
                        f_ = value;
                    }
                    onChanged();
                } else {
                    fBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject f = 6;</code>
             */
            public Builder clearF() {
                if (fBuilder_ == null) {
                    f_ = null;
                    onChanged();
                } else {
                    f_ = null;
                    fBuilder_ = null;
                }

                return this;
            }

            /**
             * <code>.InnerObject f = 6;</code>
             */
            public InnerObject.Builder getFBuilder() {

                onChanged();
                return getFFieldBuilder().getBuilder();
            }

            /**
             * <code>.InnerObject f = 6;</code>
             */
            public InnerObjectOrBuilder getFOrBuilder() {
                if (fBuilder_ != null) {
                    return fBuilder_.getMessageOrBuilder();
                } else {
                    return f_ == null ?
                            InnerObject.getDefaultInstance() : f_;
                }
            }

            /**
             * <code>.InnerObject f = 6;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder>
            getFFieldBuilder() {
                if (fBuilder_ == null) {
                    fBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            InnerObject, InnerObject.Builder, InnerObjectOrBuilder>(
                            getF(),
                            getParentForChildren(),
                            isClean());
                    f_ = null;
                }
                return fBuilder_;
            }

            private InnerObject g_ = null;
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder> gBuilder_;

            /**
             * <code>.InnerObject g = 7;</code>
             */
            public boolean hasG() {
                return gBuilder_ != null || g_ != null;
            }

            /**
             * <code>.InnerObject g = 7;</code>
             */
            public InnerObject getG() {
                if (gBuilder_ == null) {
                    return g_ == null ? InnerObject.getDefaultInstance() : g_;
                } else {
                    return gBuilder_.getMessage();
                }
            }

            /**
             * <code>.InnerObject g = 7;</code>
             */
            public Builder setG(InnerObject value) {
                if (gBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    g_ = value;
                    onChanged();
                } else {
                    gBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject g = 7;</code>
             */
            public Builder setG(
                    InnerObject.Builder builderForValue) {
                if (gBuilder_ == null) {
                    g_ = builderForValue.build();
                    onChanged();
                } else {
                    gBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <code>.InnerObject g = 7;</code>
             */
            public Builder mergeG(InnerObject value) {
                if (gBuilder_ == null) {
                    if (g_ != null) {
                        g_ =
                                InnerObject.newBuilder(g_).mergeFrom(value).buildPartial();
                    } else {
                        g_ = value;
                    }
                    onChanged();
                } else {
                    gBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject g = 7;</code>
             */
            public Builder clearG() {
                if (gBuilder_ == null) {
                    g_ = null;
                    onChanged();
                } else {
                    g_ = null;
                    gBuilder_ = null;
                }

                return this;
            }

            /**
             * <code>.InnerObject g = 7;</code>
             */
            public InnerObject.Builder getGBuilder() {

                onChanged();
                return getGFieldBuilder().getBuilder();
            }

            /**
             * <code>.InnerObject g = 7;</code>
             */
            public InnerObjectOrBuilder getGOrBuilder() {
                if (gBuilder_ != null) {
                    return gBuilder_.getMessageOrBuilder();
                } else {
                    return g_ == null ?
                            InnerObject.getDefaultInstance() : g_;
                }
            }

            /**
             * <code>.InnerObject g = 7;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder>
            getGFieldBuilder() {
                if (gBuilder_ == null) {
                    gBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            InnerObject, InnerObject.Builder, InnerObjectOrBuilder>(
                            getG(),
                            getParentForChildren(),
                            isClean());
                    g_ = null;
                }
                return gBuilder_;
            }

            private InnerObject h_ = null;
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder> hBuilder_;

            /**
             * <code>.InnerObject h = 8;</code>
             */
            public boolean hasH() {
                return hBuilder_ != null || h_ != null;
            }

            /**
             * <code>.InnerObject h = 8;</code>
             */
            public InnerObject getH() {
                if (hBuilder_ == null) {
                    return h_ == null ? InnerObject.getDefaultInstance() : h_;
                } else {
                    return hBuilder_.getMessage();
                }
            }

            /**
             * <code>.InnerObject h = 8;</code>
             */
            public Builder setH(InnerObject value) {
                if (hBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    h_ = value;
                    onChanged();
                } else {
                    hBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject h = 8;</code>
             */
            public Builder setH(
                    InnerObject.Builder builderForValue) {
                if (hBuilder_ == null) {
                    h_ = builderForValue.build();
                    onChanged();
                } else {
                    hBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <code>.InnerObject h = 8;</code>
             */
            public Builder mergeH(InnerObject value) {
                if (hBuilder_ == null) {
                    if (h_ != null) {
                        h_ =
                                InnerObject.newBuilder(h_).mergeFrom(value).buildPartial();
                    } else {
                        h_ = value;
                    }
                    onChanged();
                } else {
                    hBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject h = 8;</code>
             */
            public Builder clearH() {
                if (hBuilder_ == null) {
                    h_ = null;
                    onChanged();
                } else {
                    h_ = null;
                    hBuilder_ = null;
                }

                return this;
            }

            /**
             * <code>.InnerObject h = 8;</code>
             */
            public InnerObject.Builder getHBuilder() {

                onChanged();
                return getHFieldBuilder().getBuilder();
            }

            /**
             * <code>.InnerObject h = 8;</code>
             */
            public InnerObjectOrBuilder getHOrBuilder() {
                if (hBuilder_ != null) {
                    return hBuilder_.getMessageOrBuilder();
                } else {
                    return h_ == null ?
                            InnerObject.getDefaultInstance() : h_;
                }
            }

            /**
             * <code>.InnerObject h = 8;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder>
            getHFieldBuilder() {
                if (hBuilder_ == null) {
                    hBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            InnerObject, InnerObject.Builder, InnerObjectOrBuilder>(
                            getH(),
                            getParentForChildren(),
                            isClean());
                    h_ = null;
                }
                return hBuilder_;
            }

            private InnerObject i_ = null;
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder> iBuilder_;

            /**
             * <code>.InnerObject i = 9;</code>
             */
            public boolean hasI() {
                return iBuilder_ != null || i_ != null;
            }

            /**
             * <code>.InnerObject i = 9;</code>
             */
            public InnerObject getI() {
                if (iBuilder_ == null) {
                    return i_ == null ? InnerObject.getDefaultInstance() : i_;
                } else {
                    return iBuilder_.getMessage();
                }
            }

            /**
             * <code>.InnerObject i = 9;</code>
             */
            public Builder setI(InnerObject value) {
                if (iBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    i_ = value;
                    onChanged();
                } else {
                    iBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject i = 9;</code>
             */
            public Builder setI(
                    InnerObject.Builder builderForValue) {
                if (iBuilder_ == null) {
                    i_ = builderForValue.build();
                    onChanged();
                } else {
                    iBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <code>.InnerObject i = 9;</code>
             */
            public Builder mergeI(InnerObject value) {
                if (iBuilder_ == null) {
                    if (i_ != null) {
                        i_ =
                                InnerObject.newBuilder(i_).mergeFrom(value).buildPartial();
                    } else {
                        i_ = value;
                    }
                    onChanged();
                } else {
                    iBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject i = 9;</code>
             */
            public Builder clearI() {
                if (iBuilder_ == null) {
                    i_ = null;
                    onChanged();
                } else {
                    i_ = null;
                    iBuilder_ = null;
                }

                return this;
            }

            /**
             * <code>.InnerObject i = 9;</code>
             */
            public InnerObject.Builder getIBuilder() {

                onChanged();
                return getIFieldBuilder().getBuilder();
            }

            /**
             * <code>.InnerObject i = 9;</code>
             */
            public InnerObjectOrBuilder getIOrBuilder() {
                if (iBuilder_ != null) {
                    return iBuilder_.getMessageOrBuilder();
                } else {
                    return i_ == null ?
                            InnerObject.getDefaultInstance() : i_;
                }
            }

            /**
             * <code>.InnerObject i = 9;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder>
            getIFieldBuilder() {
                if (iBuilder_ == null) {
                    iBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            InnerObject, InnerObject.Builder, InnerObjectOrBuilder>(
                            getI(),
                            getParentForChildren(),
                            isClean());
                    i_ = null;
                }
                return iBuilder_;
            }

            private InnerObject j_ = null;
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder> jBuilder_;

            /**
             * <code>.InnerObject j = 10;</code>
             */
            public boolean hasJ() {
                return jBuilder_ != null || j_ != null;
            }

            /**
             * <code>.InnerObject j = 10;</code>
             */
            public InnerObject getJ() {
                if (jBuilder_ == null) {
                    return j_ == null ? InnerObject.getDefaultInstance() : j_;
                } else {
                    return jBuilder_.getMessage();
                }
            }

            /**
             * <code>.InnerObject j = 10;</code>
             */
            public Builder setJ(InnerObject value) {
                if (jBuilder_ == null) {
                    if (value == null) {
                        throw new NullPointerException();
                    }
                    j_ = value;
                    onChanged();
                } else {
                    jBuilder_.setMessage(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject j = 10;</code>
             */
            public Builder setJ(
                    InnerObject.Builder builderForValue) {
                if (jBuilder_ == null) {
                    j_ = builderForValue.build();
                    onChanged();
                } else {
                    jBuilder_.setMessage(builderForValue.build());
                }

                return this;
            }

            /**
             * <code>.InnerObject j = 10;</code>
             */
            public Builder mergeJ(InnerObject value) {
                if (jBuilder_ == null) {
                    if (j_ != null) {
                        j_ =
                                InnerObject.newBuilder(j_).mergeFrom(value).buildPartial();
                    } else {
                        j_ = value;
                    }
                    onChanged();
                } else {
                    jBuilder_.mergeFrom(value);
                }

                return this;
            }

            /**
             * <code>.InnerObject j = 10;</code>
             */
            public Builder clearJ() {
                if (jBuilder_ == null) {
                    j_ = null;
                    onChanged();
                } else {
                    j_ = null;
                    jBuilder_ = null;
                }

                return this;
            }

            /**
             * <code>.InnerObject j = 10;</code>
             */
            public InnerObject.Builder getJBuilder() {

                onChanged();
                return getJFieldBuilder().getBuilder();
            }

            /**
             * <code>.InnerObject j = 10;</code>
             */
            public InnerObjectOrBuilder getJOrBuilder() {
                if (jBuilder_ != null) {
                    return jBuilder_.getMessageOrBuilder();
                } else {
                    return j_ == null ?
                            InnerObject.getDefaultInstance() : j_;
                }
            }

            /**
             * <code>.InnerObject j = 10;</code>
             */
            private com.google.protobuf.SingleFieldBuilderV3<
                    InnerObject, InnerObject.Builder, InnerObjectOrBuilder>
            getJFieldBuilder() {
                if (jBuilder_ == null) {
                    jBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                            InnerObject, InnerObject.Builder, InnerObjectOrBuilder>(
                            getJ(),
                            getParentForChildren(),
                            isClean());
                    j_ = null;
                }
                return jBuilder_;
            }

            @Override
            public final Builder setUnknownFields(
                    final com.google.protobuf.UnknownFieldSet unknownFields) {
                return super.setUnknownFieldsProto3(unknownFields);
            }

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


            // @@protoc_insertion_point(builder_scope:InnerObjectObject)
        }

        // @@protoc_insertion_point(class_scope:InnerObjectObject)
        private static final InnerObjectObject DEFAULT_INSTANCE;

        static {
            DEFAULT_INSTANCE = new InnerObjectObject();
        }

        public static InnerObjectObject getDefaultInstance() {
            return DEFAULT_INSTANCE;
        }

        private static final com.google.protobuf.Parser<InnerObjectObject>
                PARSER = new com.google.protobuf.AbstractParser<InnerObjectObject>() {
            @Override
            public InnerObjectObject parsePartialFrom(
                    com.google.protobuf.CodedInputStream input,
                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                    throws com.google.protobuf.InvalidProtocolBufferException {
                return new InnerObjectObject(input, extensionRegistry);
            }
        };

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

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

        @Override
        public InnerObjectObject getDefaultInstanceForType() {
            return DEFAULT_INSTANCE;
        }

    }

    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_IntObject_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_IntObject_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_FloatObject_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_FloatObject_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_BytesObject_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_BytesObject_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_StringObject_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_StringObject_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_ListIntegerObject_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_ListIntegerObject_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_MapObject_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_MapObject_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_MapObject_AEntry_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_MapObject_AEntry_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_MapObject_BEntry_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_MapObject_BEntry_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_MapObject_CEntry_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_MapObject_CEntry_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_MapObject_DEntry_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_MapObject_DEntry_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_MapObject_EEntry_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_MapObject_EEntry_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_MapObject_FEntry_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_MapObject_FEntry_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_MapObject_GEntry_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_MapObject_GEntry_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_MapObject_HEntry_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_MapObject_HEntry_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_MapObject_IEntry_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_MapObject_IEntry_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_MapObject_JEntry_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_MapObject_JEntry_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_InnerObject_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_InnerObject_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
            internal_static_InnerObjectObject_descriptor;
    private static final
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internal_static_InnerObjectObject_fieldAccessorTable;

    public static com.google.protobuf.Descriptors.FileDescriptor
    getDescriptor() {
        return descriptor;
    }

    private static com.google.protobuf.Descriptors.FileDescriptor
            descriptor;

    static {
        String[] descriptorData = {
                "\n\020fieldspeed.proto\"y\n\tIntObject\022\t\n\001a\030\001 \001" +
                        "(\005\022\t\n\001b\030\002 \001(\005\022\t\n\001c\030\003 \001(\005\022\t\n\001d\030\004 \001(\005\022\t\n\001e" +
                        "\030\005 \001(\005\022\t\n\001f\030\006 \001(\005\022\t\n\001g\030\007 \001(\005\022\t\n\001h\030\010 \001(\005\022" +
                        "\t\n\001i\030\t \001(\005\022\t\n\001j\030\n \001(\005\"{\n\013FloatObject\022\t\n\001" +
                        "a\030\001 \001(\002\022\t\n\001b\030\002 \001(\002\022\t\n\001c\030\003 \001(\002\022\t\n\001d\030\004 \001(\002" +
                        "\022\t\n\001e\030\005 \001(\002\022\t\n\001f\030\006 \001(\002\022\t\n\001g\030\007 \001(\002\022\t\n\001h\030\010" +
                        " \001(\002\022\t\n\001i\030\t \001(\002\022\t\n\001j\030\n \001(\002\"{\n\013BytesObjec" +
                        "t\022\t\n\001a\030\001 \001(\014\022\t\n\001b\030\002 \001(\014\022\t\n\001c\030\003 \001(\014\022\t\n\001d\030" +
                        "\004 \001(\014\022\t\n\001e\030\005 \001(\014\022\t\n\001f\030\006 \001(\014\022\t\n\001g\030\007 \001(\014\022\t" +
                        "\n\001h\030\010 \001(\014\022\t\n\001i\030\t \001(\014\022\t\n\001j\030\n \001(\014\"|\n\014Strin" +
                        "gObject\022\t\n\001a\030\001 \001(\t\022\t\n\001b\030\002 \001(\t\022\t\n\001c\030\003 \001(\t" +
                        "\022\t\n\001d\030\004 \001(\t\022\t\n\001e\030\005 \001(\t\022\t\n\001f\030\006 \001(\t\022\t\n\001g\030\007" +
                        " \001(\t\022\t\n\001h\030\010 \001(\t\022\t\n\001i\030\t \001(\t\022\t\n\001j\030\n \001(\t\"\201\001" +
                        "\n\021ListIntegerObject\022\t\n\001a\030\001 \003(\005\022\t\n\001b\030\002 \003(" +
                        "\005\022\t\n\001c\030\003 \003(\005\022\t\n\001d\030\004 \003(\005\022\t\n\001e\030\005 \003(\005\022\t\n\001f\030" +
                        "\006 \003(\005\022\t\n\001g\030\007 \003(\005\022\t\n\001h\030\010 \003(\005\022\t\n\001i\030\t \003(\005\022\t" +
                        "\n\001j\030\n \003(\005\"\333\005\n\tMapObject\022\034\n\001a\030\001 \003(\0132\021.Map" +
                        "Object.AEntry\022\034\n\001b\030\002 \003(\0132\021.MapObject.BEn" +
                        "try\022\034\n\001c\030\003 \003(\0132\021.MapObject.CEntry\022\034\n\001d\030\004" +
                        " \003(\0132\021.MapObject.DEntry\022\034\n\001e\030\005 \003(\0132\021.Map" +
                        "Object.EEntry\022\034\n\001f\030\006 \003(\0132\021.MapObject.FEn" +
                        "try\022\034\n\001g\030\007 \003(\0132\021.MapObject.GEntry\022\034\n\001h\030\010" +
                        " \003(\0132\021.MapObject.HEntry\022\034\n\001i\030\t \003(\0132\021.Map" +
                        "Object.IEntry\022\034\n\001j\030\n \003(\0132\021.MapObject.JEn" +
                        "try\032(\n\006AEntry\022\013\n\003key\030\001 \001(\005\022\r\n\005value\030\002 \001(" +
                        "\t:\0028\001\032(\n\006BEntry\022\013\n\003key\030\001 \001(\005\022\r\n\005value\030\002 " +
                        "\001(\t:\0028\001\032(\n\006CEntry\022\013\n\003key\030\001 \001(\005\022\r\n\005value\030" +
                        "\002 \001(\t:\0028\001\032(\n\006DEntry\022\013\n\003key\030\001 \001(\005\022\r\n\005valu" +
                        "e\030\002 \001(\t:\0028\001\032(\n\006EEntry\022\013\n\003key\030\001 \001(\005\022\r\n\005va" +
                        "lue\030\002 \001(\t:\0028\001\032(\n\006FEntry\022\013\n\003key\030\001 \001(\005\022\r\n\005" +
                        "value\030\002 \001(\t:\0028\001\032(\n\006GEntry\022\013\n\003key\030\001 \001(\005\022\r" +
                        "\n\005value\030\002 \001(\t:\0028\001\032(\n\006HEntry\022\013\n\003key\030\001 \001(\005" +
                        "\022\r\n\005value\030\002 \001(\t:\0028\001\032(\n\006IEntry\022\013\n\003key\030\001 \001" +
                        "(\005\022\r\n\005value\030\002 \001(\t:\0028\001\032(\n\006JEntry\022\013\n\003key\030\001" +
                        " \001(\005\022\r\n\005value\030\002 \001(\t:\0028\001\"\030\n\013InnerObject\022\t" +
                        "\n\001x\030\001 \001(\005\"\215\002\n\021InnerObjectObject\022\027\n\001a\030\001 \001" +
                        "(\0132\014.InnerObject\022\027\n\001b\030\002 \001(\0132\014.InnerObjec" +
                        "t\022\027\n\001c\030\003 \001(\0132\014.InnerObject\022\027\n\001d\030\004 \001(\0132\014." +
                        "InnerObject\022\027\n\001e\030\005 \001(\0132\014.InnerObject\022\027\n\001" +
                        "f\030\006 \001(\0132\014.InnerObject\022\027\n\001g\030\007 \001(\0132\014.Inner" +
                        "Object\022\027\n\001h\030\010 \001(\0132\014.InnerObject\022\027\n\001i\030\t \001" +
                        "(\0132\014.InnerObject\022\027\n\001j\030\n \001(\0132\014.InnerObjec" +
                        "tB5\n\036com.zfoo.protocol.field.packetB\023Fie" +
                        "ldProtobufObjectb\006proto3"
        };
        com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
                new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
                    public com.google.protobuf.ExtensionRegistry assignDescriptors(
                            com.google.protobuf.Descriptors.FileDescriptor root) {
                        descriptor = root;
                        return null;
                    }
                };
        com.google.protobuf.Descriptors.FileDescriptor
                .internalBuildGeneratedFileFrom(descriptorData,
                        new com.google.protobuf.Descriptors.FileDescriptor[]{
                        }, assigner);
        internal_static_IntObject_descriptor =
                getDescriptor().getMessageTypes().get(0);
        internal_static_IntObject_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_IntObject_descriptor,
                new String[]{"A", "B", "C", "D", "E", "F", "G", "H", "I", "J",});
        internal_static_FloatObject_descriptor =
                getDescriptor().getMessageTypes().get(1);
        internal_static_FloatObject_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_FloatObject_descriptor,
                new String[]{"A", "B", "C", "D", "E", "F", "G", "H", "I", "J",});
        internal_static_BytesObject_descriptor =
                getDescriptor().getMessageTypes().get(2);
        internal_static_BytesObject_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_BytesObject_descriptor,
                new String[]{"A", "B", "C", "D", "E", "F", "G", "H", "I", "J",});
        internal_static_StringObject_descriptor =
                getDescriptor().getMessageTypes().get(3);
        internal_static_StringObject_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_StringObject_descriptor,
                new String[]{"A", "B", "C", "D", "E", "F", "G", "H", "I", "J",});
        internal_static_ListIntegerObject_descriptor =
                getDescriptor().getMessageTypes().get(4);
        internal_static_ListIntegerObject_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_ListIntegerObject_descriptor,
                new String[]{"A", "B", "C", "D", "E", "F", "G", "H", "I", "J",});
        internal_static_MapObject_descriptor =
                getDescriptor().getMessageTypes().get(5);
        internal_static_MapObject_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_MapObject_descriptor,
                new String[]{"A", "B", "C", "D", "E", "F", "G", "H", "I", "J",});
        internal_static_MapObject_AEntry_descriptor =
                internal_static_MapObject_descriptor.getNestedTypes().get(0);
        internal_static_MapObject_AEntry_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_MapObject_AEntry_descriptor,
                new String[]{"Key", "Value",});
        internal_static_MapObject_BEntry_descriptor =
                internal_static_MapObject_descriptor.getNestedTypes().get(1);
        internal_static_MapObject_BEntry_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_MapObject_BEntry_descriptor,
                new String[]{"Key", "Value",});
        internal_static_MapObject_CEntry_descriptor =
                internal_static_MapObject_descriptor.getNestedTypes().get(2);
        internal_static_MapObject_CEntry_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_MapObject_CEntry_descriptor,
                new String[]{"Key", "Value",});
        internal_static_MapObject_DEntry_descriptor =
                internal_static_MapObject_descriptor.getNestedTypes().get(3);
        internal_static_MapObject_DEntry_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_MapObject_DEntry_descriptor,
                new String[]{"Key", "Value",});
        internal_static_MapObject_EEntry_descriptor =
                internal_static_MapObject_descriptor.getNestedTypes().get(4);
        internal_static_MapObject_EEntry_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_MapObject_EEntry_descriptor,
                new String[]{"Key", "Value",});
        internal_static_MapObject_FEntry_descriptor =
                internal_static_MapObject_descriptor.getNestedTypes().get(5);
        internal_static_MapObject_FEntry_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_MapObject_FEntry_descriptor,
                new String[]{"Key", "Value",});
        internal_static_MapObject_GEntry_descriptor =
                internal_static_MapObject_descriptor.getNestedTypes().get(6);
        internal_static_MapObject_GEntry_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_MapObject_GEntry_descriptor,
                new String[]{"Key", "Value",});
        internal_static_MapObject_HEntry_descriptor =
                internal_static_MapObject_descriptor.getNestedTypes().get(7);
        internal_static_MapObject_HEntry_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_MapObject_HEntry_descriptor,
                new String[]{"Key", "Value",});
        internal_static_MapObject_IEntry_descriptor =
                internal_static_MapObject_descriptor.getNestedTypes().get(8);
        internal_static_MapObject_IEntry_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_MapObject_IEntry_descriptor,
                new String[]{"Key", "Value",});
        internal_static_MapObject_JEntry_descriptor =
                internal_static_MapObject_descriptor.getNestedTypes().get(9);
        internal_static_MapObject_JEntry_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_MapObject_JEntry_descriptor,
                new String[]{"Key", "Value",});
        internal_static_InnerObject_descriptor =
                getDescriptor().getMessageTypes().get(6);
        internal_static_InnerObject_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_InnerObject_descriptor,
                new String[]{"X",});
        internal_static_InnerObjectObject_descriptor =
                getDescriptor().getMessageTypes().get(7);
        internal_static_InnerObjectObject_fieldAccessorTable = new
                com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
                internal_static_InnerObjectObject_descriptor,
                new String[]{"A", "B", "C", "D", "E", "F", "G", "H", "I", "J",});
    }

    // @@protoc_insertion_point(outer_class_scope)
}
