package com.jsc.dsp.proto;// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: Agency.proto

public final class Agency {
  private Agency() {}
  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 AgencyInfoSetsOrBuilder extends
      // @@protoc_insertion_point(interface_extends:AgencyInfoSets)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
     */
    java.util.List<AgencyInfo>
        getAgencyInfoList();
    /**
     * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
     */
    AgencyInfo getAgencyInfo(int index);
    /**
     * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
     */
    int getAgencyInfoCount();
    /**
     * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
     */
    java.util.List<? extends AgencyInfoOrBuilder>
        getAgencyInfoOrBuilderList();
    /**
     * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
     */
    AgencyInfoOrBuilder getAgencyInfoOrBuilder(
        int index);

    /**
     * <code>repeated .ContactInfo ContactInfo = 2;</code>
     */
    java.util.List<ContactInfo>
        getContactInfoList();
    /**
     * <code>repeated .ContactInfo ContactInfo = 2;</code>
     */
    ContactInfo getContactInfo(int index);
    /**
     * <code>repeated .ContactInfo ContactInfo = 2;</code>
     */
    int getContactInfoCount();
    /**
     * <code>repeated .ContactInfo ContactInfo = 2;</code>
     */
    java.util.List<? extends ContactInfoOrBuilder>
        getContactInfoOrBuilderList();
    /**
     * <code>repeated .ContactInfo ContactInfo = 2;</code>
     */
    ContactInfoOrBuilder getContactInfoOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code AgencyInfoSets}
   */
  public  static final class AgencyInfoSets extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:AgencyInfoSets)
      AgencyInfoSetsOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use AgencyInfoSets.newBuilder() to construct.
    private AgencyInfoSets(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private AgencyInfoSets() {
      agencyInfo_ = java.util.Collections.emptyList();
      contactInfo_ = java.util.Collections.emptyList();
    }

    @Override
    @SuppressWarnings({"unused"})
    protected Object newInstance(
        UnusedPrivateParameter unused) {
      return new AgencyInfoSets();
    }

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private AgencyInfoSets(
        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) != 0)) {
                agencyInfo_ = new java.util.ArrayList<AgencyInfo>();
                mutable_bitField0_ |= 0x00000001;
              }
              agencyInfo_.add(
                  input.readMessage(AgencyInfo.parser(), extensionRegistry));
              break;
            }
            case 18: {
              if (!((mutable_bitField0_ & 0x00000002) != 0)) {
                contactInfo_ = new java.util.ArrayList<ContactInfo>();
                mutable_bitField0_ |= 0x00000002;
              }
              contactInfo_.add(
                  input.readMessage(ContactInfo.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownField(
                  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) != 0)) {
          agencyInfo_ = java.util.Collections.unmodifiableList(agencyInfo_);
        }
        if (((mutable_bitField0_ & 0x00000002) != 0)) {
          contactInfo_ = java.util.Collections.unmodifiableList(contactInfo_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return Agency.internal_static_AgencyInfoSets_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return Agency.internal_static_AgencyInfoSets_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              AgencyInfoSets.class, Builder.class);
    }

    public static final int AGENCYINFO_FIELD_NUMBER = 1;
    private java.util.List<AgencyInfo> agencyInfo_;
    /**
     * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
     */
    public java.util.List<AgencyInfo> getAgencyInfoList() {
      return agencyInfo_;
    }
    /**
     * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
     */
    public java.util.List<? extends AgencyInfoOrBuilder>
        getAgencyInfoOrBuilderList() {
      return agencyInfo_;
    }
    /**
     * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
     */
    public int getAgencyInfoCount() {
      return agencyInfo_.size();
    }
    /**
     * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
     */
    public AgencyInfo getAgencyInfo(int index) {
      return agencyInfo_.get(index);
    }
    /**
     * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
     */
    public AgencyInfoOrBuilder getAgencyInfoOrBuilder(
        int index) {
      return agencyInfo_.get(index);
    }

    public static final int CONTACTINFO_FIELD_NUMBER = 2;
    private java.util.List<ContactInfo> contactInfo_;
    /**
     * <code>repeated .ContactInfo ContactInfo = 2;</code>
     */
    public java.util.List<ContactInfo> getContactInfoList() {
      return contactInfo_;
    }
    /**
     * <code>repeated .ContactInfo ContactInfo = 2;</code>
     */
    public java.util.List<? extends ContactInfoOrBuilder>
        getContactInfoOrBuilderList() {
      return contactInfo_;
    }
    /**
     * <code>repeated .ContactInfo ContactInfo = 2;</code>
     */
    public int getContactInfoCount() {
      return contactInfo_.size();
    }
    /**
     * <code>repeated .ContactInfo ContactInfo = 2;</code>
     */
    public ContactInfo getContactInfo(int index) {
      return contactInfo_.get(index);
    }
    /**
     * <code>repeated .ContactInfo ContactInfo = 2;</code>
     */
    public ContactInfoOrBuilder getContactInfoOrBuilder(
        int index) {
      return contactInfo_.get(index);
    }

    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 {
      for (int i = 0; i < agencyInfo_.size(); i++) {
        output.writeMessage(1, agencyInfo_.get(i));
      }
      for (int i = 0; i < contactInfo_.size(); i++) {
        output.writeMessage(2, contactInfo_.get(i));
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      for (int i = 0; i < agencyInfo_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, agencyInfo_.get(i));
      }
      for (int i = 0; i < contactInfo_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, contactInfo_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (!getAgencyInfoList()
          .equals(other.getAgencyInfoList())) return false;
      if (!getContactInfoList()
          .equals(other.getContactInfoList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getAgencyInfoCount() > 0) {
        hash = (37 * hash) + AGENCYINFO_FIELD_NUMBER;
        hash = (53 * hash) + getAgencyInfoList().hashCode();
      }
      if (getContactInfoCount() > 0) {
        hash = (37 * hash) + CONTACTINFO_FIELD_NUMBER;
        hash = (53 * hash) + getContactInfoList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static AgencyInfoSets parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static AgencyInfoSets parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static AgencyInfoSets parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static AgencyInfoSets parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static AgencyInfoSets parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static AgencyInfoSets parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static AgencyInfoSets parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static AgencyInfoSets 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 AgencyInfoSets parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static AgencyInfoSets 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 AgencyInfoSets parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static AgencyInfoSets 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(AgencyInfoSets 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 AgencyInfoSets}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:AgencyInfoSets)
        AgencyInfoSetsOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return Agency.internal_static_AgencyInfoSets_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return Agency.internal_static_AgencyInfoSets_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                AgencyInfoSets.class, Builder.class);
      }

      // Construct using Agency.AgencyInfoSets.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getAgencyInfoFieldBuilder();
          getContactInfoFieldBuilder();
        }
      }
      @Override
      public Builder clear() {
        super.clear();
        if (agencyInfoBuilder_ == null) {
          agencyInfo_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          agencyInfoBuilder_.clear();
        }
        if (contactInfoBuilder_ == null) {
          contactInfo_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
        } else {
          contactInfoBuilder_.clear();
        }
        return this;
      }

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

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

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

      @Override
      public AgencyInfoSets buildPartial() {
        AgencyInfoSets result = new AgencyInfoSets(this);
        int from_bitField0_ = bitField0_;
        if (agencyInfoBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            agencyInfo_ = java.util.Collections.unmodifiableList(agencyInfo_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.agencyInfo_ = agencyInfo_;
        } else {
          result.agencyInfo_ = agencyInfoBuilder_.build();
        }
        if (contactInfoBuilder_ == null) {
          if (((bitField0_ & 0x00000002) != 0)) {
            contactInfo_ = java.util.Collections.unmodifiableList(contactInfo_);
            bitField0_ = (bitField0_ & ~0x00000002);
          }
          result.contactInfo_ = contactInfo_;
        } else {
          result.contactInfo_ = contactInfoBuilder_.build();
        }
        onBuilt();
        return result;
      }

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

      public Builder mergeFrom(AgencyInfoSets other) {
        if (other == AgencyInfoSets.getDefaultInstance()) return this;
        if (agencyInfoBuilder_ == null) {
          if (!other.agencyInfo_.isEmpty()) {
            if (agencyInfo_.isEmpty()) {
              agencyInfo_ = other.agencyInfo_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureAgencyInfoIsMutable();
              agencyInfo_.addAll(other.agencyInfo_);
            }
            onChanged();
          }
        } else {
          if (!other.agencyInfo_.isEmpty()) {
            if (agencyInfoBuilder_.isEmpty()) {
              agencyInfoBuilder_.dispose();
              agencyInfoBuilder_ = null;
              agencyInfo_ = other.agencyInfo_;
              bitField0_ = (bitField0_ & ~0x00000001);
              agencyInfoBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getAgencyInfoFieldBuilder() : null;
            } else {
              agencyInfoBuilder_.addAllMessages(other.agencyInfo_);
            }
          }
        }
        if (contactInfoBuilder_ == null) {
          if (!other.contactInfo_.isEmpty()) {
            if (contactInfo_.isEmpty()) {
              contactInfo_ = other.contactInfo_;
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              ensureContactInfoIsMutable();
              contactInfo_.addAll(other.contactInfo_);
            }
            onChanged();
          }
        } else {
          if (!other.contactInfo_.isEmpty()) {
            if (contactInfoBuilder_.isEmpty()) {
              contactInfoBuilder_.dispose();
              contactInfoBuilder_ = null;
              contactInfo_ = other.contactInfo_;
              bitField0_ = (bitField0_ & ~0x00000002);
              contactInfoBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getContactInfoFieldBuilder() : null;
            } else {
              contactInfoBuilder_.addAllMessages(other.contactInfo_);
            }
          }
        }
        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 {
        AgencyInfoSets parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (AgencyInfoSets) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List<AgencyInfo> agencyInfo_ =
        java.util.Collections.emptyList();
      private void ensureAgencyInfoIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          agencyInfo_ = new java.util.ArrayList<AgencyInfo>(agencyInfo_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          AgencyInfo, AgencyInfo.Builder, AgencyInfoOrBuilder> agencyInfoBuilder_;

      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public java.util.List<AgencyInfo> getAgencyInfoList() {
        if (agencyInfoBuilder_ == null) {
          return java.util.Collections.unmodifiableList(agencyInfo_);
        } else {
          return agencyInfoBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public int getAgencyInfoCount() {
        if (agencyInfoBuilder_ == null) {
          return agencyInfo_.size();
        } else {
          return agencyInfoBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public AgencyInfo getAgencyInfo(int index) {
        if (agencyInfoBuilder_ == null) {
          return agencyInfo_.get(index);
        } else {
          return agencyInfoBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public Builder setAgencyInfo(
          int index, AgencyInfo value) {
        if (agencyInfoBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureAgencyInfoIsMutable();
          agencyInfo_.set(index, value);
          onChanged();
        } else {
          agencyInfoBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public Builder setAgencyInfo(
          int index, AgencyInfo.Builder builderForValue) {
        if (agencyInfoBuilder_ == null) {
          ensureAgencyInfoIsMutable();
          agencyInfo_.set(index, builderForValue.build());
          onChanged();
        } else {
          agencyInfoBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public Builder addAgencyInfo(AgencyInfo value) {
        if (agencyInfoBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureAgencyInfoIsMutable();
          agencyInfo_.add(value);
          onChanged();
        } else {
          agencyInfoBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public Builder addAgencyInfo(
          int index, AgencyInfo value) {
        if (agencyInfoBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureAgencyInfoIsMutable();
          agencyInfo_.add(index, value);
          onChanged();
        } else {
          agencyInfoBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public Builder addAgencyInfo(
          AgencyInfo.Builder builderForValue) {
        if (agencyInfoBuilder_ == null) {
          ensureAgencyInfoIsMutable();
          agencyInfo_.add(builderForValue.build());
          onChanged();
        } else {
          agencyInfoBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public Builder addAgencyInfo(
          int index, AgencyInfo.Builder builderForValue) {
        if (agencyInfoBuilder_ == null) {
          ensureAgencyInfoIsMutable();
          agencyInfo_.add(index, builderForValue.build());
          onChanged();
        } else {
          agencyInfoBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public Builder addAllAgencyInfo(
          Iterable<? extends AgencyInfo> values) {
        if (agencyInfoBuilder_ == null) {
          ensureAgencyInfoIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, agencyInfo_);
          onChanged();
        } else {
          agencyInfoBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public Builder clearAgencyInfo() {
        if (agencyInfoBuilder_ == null) {
          agencyInfo_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          agencyInfoBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public Builder removeAgencyInfo(int index) {
        if (agencyInfoBuilder_ == null) {
          ensureAgencyInfoIsMutable();
          agencyInfo_.remove(index);
          onChanged();
        } else {
          agencyInfoBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public AgencyInfo.Builder getAgencyInfoBuilder(
          int index) {
        return getAgencyInfoFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public AgencyInfoOrBuilder getAgencyInfoOrBuilder(
          int index) {
        if (agencyInfoBuilder_ == null) {
          return agencyInfo_.get(index);  } else {
          return agencyInfoBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public java.util.List<? extends AgencyInfoOrBuilder>
           getAgencyInfoOrBuilderList() {
        if (agencyInfoBuilder_ != null) {
          return agencyInfoBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(agencyInfo_);
        }
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public AgencyInfo.Builder addAgencyInfoBuilder() {
        return getAgencyInfoFieldBuilder().addBuilder(
            AgencyInfo.getDefaultInstance());
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public AgencyInfo.Builder addAgencyInfoBuilder(
          int index) {
        return getAgencyInfoFieldBuilder().addBuilder(
            index, AgencyInfo.getDefaultInstance());
      }
      /**
       * <code>repeated .AgencyInfo AgencyInfo = 1;</code>
       */
      public java.util.List<AgencyInfo.Builder>
           getAgencyInfoBuilderList() {
        return getAgencyInfoFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          AgencyInfo, AgencyInfo.Builder, AgencyInfoOrBuilder>
          getAgencyInfoFieldBuilder() {
        if (agencyInfoBuilder_ == null) {
          agencyInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              AgencyInfo, AgencyInfo.Builder, AgencyInfoOrBuilder>(
                  agencyInfo_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          agencyInfo_ = null;
        }
        return agencyInfoBuilder_;
      }

      private java.util.List<ContactInfo> contactInfo_ =
        java.util.Collections.emptyList();
      private void ensureContactInfoIsMutable() {
        if (!((bitField0_ & 0x00000002) != 0)) {
          contactInfo_ = new java.util.ArrayList<ContactInfo>(contactInfo_);
          bitField0_ |= 0x00000002;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          ContactInfo, ContactInfo.Builder, ContactInfoOrBuilder> contactInfoBuilder_;

      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public java.util.List<ContactInfo> getContactInfoList() {
        if (contactInfoBuilder_ == null) {
          return java.util.Collections.unmodifiableList(contactInfo_);
        } else {
          return contactInfoBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public int getContactInfoCount() {
        if (contactInfoBuilder_ == null) {
          return contactInfo_.size();
        } else {
          return contactInfoBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public ContactInfo getContactInfo(int index) {
        if (contactInfoBuilder_ == null) {
          return contactInfo_.get(index);
        } else {
          return contactInfoBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public Builder setContactInfo(
          int index, ContactInfo value) {
        if (contactInfoBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureContactInfoIsMutable();
          contactInfo_.set(index, value);
          onChanged();
        } else {
          contactInfoBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public Builder setContactInfo(
          int index, ContactInfo.Builder builderForValue) {
        if (contactInfoBuilder_ == null) {
          ensureContactInfoIsMutable();
          contactInfo_.set(index, builderForValue.build());
          onChanged();
        } else {
          contactInfoBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public Builder addContactInfo(ContactInfo value) {
        if (contactInfoBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureContactInfoIsMutable();
          contactInfo_.add(value);
          onChanged();
        } else {
          contactInfoBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public Builder addContactInfo(
          int index, ContactInfo value) {
        if (contactInfoBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureContactInfoIsMutable();
          contactInfo_.add(index, value);
          onChanged();
        } else {
          contactInfoBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public Builder addContactInfo(
          ContactInfo.Builder builderForValue) {
        if (contactInfoBuilder_ == null) {
          ensureContactInfoIsMutable();
          contactInfo_.add(builderForValue.build());
          onChanged();
        } else {
          contactInfoBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public Builder addContactInfo(
          int index, ContactInfo.Builder builderForValue) {
        if (contactInfoBuilder_ == null) {
          ensureContactInfoIsMutable();
          contactInfo_.add(index, builderForValue.build());
          onChanged();
        } else {
          contactInfoBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public Builder addAllContactInfo(
          Iterable<? extends ContactInfo> values) {
        if (contactInfoBuilder_ == null) {
          ensureContactInfoIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, contactInfo_);
          onChanged();
        } else {
          contactInfoBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public Builder clearContactInfo() {
        if (contactInfoBuilder_ == null) {
          contactInfo_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
        } else {
          contactInfoBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public Builder removeContactInfo(int index) {
        if (contactInfoBuilder_ == null) {
          ensureContactInfoIsMutable();
          contactInfo_.remove(index);
          onChanged();
        } else {
          contactInfoBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public ContactInfo.Builder getContactInfoBuilder(
          int index) {
        return getContactInfoFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public ContactInfoOrBuilder getContactInfoOrBuilder(
          int index) {
        if (contactInfoBuilder_ == null) {
          return contactInfo_.get(index);  } else {
          return contactInfoBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public java.util.List<? extends ContactInfoOrBuilder>
           getContactInfoOrBuilderList() {
        if (contactInfoBuilder_ != null) {
          return contactInfoBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(contactInfo_);
        }
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public ContactInfo.Builder addContactInfoBuilder() {
        return getContactInfoFieldBuilder().addBuilder(
            ContactInfo.getDefaultInstance());
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public ContactInfo.Builder addContactInfoBuilder(
          int index) {
        return getContactInfoFieldBuilder().addBuilder(
            index, ContactInfo.getDefaultInstance());
      }
      /**
       * <code>repeated .ContactInfo ContactInfo = 2;</code>
       */
      public java.util.List<ContactInfo.Builder>
           getContactInfoBuilderList() {
        return getContactInfoFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          ContactInfo, ContactInfo.Builder, ContactInfoOrBuilder>
          getContactInfoFieldBuilder() {
        if (contactInfoBuilder_ == null) {
          contactInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              ContactInfo, ContactInfo.Builder, ContactInfoOrBuilder>(
                  contactInfo_,
                  ((bitField0_ & 0x00000002) != 0),
                  getParentForChildren(),
                  isClean());
          contactInfo_ = null;
        }
        return contactInfoBuilder_;
      }
      @Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:AgencyInfoSets)
    }

    // @@protoc_insertion_point(class_scope:AgencyInfoSets)
    private static final AgencyInfoSets DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new AgencyInfoSets();
    }

    public static AgencyInfoSets getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

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

    /**
     * <code>string id = 1;</code>
     * @return The id.
     */
    String getId();
    /**
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    com.google.protobuf.ByteString
        getIdBytes();

    /**
     * <pre>
     *名称
     * </pre>
     *
     * <code>string originName = 2;</code>
     * @return The originName.
     */
    String getOriginName();
    /**
     * <pre>
     *名称
     * </pre>
     *
     * <code>string originName = 2;</code>
     * @return The bytes for originName.
     */
    com.google.protobuf.ByteString
        getOriginNameBytes();

    /**
     * <pre>
     *缩写
     * </pre>
     *
     * <code>string acronym = 3;</code>
     * @return The acronym.
     */
    String getAcronym();
    /**
     * <pre>
     *缩写
     * </pre>
     *
     * <code>string acronym = 3;</code>
     * @return The bytes for acronym.
     */
    com.google.protobuf.ByteString
        getAcronymBytes();

    /**
     * <pre>
     *中文名称
     * </pre>
     *
     * <code>string name = 4;</code>
     * @return The name.
     */
    String getName();
    /**
     * <pre>
     *中文名称
     * </pre>
     *
     * <code>string name = 4;</code>
     * @return The bytes for name.
     */
    com.google.protobuf.ByteString
        getNameBytes();

    /**
     * <pre>
     *简介
     * </pre>
     *
     * <code>string introduction = 5;</code>
     * @return The introduction.
     */
    String getIntroduction();
    /**
     * <pre>
     *简介
     * </pre>
     *
     * <code>string introduction = 5;</code>
     * @return The bytes for introduction.
     */
    com.google.protobuf.ByteString
        getIntroductionBytes();

    /**
     * <pre>
     *官网链接
     * </pre>
     *
     * <code>string officialUrl = 6;</code>
     * @return The officialUrl.
     */
    String getOfficialUrl();
    /**
     * <pre>
     *官网链接
     * </pre>
     *
     * <code>string officialUrl = 6;</code>
     * @return The bytes for officialUrl.
     */
    com.google.protobuf.ByteString
        getOfficialUrlBytes();

    /**
     * <pre>
     *所属国家
     * </pre>
     *
     * <code>string country = 7;</code>
     * @return The country.
     */
    String getCountry();
    /**
     * <pre>
     *所属国家
     * </pre>
     *
     * <code>string country = 7;</code>
     * @return The bytes for country.
     */
    com.google.protobuf.ByteString
        getCountryBytes();

    /**
     * <pre>
     *机构代码
     * </pre>
     *
     * <code>string code = 8;</code>
     * @return The code.
     */
    String getCode();
    /**
     * <pre>
     *机构代码
     * </pre>
     *
     * <code>string code = 8;</code>
     * @return The bytes for code.
     */
    com.google.protobuf.ByteString
        getCodeBytes();

    /**
     * <pre>
     *负责人id
     * </pre>
     *
     * <code>string mainPersonId = 9;</code>
     * @return The mainPersonId.
     */
    String getMainPersonId();
    /**
     * <pre>
     *负责人id
     * </pre>
     *
     * <code>string mainPersonId = 9;</code>
     * @return The bytes for mainPersonId.
     */
    com.google.protobuf.ByteString
        getMainPersonIdBytes();

    /**
     * <pre>
     *机构logo图片
     * </pre>
     *
     * <code>string logo = 10;</code>
     * @return The logo.
     */
    String getLogo();
    /**
     * <pre>
     *机构logo图片
     * </pre>
     *
     * <code>string logo = 10;</code>
     * @return The bytes for logo.
     */
    com.google.protobuf.ByteString
        getLogoBytes();

    /**
     * <pre>
     *扩展字段，集成标签管理模块用
     * </pre>
     *
     * <code>string tag = 11;</code>
     * @return The tag.
     */
    String getTag();
    /**
     * <pre>
     *扩展字段，集成标签管理模块用
     * </pre>
     *
     * <code>string tag = 11;</code>
     * @return The bytes for tag.
     */
    com.google.protobuf.ByteString
        getTagBytes();

    /**
     * <pre>
     *入库时间，13位时间戳
     * </pre>
     *
     * <code>string loadTime = 12;</code>
     * @return The loadTime.
     */
    String getLoadTime();
    /**
     * <pre>
     *入库时间，13位时间戳
     * </pre>
     *
     * <code>string loadTime = 12;</code>
     * @return The bytes for loadTime.
     */
    com.google.protobuf.ByteString
        getLoadTimeBytes();

    /**
     * <pre>
     *上次修改时间，13位时间戳
     * </pre>
     *
     * <code>string updateTime = 13;</code>
     * @return The updateTime.
     */
    String getUpdateTime();
    /**
     * <pre>
     *上次修改时间，13位时间戳
     * </pre>
     *
     * <code>string updateTime = 13;</code>
     * @return The bytes for updateTime.
     */
    com.google.protobuf.ByteString
        getUpdateTimeBytes();

    /**
     * <pre>
     *备注
     * </pre>
     *
     * <code>string remarks = 14;</code>
     * @return The remarks.
     */
    String getRemarks();
    /**
     * <pre>
     *备注
     * </pre>
     *
     * <code>string remarks = 14;</code>
     * @return The bytes for remarks.
     */
    com.google.protobuf.ByteString
        getRemarksBytes();
  }
  /**
   * Protobuf type {@code AgencyInfo}
   */
  public  static final class AgencyInfo extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:AgencyInfo)
      AgencyInfoOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use AgencyInfo.newBuilder() to construct.
    private AgencyInfo(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private AgencyInfo() {
      id_ = "";
      originName_ = "";
      acronym_ = "";
      name_ = "";
      introduction_ = "";
      officialUrl_ = "";
      country_ = "";
      code_ = "";
      mainPersonId_ = "";
      logo_ = "";
      tag_ = "";
      loadTime_ = "";
      updateTime_ = "";
      remarks_ = "";
    }

    @Override
    @SuppressWarnings({"unused"})
    protected Object newInstance(
        UnusedPrivateParameter unused) {
      return new AgencyInfo();
    }

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private AgencyInfo(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      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();

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

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

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

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

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

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

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

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

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

              logo_ = s;
              break;
            }
            case 90: {
              String s = input.readStringRequireUtf8();

              tag_ = s;
              break;
            }
            case 98: {
              String s = input.readStringRequireUtf8();

              loadTime_ = s;
              break;
            }
            case 106: {
              String s = input.readStringRequireUtf8();

              updateTime_ = s;
              break;
            }
            case 114: {
              String s = input.readStringRequireUtf8();

              remarks_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  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 Agency.internal_static_AgencyInfo_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return Agency.internal_static_AgencyInfo_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              AgencyInfo.class, Builder.class);
    }

    public static final int ID_FIELD_NUMBER = 1;
    private volatile Object id_;
    /**
     * <code>string id = 1;</code>
     * @return The id.
     */
    public String getId() {
      Object ref = id_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        id_ = s;
        return s;
      }
    }
    /**
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    public com.google.protobuf.ByteString
        getIdBytes() {
      Object ref = id_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        id_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ORIGINNAME_FIELD_NUMBER = 2;
    private volatile Object originName_;
    /**
     * <pre>
     *名称
     * </pre>
     *
     * <code>string originName = 2;</code>
     * @return The originName.
     */
    public String getOriginName() {
      Object ref = originName_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        originName_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *名称
     * </pre>
     *
     * <code>string originName = 2;</code>
     * @return The bytes for originName.
     */
    public com.google.protobuf.ByteString
        getOriginNameBytes() {
      Object ref = originName_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        originName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ACRONYM_FIELD_NUMBER = 3;
    private volatile Object acronym_;
    /**
     * <pre>
     *缩写
     * </pre>
     *
     * <code>string acronym = 3;</code>
     * @return The acronym.
     */
    public String getAcronym() {
      Object ref = acronym_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        acronym_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *缩写
     * </pre>
     *
     * <code>string acronym = 3;</code>
     * @return The bytes for acronym.
     */
    public com.google.protobuf.ByteString
        getAcronymBytes() {
      Object ref = acronym_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        acronym_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int NAME_FIELD_NUMBER = 4;
    private volatile Object name_;
    /**
     * <pre>
     *中文名称
     * </pre>
     *
     * <code>string name = 4;</code>
     * @return The name.
     */
    public String getName() {
      Object ref = name_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        name_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *中文名称
     * </pre>
     *
     * <code>string name = 4;</code>
     * @return The bytes for name.
     */
    public com.google.protobuf.ByteString
        getNameBytes() {
      Object ref = name_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int INTRODUCTION_FIELD_NUMBER = 5;
    private volatile Object introduction_;
    /**
     * <pre>
     *简介
     * </pre>
     *
     * <code>string introduction = 5;</code>
     * @return The introduction.
     */
    public String getIntroduction() {
      Object ref = introduction_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        introduction_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *简介
     * </pre>
     *
     * <code>string introduction = 5;</code>
     * @return The bytes for introduction.
     */
    public com.google.protobuf.ByteString
        getIntroductionBytes() {
      Object ref = introduction_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        introduction_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int OFFICIALURL_FIELD_NUMBER = 6;
    private volatile Object officialUrl_;
    /**
     * <pre>
     *官网链接
     * </pre>
     *
     * <code>string officialUrl = 6;</code>
     * @return The officialUrl.
     */
    public String getOfficialUrl() {
      Object ref = officialUrl_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        officialUrl_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *官网链接
     * </pre>
     *
     * <code>string officialUrl = 6;</code>
     * @return The bytes for officialUrl.
     */
    public com.google.protobuf.ByteString
        getOfficialUrlBytes() {
      Object ref = officialUrl_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        officialUrl_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int COUNTRY_FIELD_NUMBER = 7;
    private volatile Object country_;
    /**
     * <pre>
     *所属国家
     * </pre>
     *
     * <code>string country = 7;</code>
     * @return The country.
     */
    public String getCountry() {
      Object ref = country_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        country_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *所属国家
     * </pre>
     *
     * <code>string country = 7;</code>
     * @return The bytes for country.
     */
    public com.google.protobuf.ByteString
        getCountryBytes() {
      Object ref = country_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        country_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CODE_FIELD_NUMBER = 8;
    private volatile Object code_;
    /**
     * <pre>
     *机构代码
     * </pre>
     *
     * <code>string code = 8;</code>
     * @return The code.
     */
    public String getCode() {
      Object ref = code_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        code_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *机构代码
     * </pre>
     *
     * <code>string code = 8;</code>
     * @return The bytes for code.
     */
    public com.google.protobuf.ByteString
        getCodeBytes() {
      Object ref = code_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        code_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int MAINPERSONID_FIELD_NUMBER = 9;
    private volatile Object mainPersonId_;
    /**
     * <pre>
     *负责人id
     * </pre>
     *
     * <code>string mainPersonId = 9;</code>
     * @return The mainPersonId.
     */
    public String getMainPersonId() {
      Object ref = mainPersonId_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        mainPersonId_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *负责人id
     * </pre>
     *
     * <code>string mainPersonId = 9;</code>
     * @return The bytes for mainPersonId.
     */
    public com.google.protobuf.ByteString
        getMainPersonIdBytes() {
      Object ref = mainPersonId_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        mainPersonId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int LOGO_FIELD_NUMBER = 10;
    private volatile Object logo_;
    /**
     * <pre>
     *机构logo图片
     * </pre>
     *
     * <code>string logo = 10;</code>
     * @return The logo.
     */
    public String getLogo() {
      Object ref = logo_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        logo_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *机构logo图片
     * </pre>
     *
     * <code>string logo = 10;</code>
     * @return The bytes for logo.
     */
    public com.google.protobuf.ByteString
        getLogoBytes() {
      Object ref = logo_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        logo_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int TAG_FIELD_NUMBER = 11;
    private volatile Object tag_;
    /**
     * <pre>
     *扩展字段，集成标签管理模块用
     * </pre>
     *
     * <code>string tag = 11;</code>
     * @return The tag.
     */
    public String getTag() {
      Object ref = tag_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        tag_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *扩展字段，集成标签管理模块用
     * </pre>
     *
     * <code>string tag = 11;</code>
     * @return The bytes for tag.
     */
    public com.google.protobuf.ByteString
        getTagBytes() {
      Object ref = tag_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        tag_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int LOADTIME_FIELD_NUMBER = 12;
    private volatile Object loadTime_;
    /**
     * <pre>
     *入库时间，13位时间戳
     * </pre>
     *
     * <code>string loadTime = 12;</code>
     * @return The loadTime.
     */
    public String getLoadTime() {
      Object ref = loadTime_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        loadTime_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *入库时间，13位时间戳
     * </pre>
     *
     * <code>string loadTime = 12;</code>
     * @return The bytes for loadTime.
     */
    public com.google.protobuf.ByteString
        getLoadTimeBytes() {
      Object ref = loadTime_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        loadTime_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int UPDATETIME_FIELD_NUMBER = 13;
    private volatile Object updateTime_;
    /**
     * <pre>
     *上次修改时间，13位时间戳
     * </pre>
     *
     * <code>string updateTime = 13;</code>
     * @return The updateTime.
     */
    public String getUpdateTime() {
      Object ref = updateTime_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        updateTime_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *上次修改时间，13位时间戳
     * </pre>
     *
     * <code>string updateTime = 13;</code>
     * @return The bytes for updateTime.
     */
    public com.google.protobuf.ByteString
        getUpdateTimeBytes() {
      Object ref = updateTime_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        updateTime_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int REMARKS_FIELD_NUMBER = 14;
    private volatile Object remarks_;
    /**
     * <pre>
     *备注
     * </pre>
     *
     * <code>string remarks = 14;</code>
     * @return The remarks.
     */
    public String getRemarks() {
      Object ref = remarks_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        remarks_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *备注
     * </pre>
     *
     * <code>string remarks = 14;</code>
     * @return The bytes for remarks.
     */
    public com.google.protobuf.ByteString
        getRemarksBytes() {
      Object ref = remarks_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        remarks_ = 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 (!getIdBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_);
      }
      if (!getOriginNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, originName_);
      }
      if (!getAcronymBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, acronym_);
      }
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, name_);
      }
      if (!getIntroductionBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, introduction_);
      }
      if (!getOfficialUrlBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, officialUrl_);
      }
      if (!getCountryBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 7, country_);
      }
      if (!getCodeBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 8, code_);
      }
      if (!getMainPersonIdBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 9, mainPersonId_);
      }
      if (!getLogoBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 10, logo_);
      }
      if (!getTagBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 11, tag_);
      }
      if (!getLoadTimeBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 12, loadTime_);
      }
      if (!getUpdateTimeBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 13, updateTime_);
      }
      if (!getRemarksBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 14, remarks_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (!getIdBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_);
      }
      if (!getOriginNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, originName_);
      }
      if (!getAcronymBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, acronym_);
      }
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, name_);
      }
      if (!getIntroductionBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, introduction_);
      }
      if (!getOfficialUrlBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, officialUrl_);
      }
      if (!getCountryBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, country_);
      }
      if (!getCodeBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, code_);
      }
      if (!getMainPersonIdBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, mainPersonId_);
      }
      if (!getLogoBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, logo_);
      }
      if (!getTagBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(11, tag_);
      }
      if (!getLoadTimeBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(12, loadTime_);
      }
      if (!getUpdateTimeBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(13, updateTime_);
      }
      if (!getRemarksBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(14, remarks_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (!getId()
          .equals(other.getId())) return false;
      if (!getOriginName()
          .equals(other.getOriginName())) return false;
      if (!getAcronym()
          .equals(other.getAcronym())) return false;
      if (!getName()
          .equals(other.getName())) return false;
      if (!getIntroduction()
          .equals(other.getIntroduction())) return false;
      if (!getOfficialUrl()
          .equals(other.getOfficialUrl())) return false;
      if (!getCountry()
          .equals(other.getCountry())) return false;
      if (!getCode()
          .equals(other.getCode())) return false;
      if (!getMainPersonId()
          .equals(other.getMainPersonId())) return false;
      if (!getLogo()
          .equals(other.getLogo())) return false;
      if (!getTag()
          .equals(other.getTag())) return false;
      if (!getLoadTime()
          .equals(other.getLoadTime())) return false;
      if (!getUpdateTime()
          .equals(other.getUpdateTime())) return false;
      if (!getRemarks()
          .equals(other.getRemarks())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + ID_FIELD_NUMBER;
      hash = (53 * hash) + getId().hashCode();
      hash = (37 * hash) + ORIGINNAME_FIELD_NUMBER;
      hash = (53 * hash) + getOriginName().hashCode();
      hash = (37 * hash) + ACRONYM_FIELD_NUMBER;
      hash = (53 * hash) + getAcronym().hashCode();
      hash = (37 * hash) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
      hash = (37 * hash) + INTRODUCTION_FIELD_NUMBER;
      hash = (53 * hash) + getIntroduction().hashCode();
      hash = (37 * hash) + OFFICIALURL_FIELD_NUMBER;
      hash = (53 * hash) + getOfficialUrl().hashCode();
      hash = (37 * hash) + COUNTRY_FIELD_NUMBER;
      hash = (53 * hash) + getCountry().hashCode();
      hash = (37 * hash) + CODE_FIELD_NUMBER;
      hash = (53 * hash) + getCode().hashCode();
      hash = (37 * hash) + MAINPERSONID_FIELD_NUMBER;
      hash = (53 * hash) + getMainPersonId().hashCode();
      hash = (37 * hash) + LOGO_FIELD_NUMBER;
      hash = (53 * hash) + getLogo().hashCode();
      hash = (37 * hash) + TAG_FIELD_NUMBER;
      hash = (53 * hash) + getTag().hashCode();
      hash = (37 * hash) + LOADTIME_FIELD_NUMBER;
      hash = (53 * hash) + getLoadTime().hashCode();
      hash = (37 * hash) + UPDATETIME_FIELD_NUMBER;
      hash = (53 * hash) + getUpdateTime().hashCode();
      hash = (37 * hash) + REMARKS_FIELD_NUMBER;
      hash = (53 * hash) + getRemarks().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static AgencyInfo parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static AgencyInfo parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static AgencyInfo parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static AgencyInfo parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static AgencyInfo parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static AgencyInfo parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static AgencyInfo parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static AgencyInfo 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 AgencyInfo parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static AgencyInfo 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 AgencyInfo parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static AgencyInfo 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(AgencyInfo 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 AgencyInfo}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:AgencyInfo)
        AgencyInfoOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return Agency.internal_static_AgencyInfo_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return Agency.internal_static_AgencyInfo_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                AgencyInfo.class, Builder.class);
      }

      // Construct using Agency.AgencyInfo.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();
        id_ = "";

        originName_ = "";

        acronym_ = "";

        name_ = "";

        introduction_ = "";

        officialUrl_ = "";

        country_ = "";

        code_ = "";

        mainPersonId_ = "";

        logo_ = "";

        tag_ = "";

        loadTime_ = "";

        updateTime_ = "";

        remarks_ = "";

        return this;
      }

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

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

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

      @Override
      public AgencyInfo buildPartial() {
        AgencyInfo result = new AgencyInfo(this);
        result.id_ = id_;
        result.originName_ = originName_;
        result.acronym_ = acronym_;
        result.name_ = name_;
        result.introduction_ = introduction_;
        result.officialUrl_ = officialUrl_;
        result.country_ = country_;
        result.code_ = code_;
        result.mainPersonId_ = mainPersonId_;
        result.logo_ = logo_;
        result.tag_ = tag_;
        result.loadTime_ = loadTime_;
        result.updateTime_ = updateTime_;
        result.remarks_ = remarks_;
        onBuilt();
        return result;
      }

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

      public Builder mergeFrom(AgencyInfo other) {
        if (other == AgencyInfo.getDefaultInstance()) return this;
        if (!other.getId().isEmpty()) {
          id_ = other.id_;
          onChanged();
        }
        if (!other.getOriginName().isEmpty()) {
          originName_ = other.originName_;
          onChanged();
        }
        if (!other.getAcronym().isEmpty()) {
          acronym_ = other.acronym_;
          onChanged();
        }
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (!other.getIntroduction().isEmpty()) {
          introduction_ = other.introduction_;
          onChanged();
        }
        if (!other.getOfficialUrl().isEmpty()) {
          officialUrl_ = other.officialUrl_;
          onChanged();
        }
        if (!other.getCountry().isEmpty()) {
          country_ = other.country_;
          onChanged();
        }
        if (!other.getCode().isEmpty()) {
          code_ = other.code_;
          onChanged();
        }
        if (!other.getMainPersonId().isEmpty()) {
          mainPersonId_ = other.mainPersonId_;
          onChanged();
        }
        if (!other.getLogo().isEmpty()) {
          logo_ = other.logo_;
          onChanged();
        }
        if (!other.getTag().isEmpty()) {
          tag_ = other.tag_;
          onChanged();
        }
        if (!other.getLoadTime().isEmpty()) {
          loadTime_ = other.loadTime_;
          onChanged();
        }
        if (!other.getUpdateTime().isEmpty()) {
          updateTime_ = other.updateTime_;
          onChanged();
        }
        if (!other.getRemarks().isEmpty()) {
          remarks_ = other.remarks_;
          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 {
        AgencyInfo parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (AgencyInfo) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private Object id_ = "";
      /**
       * <code>string id = 1;</code>
       * @return The id.
       */
      public String getId() {
        Object ref = id_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          id_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <code>string id = 1;</code>
       * @return The bytes for id.
       */
      public com.google.protobuf.ByteString
          getIdBytes() {
        Object ref = id_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          id_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string id = 1;</code>
       * @param value The id to set.
       * @return This builder for chaining.
       */
      public Builder setId(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        id_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearId() {
        
        id_ = getDefaultInstance().getId();
        onChanged();
        return this;
      }
      /**
       * <code>string id = 1;</code>
       * @param value The bytes for id to set.
       * @return This builder for chaining.
       */
      public Builder setIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        id_ = value;
        onChanged();
        return this;
      }

      private Object originName_ = "";
      /**
       * <pre>
       *名称
       * </pre>
       *
       * <code>string originName = 2;</code>
       * @return The originName.
       */
      public String getOriginName() {
        Object ref = originName_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          originName_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       *名称
       * </pre>
       *
       * <code>string originName = 2;</code>
       * @return The bytes for originName.
       */
      public com.google.protobuf.ByteString
          getOriginNameBytes() {
        Object ref = originName_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          originName_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *名称
       * </pre>
       *
       * <code>string originName = 2;</code>
       * @param value The originName to set.
       * @return This builder for chaining.
       */
      public Builder setOriginName(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        originName_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *名称
       * </pre>
       *
       * <code>string originName = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearOriginName() {
        
        originName_ = getDefaultInstance().getOriginName();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *名称
       * </pre>
       *
       * <code>string originName = 2;</code>
       * @param value The bytes for originName to set.
       * @return This builder for chaining.
       */
      public Builder setOriginNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        originName_ = value;
        onChanged();
        return this;
      }

      private Object acronym_ = "";
      /**
       * <pre>
       *缩写
       * </pre>
       *
       * <code>string acronym = 3;</code>
       * @return The acronym.
       */
      public String getAcronym() {
        Object ref = acronym_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          acronym_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       *缩写
       * </pre>
       *
       * <code>string acronym = 3;</code>
       * @return The bytes for acronym.
       */
      public com.google.protobuf.ByteString
          getAcronymBytes() {
        Object ref = acronym_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          acronym_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *缩写
       * </pre>
       *
       * <code>string acronym = 3;</code>
       * @param value The acronym to set.
       * @return This builder for chaining.
       */
      public Builder setAcronym(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        acronym_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *缩写
       * </pre>
       *
       * <code>string acronym = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearAcronym() {
        
        acronym_ = getDefaultInstance().getAcronym();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *缩写
       * </pre>
       *
       * <code>string acronym = 3;</code>
       * @param value The bytes for acronym to set.
       * @return This builder for chaining.
       */
      public Builder setAcronymBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        acronym_ = value;
        onChanged();
        return this;
      }

      private Object name_ = "";
      /**
       * <pre>
       *中文名称
       * </pre>
       *
       * <code>string name = 4;</code>
       * @return The name.
       */
      public String getName() {
        Object ref = name_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          name_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       *中文名称
       * </pre>
       *
       * <code>string name = 4;</code>
       * @return The bytes for name.
       */
      public com.google.protobuf.ByteString
          getNameBytes() {
        Object ref = name_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          name_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *中文名称
       * </pre>
       *
       * <code>string name = 4;</code>
       * @param value The name to set.
       * @return This builder for chaining.
       */
      public Builder setName(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        name_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *中文名称
       * </pre>
       *
       * <code>string name = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearName() {
        
        name_ = getDefaultInstance().getName();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *中文名称
       * </pre>
       *
       * <code>string name = 4;</code>
       * @param value The bytes for name to set.
       * @return This builder for chaining.
       */
      public Builder setNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        name_ = value;
        onChanged();
        return this;
      }

      private Object introduction_ = "";
      /**
       * <pre>
       *简介
       * </pre>
       *
       * <code>string introduction = 5;</code>
       * @return The introduction.
       */
      public String getIntroduction() {
        Object ref = introduction_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          introduction_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       *简介
       * </pre>
       *
       * <code>string introduction = 5;</code>
       * @return The bytes for introduction.
       */
      public com.google.protobuf.ByteString
          getIntroductionBytes() {
        Object ref = introduction_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          introduction_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *简介
       * </pre>
       *
       * <code>string introduction = 5;</code>
       * @param value The introduction to set.
       * @return This builder for chaining.
       */
      public Builder setIntroduction(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        introduction_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *简介
       * </pre>
       *
       * <code>string introduction = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearIntroduction() {
        
        introduction_ = getDefaultInstance().getIntroduction();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *简介
       * </pre>
       *
       * <code>string introduction = 5;</code>
       * @param value The bytes for introduction to set.
       * @return This builder for chaining.
       */
      public Builder setIntroductionBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        introduction_ = value;
        onChanged();
        return this;
      }

      private Object officialUrl_ = "";
      /**
       * <pre>
       *官网链接
       * </pre>
       *
       * <code>string officialUrl = 6;</code>
       * @return The officialUrl.
       */
      public String getOfficialUrl() {
        Object ref = officialUrl_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          officialUrl_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       *官网链接
       * </pre>
       *
       * <code>string officialUrl = 6;</code>
       * @return The bytes for officialUrl.
       */
      public com.google.protobuf.ByteString
          getOfficialUrlBytes() {
        Object ref = officialUrl_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          officialUrl_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *官网链接
       * </pre>
       *
       * <code>string officialUrl = 6;</code>
       * @param value The officialUrl to set.
       * @return This builder for chaining.
       */
      public Builder setOfficialUrl(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        officialUrl_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *官网链接
       * </pre>
       *
       * <code>string officialUrl = 6;</code>
       * @return This builder for chaining.
       */
      public Builder clearOfficialUrl() {
        
        officialUrl_ = getDefaultInstance().getOfficialUrl();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *官网链接
       * </pre>
       *
       * <code>string officialUrl = 6;</code>
       * @param value The bytes for officialUrl to set.
       * @return This builder for chaining.
       */
      public Builder setOfficialUrlBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        officialUrl_ = value;
        onChanged();
        return this;
      }

      private Object country_ = "";
      /**
       * <pre>
       *所属国家
       * </pre>
       *
       * <code>string country = 7;</code>
       * @return The country.
       */
      public String getCountry() {
        Object ref = country_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          country_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       *所属国家
       * </pre>
       *
       * <code>string country = 7;</code>
       * @return The bytes for country.
       */
      public com.google.protobuf.ByteString
          getCountryBytes() {
        Object ref = country_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          country_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *所属国家
       * </pre>
       *
       * <code>string country = 7;</code>
       * @param value The country to set.
       * @return This builder for chaining.
       */
      public Builder setCountry(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        country_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *所属国家
       * </pre>
       *
       * <code>string country = 7;</code>
       * @return This builder for chaining.
       */
      public Builder clearCountry() {
        
        country_ = getDefaultInstance().getCountry();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *所属国家
       * </pre>
       *
       * <code>string country = 7;</code>
       * @param value The bytes for country to set.
       * @return This builder for chaining.
       */
      public Builder setCountryBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        country_ = value;
        onChanged();
        return this;
      }

      private Object code_ = "";
      /**
       * <pre>
       *机构代码
       * </pre>
       *
       * <code>string code = 8;</code>
       * @return The code.
       */
      public String getCode() {
        Object ref = code_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          code_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       *机构代码
       * </pre>
       *
       * <code>string code = 8;</code>
       * @return The bytes for code.
       */
      public com.google.protobuf.ByteString
          getCodeBytes() {
        Object ref = code_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          code_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *机构代码
       * </pre>
       *
       * <code>string code = 8;</code>
       * @param value The code to set.
       * @return This builder for chaining.
       */
      public Builder setCode(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        code_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *机构代码
       * </pre>
       *
       * <code>string code = 8;</code>
       * @return This builder for chaining.
       */
      public Builder clearCode() {
        
        code_ = getDefaultInstance().getCode();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *机构代码
       * </pre>
       *
       * <code>string code = 8;</code>
       * @param value The bytes for code to set.
       * @return This builder for chaining.
       */
      public Builder setCodeBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        code_ = value;
        onChanged();
        return this;
      }

      private Object mainPersonId_ = "";
      /**
       * <pre>
       *负责人id
       * </pre>
       *
       * <code>string mainPersonId = 9;</code>
       * @return The mainPersonId.
       */
      public String getMainPersonId() {
        Object ref = mainPersonId_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          mainPersonId_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       *负责人id
       * </pre>
       *
       * <code>string mainPersonId = 9;</code>
       * @return The bytes for mainPersonId.
       */
      public com.google.protobuf.ByteString
          getMainPersonIdBytes() {
        Object ref = mainPersonId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          mainPersonId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *负责人id
       * </pre>
       *
       * <code>string mainPersonId = 9;</code>
       * @param value The mainPersonId to set.
       * @return This builder for chaining.
       */
      public Builder setMainPersonId(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        mainPersonId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *负责人id
       * </pre>
       *
       * <code>string mainPersonId = 9;</code>
       * @return This builder for chaining.
       */
      public Builder clearMainPersonId() {
        
        mainPersonId_ = getDefaultInstance().getMainPersonId();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *负责人id
       * </pre>
       *
       * <code>string mainPersonId = 9;</code>
       * @param value The bytes for mainPersonId to set.
       * @return This builder for chaining.
       */
      public Builder setMainPersonIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        mainPersonId_ = value;
        onChanged();
        return this;
      }

      private Object logo_ = "";
      /**
       * <pre>
       *机构logo图片
       * </pre>
       *
       * <code>string logo = 10;</code>
       * @return The logo.
       */
      public String getLogo() {
        Object ref = logo_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          logo_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       *机构logo图片
       * </pre>
       *
       * <code>string logo = 10;</code>
       * @return The bytes for logo.
       */
      public com.google.protobuf.ByteString
          getLogoBytes() {
        Object ref = logo_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          logo_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *机构logo图片
       * </pre>
       *
       * <code>string logo = 10;</code>
       * @param value The logo to set.
       * @return This builder for chaining.
       */
      public Builder setLogo(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        logo_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *机构logo图片
       * </pre>
       *
       * <code>string logo = 10;</code>
       * @return This builder for chaining.
       */
      public Builder clearLogo() {
        
        logo_ = getDefaultInstance().getLogo();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *机构logo图片
       * </pre>
       *
       * <code>string logo = 10;</code>
       * @param value The bytes for logo to set.
       * @return This builder for chaining.
       */
      public Builder setLogoBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        logo_ = value;
        onChanged();
        return this;
      }

      private Object tag_ = "";
      /**
       * <pre>
       *扩展字段，集成标签管理模块用
       * </pre>
       *
       * <code>string tag = 11;</code>
       * @return The tag.
       */
      public String getTag() {
        Object ref = tag_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          tag_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       *扩展字段，集成标签管理模块用
       * </pre>
       *
       * <code>string tag = 11;</code>
       * @return The bytes for tag.
       */
      public com.google.protobuf.ByteString
          getTagBytes() {
        Object ref = tag_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          tag_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *扩展字段，集成标签管理模块用
       * </pre>
       *
       * <code>string tag = 11;</code>
       * @param value The tag to set.
       * @return This builder for chaining.
       */
      public Builder setTag(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        tag_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *扩展字段，集成标签管理模块用
       * </pre>
       *
       * <code>string tag = 11;</code>
       * @return This builder for chaining.
       */
      public Builder clearTag() {
        
        tag_ = getDefaultInstance().getTag();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *扩展字段，集成标签管理模块用
       * </pre>
       *
       * <code>string tag = 11;</code>
       * @param value The bytes for tag to set.
       * @return This builder for chaining.
       */
      public Builder setTagBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        tag_ = value;
        onChanged();
        return this;
      }

      private Object loadTime_ = "";
      /**
       * <pre>
       *入库时间，13位时间戳
       * </pre>
       *
       * <code>string loadTime = 12;</code>
       * @return The loadTime.
       */
      public String getLoadTime() {
        Object ref = loadTime_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          loadTime_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       *入库时间，13位时间戳
       * </pre>
       *
       * <code>string loadTime = 12;</code>
       * @return The bytes for loadTime.
       */
      public com.google.protobuf.ByteString
          getLoadTimeBytes() {
        Object ref = loadTime_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          loadTime_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *入库时间，13位时间戳
       * </pre>
       *
       * <code>string loadTime = 12;</code>
       * @param value The loadTime to set.
       * @return This builder for chaining.
       */
      public Builder setLoadTime(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        loadTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *入库时间，13位时间戳
       * </pre>
       *
       * <code>string loadTime = 12;</code>
       * @return This builder for chaining.
       */
      public Builder clearLoadTime() {
        
        loadTime_ = getDefaultInstance().getLoadTime();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *入库时间，13位时间戳
       * </pre>
       *
       * <code>string loadTime = 12;</code>
       * @param value The bytes for loadTime to set.
       * @return This builder for chaining.
       */
      public Builder setLoadTimeBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        loadTime_ = value;
        onChanged();
        return this;
      }

      private Object updateTime_ = "";
      /**
       * <pre>
       *上次修改时间，13位时间戳
       * </pre>
       *
       * <code>string updateTime = 13;</code>
       * @return The updateTime.
       */
      public String getUpdateTime() {
        Object ref = updateTime_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          updateTime_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       *上次修改时间，13位时间戳
       * </pre>
       *
       * <code>string updateTime = 13;</code>
       * @return The bytes for updateTime.
       */
      public com.google.protobuf.ByteString
          getUpdateTimeBytes() {
        Object ref = updateTime_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          updateTime_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *上次修改时间，13位时间戳
       * </pre>
       *
       * <code>string updateTime = 13;</code>
       * @param value The updateTime to set.
       * @return This builder for chaining.
       */
      public Builder setUpdateTime(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        updateTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *上次修改时间，13位时间戳
       * </pre>
       *
       * <code>string updateTime = 13;</code>
       * @return This builder for chaining.
       */
      public Builder clearUpdateTime() {
        
        updateTime_ = getDefaultInstance().getUpdateTime();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *上次修改时间，13位时间戳
       * </pre>
       *
       * <code>string updateTime = 13;</code>
       * @param value The bytes for updateTime to set.
       * @return This builder for chaining.
       */
      public Builder setUpdateTimeBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        updateTime_ = value;
        onChanged();
        return this;
      }

      private Object remarks_ = "";
      /**
       * <pre>
       *备注
       * </pre>
       *
       * <code>string remarks = 14;</code>
       * @return The remarks.
       */
      public String getRemarks() {
        Object ref = remarks_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          remarks_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       *备注
       * </pre>
       *
       * <code>string remarks = 14;</code>
       * @return The bytes for remarks.
       */
      public com.google.protobuf.ByteString
          getRemarksBytes() {
        Object ref = remarks_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          remarks_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *备注
       * </pre>
       *
       * <code>string remarks = 14;</code>
       * @param value The remarks to set.
       * @return This builder for chaining.
       */
      public Builder setRemarks(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        remarks_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *备注
       * </pre>
       *
       * <code>string remarks = 14;</code>
       * @return This builder for chaining.
       */
      public Builder clearRemarks() {
        
        remarks_ = getDefaultInstance().getRemarks();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *备注
       * </pre>
       *
       * <code>string remarks = 14;</code>
       * @param value The bytes for remarks to set.
       * @return This builder for chaining.
       */
      public Builder setRemarksBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        remarks_ = value;
        onChanged();
        return this;
      }
      @Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:AgencyInfo)
    }

    // @@protoc_insertion_point(class_scope:AgencyInfo)
    private static final AgencyInfo DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new AgencyInfo();
    }

    public static AgencyInfo getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

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

    /**
     * <pre>
     *ID
     * </pre>
     *
     * <code>string id = 1;</code>
     * @return The id.
     */
    String getId();
    /**
     * <pre>
     *ID
     * </pre>
     *
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    com.google.protobuf.ByteString
        getIdBytes();

    /**
     * <code>string entityId = 2;</code>
     * @return The entityId.
     */
    String getEntityId();
    /**
     * <code>string entityId = 2;</code>
     * @return The bytes for entityId.
     */
    com.google.protobuf.ByteString
        getEntityIdBytes();

    /**
     * <code>string addresses = 3;</code>
     * @return The addresses.
     */
    String getAddresses();
    /**
     * <code>string addresses = 3;</code>
     * @return The bytes for addresses.
     */
    com.google.protobuf.ByteString
        getAddressesBytes();

    /**
     * <code>string phones = 4;</code>
     * @return The phones.
     */
    String getPhones();
    /**
     * <code>string phones = 4;</code>
     * @return The bytes for phones.
     */
    com.google.protobuf.ByteString
        getPhonesBytes();

    /**
     * <code>string emails = 5;</code>
     * @return The emails.
     */
    String getEmails();
    /**
     * <code>string emails = 5;</code>
     * @return The bytes for emails.
     */
    com.google.protobuf.ByteString
        getEmailsBytes();

    /**
     * <code>string Facebook = 6;</code>
     * @return The facebook.
     */
    String getFacebook();
    /**
     * <code>string Facebook = 6;</code>
     * @return The bytes for facebook.
     */
    com.google.protobuf.ByteString
        getFacebookBytes();

    /**
     * <code>string Twitter = 7;</code>
     * @return The twitter.
     */
    String getTwitter();
    /**
     * <code>string Twitter = 7;</code>
     * @return The bytes for twitter.
     */
    com.google.protobuf.ByteString
        getTwitterBytes();

    /**
     * <code>string LinkedIn = 8;</code>
     * @return The linkedIn.
     */
    String getLinkedIn();
    /**
     * <code>string LinkedIn = 8;</code>
     * @return The bytes for linkedIn.
     */
    com.google.protobuf.ByteString
        getLinkedInBytes();

    /**
     * <code>string Instagram = 9;</code>
     * @return The instagram.
     */
    String getInstagram();
    /**
     * <code>string Instagram = 9;</code>
     * @return The bytes for instagram.
     */
    com.google.protobuf.ByteString
        getInstagramBytes();

    /**
     * <code>string Youtube = 10;</code>
     * @return The youtube.
     */
    String getYoutube();
    /**
     * <code>string Youtube = 10;</code>
     * @return The bytes for youtube.
     */
    com.google.protobuf.ByteString
        getYoutubeBytes();

    /**
     * <code>string Fax = 11;</code>
     * @return The fax.
     */
    String getFax();
    /**
     * <code>string Fax = 11;</code>
     * @return The bytes for fax.
     */
    com.google.protobuf.ByteString
        getFaxBytes();

    /**
     * <code>string entityType = 12;</code>
     * @return The entityType.
     */
    String getEntityType();
    /**
     * <code>string entityType = 12;</code>
     * @return The bytes for entityType.
     */
    com.google.protobuf.ByteString
        getEntityTypeBytes();
  }
  /**
   * Protobuf type {@code ContactInfo}
   */
  public  static final class ContactInfo extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ContactInfo)
      ContactInfoOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ContactInfo.newBuilder() to construct.
    private ContactInfo(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ContactInfo() {
      id_ = "";
      entityId_ = "";
      addresses_ = "";
      phones_ = "";
      emails_ = "";
      facebook_ = "";
      twitter_ = "";
      linkedIn_ = "";
      instagram_ = "";
      youtube_ = "";
      fax_ = "";
      entityType_ = "";
    }

    @Override
    @SuppressWarnings({"unused"})
    protected Object newInstance(
        UnusedPrivateParameter unused) {
      return new ContactInfo();
    }

    @Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ContactInfo(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new NullPointerException();
      }
      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();

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

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

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

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

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

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

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

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

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

              youtube_ = s;
              break;
            }
            case 90: {
              String s = input.readStringRequireUtf8();

              fax_ = s;
              break;
            }
            case 98: {
              String s = input.readStringRequireUtf8();

              entityType_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  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 Agency.internal_static_ContactInfo_descriptor;
    }

    @Override
    protected FieldAccessorTable
        internalGetFieldAccessorTable() {
      return Agency.internal_static_ContactInfo_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              ContactInfo.class, Builder.class);
    }

    public static final int ID_FIELD_NUMBER = 1;
    private volatile Object id_;
    /**
     * <pre>
     *ID
     * </pre>
     *
     * <code>string id = 1;</code>
     * @return The id.
     */
    public String getId() {
      Object ref = id_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        id_ = s;
        return s;
      }
    }
    /**
     * <pre>
     *ID
     * </pre>
     *
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    public com.google.protobuf.ByteString
        getIdBytes() {
      Object ref = id_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        id_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ENTITYID_FIELD_NUMBER = 2;
    private volatile Object entityId_;
    /**
     * <code>string entityId = 2;</code>
     * @return The entityId.
     */
    public String getEntityId() {
      Object ref = entityId_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        entityId_ = s;
        return s;
      }
    }
    /**
     * <code>string entityId = 2;</code>
     * @return The bytes for entityId.
     */
    public com.google.protobuf.ByteString
        getEntityIdBytes() {
      Object ref = entityId_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        entityId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ADDRESSES_FIELD_NUMBER = 3;
    private volatile Object addresses_;
    /**
     * <code>string addresses = 3;</code>
     * @return The addresses.
     */
    public String getAddresses() {
      Object ref = addresses_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        addresses_ = s;
        return s;
      }
    }
    /**
     * <code>string addresses = 3;</code>
     * @return The bytes for addresses.
     */
    public com.google.protobuf.ByteString
        getAddressesBytes() {
      Object ref = addresses_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        addresses_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int PHONES_FIELD_NUMBER = 4;
    private volatile Object phones_;
    /**
     * <code>string phones = 4;</code>
     * @return The phones.
     */
    public String getPhones() {
      Object ref = phones_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        phones_ = s;
        return s;
      }
    }
    /**
     * <code>string phones = 4;</code>
     * @return The bytes for phones.
     */
    public com.google.protobuf.ByteString
        getPhonesBytes() {
      Object ref = phones_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        phones_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int EMAILS_FIELD_NUMBER = 5;
    private volatile Object emails_;
    /**
     * <code>string emails = 5;</code>
     * @return The emails.
     */
    public String getEmails() {
      Object ref = emails_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        emails_ = s;
        return s;
      }
    }
    /**
     * <code>string emails = 5;</code>
     * @return The bytes for emails.
     */
    public com.google.protobuf.ByteString
        getEmailsBytes() {
      Object ref = emails_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        emails_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int FACEBOOK_FIELD_NUMBER = 6;
    private volatile Object facebook_;
    /**
     * <code>string Facebook = 6;</code>
     * @return The facebook.
     */
    public String getFacebook() {
      Object ref = facebook_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        facebook_ = s;
        return s;
      }
    }
    /**
     * <code>string Facebook = 6;</code>
     * @return The bytes for facebook.
     */
    public com.google.protobuf.ByteString
        getFacebookBytes() {
      Object ref = facebook_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        facebook_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int TWITTER_FIELD_NUMBER = 7;
    private volatile Object twitter_;
    /**
     * <code>string Twitter = 7;</code>
     * @return The twitter.
     */
    public String getTwitter() {
      Object ref = twitter_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        twitter_ = s;
        return s;
      }
    }
    /**
     * <code>string Twitter = 7;</code>
     * @return The bytes for twitter.
     */
    public com.google.protobuf.ByteString
        getTwitterBytes() {
      Object ref = twitter_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        twitter_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int LINKEDIN_FIELD_NUMBER = 8;
    private volatile Object linkedIn_;
    /**
     * <code>string LinkedIn = 8;</code>
     * @return The linkedIn.
     */
    public String getLinkedIn() {
      Object ref = linkedIn_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        linkedIn_ = s;
        return s;
      }
    }
    /**
     * <code>string LinkedIn = 8;</code>
     * @return The bytes for linkedIn.
     */
    public com.google.protobuf.ByteString
        getLinkedInBytes() {
      Object ref = linkedIn_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        linkedIn_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int INSTAGRAM_FIELD_NUMBER = 9;
    private volatile Object instagram_;
    /**
     * <code>string Instagram = 9;</code>
     * @return The instagram.
     */
    public String getInstagram() {
      Object ref = instagram_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        instagram_ = s;
        return s;
      }
    }
    /**
     * <code>string Instagram = 9;</code>
     * @return The bytes for instagram.
     */
    public com.google.protobuf.ByteString
        getInstagramBytes() {
      Object ref = instagram_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        instagram_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int YOUTUBE_FIELD_NUMBER = 10;
    private volatile Object youtube_;
    /**
     * <code>string Youtube = 10;</code>
     * @return The youtube.
     */
    public String getYoutube() {
      Object ref = youtube_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        youtube_ = s;
        return s;
      }
    }
    /**
     * <code>string Youtube = 10;</code>
     * @return The bytes for youtube.
     */
    public com.google.protobuf.ByteString
        getYoutubeBytes() {
      Object ref = youtube_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        youtube_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int FAX_FIELD_NUMBER = 11;
    private volatile Object fax_;
    /**
     * <code>string Fax = 11;</code>
     * @return The fax.
     */
    public String getFax() {
      Object ref = fax_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        fax_ = s;
        return s;
      }
    }
    /**
     * <code>string Fax = 11;</code>
     * @return The bytes for fax.
     */
    public com.google.protobuf.ByteString
        getFaxBytes() {
      Object ref = fax_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        fax_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ENTITYTYPE_FIELD_NUMBER = 12;
    private volatile Object entityType_;
    /**
     * <code>string entityType = 12;</code>
     * @return The entityType.
     */
    public String getEntityType() {
      Object ref = entityType_;
      if (ref instanceof String) {
        return (String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        String s = bs.toStringUtf8();
        entityType_ = s;
        return s;
      }
    }
    /**
     * <code>string entityType = 12;</code>
     * @return The bytes for entityType.
     */
    public com.google.protobuf.ByteString
        getEntityTypeBytes() {
      Object ref = entityType_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (String) ref);
        entityType_ = 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 (!getIdBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_);
      }
      if (!getEntityIdBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, entityId_);
      }
      if (!getAddressesBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, addresses_);
      }
      if (!getPhonesBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, phones_);
      }
      if (!getEmailsBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, emails_);
      }
      if (!getFacebookBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, facebook_);
      }
      if (!getTwitterBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 7, twitter_);
      }
      if (!getLinkedInBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 8, linkedIn_);
      }
      if (!getInstagramBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 9, instagram_);
      }
      if (!getYoutubeBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 10, youtube_);
      }
      if (!getFaxBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 11, fax_);
      }
      if (!getEntityTypeBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 12, entityType_);
      }
      unknownFields.writeTo(output);
    }

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

      size = 0;
      if (!getIdBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_);
      }
      if (!getEntityIdBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, entityId_);
      }
      if (!getAddressesBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, addresses_);
      }
      if (!getPhonesBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, phones_);
      }
      if (!getEmailsBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, emails_);
      }
      if (!getFacebookBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, facebook_);
      }
      if (!getTwitterBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, twitter_);
      }
      if (!getLinkedInBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, linkedIn_);
      }
      if (!getInstagramBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, instagram_);
      }
      if (!getYoutubeBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, youtube_);
      }
      if (!getFaxBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(11, fax_);
      }
      if (!getEntityTypeBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(12, entityType_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

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

      if (!getId()
          .equals(other.getId())) return false;
      if (!getEntityId()
          .equals(other.getEntityId())) return false;
      if (!getAddresses()
          .equals(other.getAddresses())) return false;
      if (!getPhones()
          .equals(other.getPhones())) return false;
      if (!getEmails()
          .equals(other.getEmails())) return false;
      if (!getFacebook()
          .equals(other.getFacebook())) return false;
      if (!getTwitter()
          .equals(other.getTwitter())) return false;
      if (!getLinkedIn()
          .equals(other.getLinkedIn())) return false;
      if (!getInstagram()
          .equals(other.getInstagram())) return false;
      if (!getYoutube()
          .equals(other.getYoutube())) return false;
      if (!getFax()
          .equals(other.getFax())) return false;
      if (!getEntityType()
          .equals(other.getEntityType())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + ID_FIELD_NUMBER;
      hash = (53 * hash) + getId().hashCode();
      hash = (37 * hash) + ENTITYID_FIELD_NUMBER;
      hash = (53 * hash) + getEntityId().hashCode();
      hash = (37 * hash) + ADDRESSES_FIELD_NUMBER;
      hash = (53 * hash) + getAddresses().hashCode();
      hash = (37 * hash) + PHONES_FIELD_NUMBER;
      hash = (53 * hash) + getPhones().hashCode();
      hash = (37 * hash) + EMAILS_FIELD_NUMBER;
      hash = (53 * hash) + getEmails().hashCode();
      hash = (37 * hash) + FACEBOOK_FIELD_NUMBER;
      hash = (53 * hash) + getFacebook().hashCode();
      hash = (37 * hash) + TWITTER_FIELD_NUMBER;
      hash = (53 * hash) + getTwitter().hashCode();
      hash = (37 * hash) + LINKEDIN_FIELD_NUMBER;
      hash = (53 * hash) + getLinkedIn().hashCode();
      hash = (37 * hash) + INSTAGRAM_FIELD_NUMBER;
      hash = (53 * hash) + getInstagram().hashCode();
      hash = (37 * hash) + YOUTUBE_FIELD_NUMBER;
      hash = (53 * hash) + getYoutube().hashCode();
      hash = (37 * hash) + FAX_FIELD_NUMBER;
      hash = (53 * hash) + getFax().hashCode();
      hash = (37 * hash) + ENTITYTYPE_FIELD_NUMBER;
      hash = (53 * hash) + getEntityType().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static ContactInfo parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ContactInfo parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ContactInfo parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ContactInfo parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ContactInfo parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ContactInfo parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ContactInfo parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ContactInfo 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 ContactInfo parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static ContactInfo 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 ContactInfo parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ContactInfo 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(ContactInfo 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 ContactInfo}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ContactInfo)
        ContactInfoOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return Agency.internal_static_ContactInfo_descriptor;
      }

      @Override
      protected FieldAccessorTable
          internalGetFieldAccessorTable() {
        return Agency.internal_static_ContactInfo_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                ContactInfo.class, Builder.class);
      }

      // Construct using Agency.ContactInfo.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();
        id_ = "";

        entityId_ = "";

        addresses_ = "";

        phones_ = "";

        emails_ = "";

        facebook_ = "";

        twitter_ = "";

        linkedIn_ = "";

        instagram_ = "";

        youtube_ = "";

        fax_ = "";

        entityType_ = "";

        return this;
      }

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

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

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

      @Override
      public ContactInfo buildPartial() {
        ContactInfo result = new ContactInfo(this);
        result.id_ = id_;
        result.entityId_ = entityId_;
        result.addresses_ = addresses_;
        result.phones_ = phones_;
        result.emails_ = emails_;
        result.facebook_ = facebook_;
        result.twitter_ = twitter_;
        result.linkedIn_ = linkedIn_;
        result.instagram_ = instagram_;
        result.youtube_ = youtube_;
        result.fax_ = fax_;
        result.entityType_ = entityType_;
        onBuilt();
        return result;
      }

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

      public Builder mergeFrom(ContactInfo other) {
        if (other == ContactInfo.getDefaultInstance()) return this;
        if (!other.getId().isEmpty()) {
          id_ = other.id_;
          onChanged();
        }
        if (!other.getEntityId().isEmpty()) {
          entityId_ = other.entityId_;
          onChanged();
        }
        if (!other.getAddresses().isEmpty()) {
          addresses_ = other.addresses_;
          onChanged();
        }
        if (!other.getPhones().isEmpty()) {
          phones_ = other.phones_;
          onChanged();
        }
        if (!other.getEmails().isEmpty()) {
          emails_ = other.emails_;
          onChanged();
        }
        if (!other.getFacebook().isEmpty()) {
          facebook_ = other.facebook_;
          onChanged();
        }
        if (!other.getTwitter().isEmpty()) {
          twitter_ = other.twitter_;
          onChanged();
        }
        if (!other.getLinkedIn().isEmpty()) {
          linkedIn_ = other.linkedIn_;
          onChanged();
        }
        if (!other.getInstagram().isEmpty()) {
          instagram_ = other.instagram_;
          onChanged();
        }
        if (!other.getYoutube().isEmpty()) {
          youtube_ = other.youtube_;
          onChanged();
        }
        if (!other.getFax().isEmpty()) {
          fax_ = other.fax_;
          onChanged();
        }
        if (!other.getEntityType().isEmpty()) {
          entityType_ = other.entityType_;
          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 {
        ContactInfo parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (ContactInfo) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private Object id_ = "";
      /**
       * <pre>
       *ID
       * </pre>
       *
       * <code>string id = 1;</code>
       * @return The id.
       */
      public String getId() {
        Object ref = id_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          id_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <pre>
       *ID
       * </pre>
       *
       * <code>string id = 1;</code>
       * @return The bytes for id.
       */
      public com.google.protobuf.ByteString
          getIdBytes() {
        Object ref = id_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          id_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       *ID
       * </pre>
       *
       * <code>string id = 1;</code>
       * @param value The id to set.
       * @return This builder for chaining.
       */
      public Builder setId(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        id_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       *ID
       * </pre>
       *
       * <code>string id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearId() {
        
        id_ = getDefaultInstance().getId();
        onChanged();
        return this;
      }
      /**
       * <pre>
       *ID
       * </pre>
       *
       * <code>string id = 1;</code>
       * @param value The bytes for id to set.
       * @return This builder for chaining.
       */
      public Builder setIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        id_ = value;
        onChanged();
        return this;
      }

      private Object entityId_ = "";
      /**
       * <code>string entityId = 2;</code>
       * @return The entityId.
       */
      public String getEntityId() {
        Object ref = entityId_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          entityId_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <code>string entityId = 2;</code>
       * @return The bytes for entityId.
       */
      public com.google.protobuf.ByteString
          getEntityIdBytes() {
        Object ref = entityId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          entityId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string entityId = 2;</code>
       * @param value The entityId to set.
       * @return This builder for chaining.
       */
      public Builder setEntityId(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        entityId_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string entityId = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearEntityId() {
        
        entityId_ = getDefaultInstance().getEntityId();
        onChanged();
        return this;
      }
      /**
       * <code>string entityId = 2;</code>
       * @param value The bytes for entityId to set.
       * @return This builder for chaining.
       */
      public Builder setEntityIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        entityId_ = value;
        onChanged();
        return this;
      }

      private Object addresses_ = "";
      /**
       * <code>string addresses = 3;</code>
       * @return The addresses.
       */
      public String getAddresses() {
        Object ref = addresses_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          addresses_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <code>string addresses = 3;</code>
       * @return The bytes for addresses.
       */
      public com.google.protobuf.ByteString
          getAddressesBytes() {
        Object ref = addresses_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          addresses_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string addresses = 3;</code>
       * @param value The addresses to set.
       * @return This builder for chaining.
       */
      public Builder setAddresses(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        addresses_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string addresses = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearAddresses() {
        
        addresses_ = getDefaultInstance().getAddresses();
        onChanged();
        return this;
      }
      /**
       * <code>string addresses = 3;</code>
       * @param value The bytes for addresses to set.
       * @return This builder for chaining.
       */
      public Builder setAddressesBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        addresses_ = value;
        onChanged();
        return this;
      }

      private Object phones_ = "";
      /**
       * <code>string phones = 4;</code>
       * @return The phones.
       */
      public String getPhones() {
        Object ref = phones_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          phones_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <code>string phones = 4;</code>
       * @return The bytes for phones.
       */
      public com.google.protobuf.ByteString
          getPhonesBytes() {
        Object ref = phones_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          phones_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string phones = 4;</code>
       * @param value The phones to set.
       * @return This builder for chaining.
       */
      public Builder setPhones(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        phones_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string phones = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearPhones() {
        
        phones_ = getDefaultInstance().getPhones();
        onChanged();
        return this;
      }
      /**
       * <code>string phones = 4;</code>
       * @param value The bytes for phones to set.
       * @return This builder for chaining.
       */
      public Builder setPhonesBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        phones_ = value;
        onChanged();
        return this;
      }

      private Object emails_ = "";
      /**
       * <code>string emails = 5;</code>
       * @return The emails.
       */
      public String getEmails() {
        Object ref = emails_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          emails_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <code>string emails = 5;</code>
       * @return The bytes for emails.
       */
      public com.google.protobuf.ByteString
          getEmailsBytes() {
        Object ref = emails_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          emails_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string emails = 5;</code>
       * @param value The emails to set.
       * @return This builder for chaining.
       */
      public Builder setEmails(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        emails_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string emails = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearEmails() {
        
        emails_ = getDefaultInstance().getEmails();
        onChanged();
        return this;
      }
      /**
       * <code>string emails = 5;</code>
       * @param value The bytes for emails to set.
       * @return This builder for chaining.
       */
      public Builder setEmailsBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        emails_ = value;
        onChanged();
        return this;
      }

      private Object facebook_ = "";
      /**
       * <code>string Facebook = 6;</code>
       * @return The facebook.
       */
      public String getFacebook() {
        Object ref = facebook_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          facebook_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <code>string Facebook = 6;</code>
       * @return The bytes for facebook.
       */
      public com.google.protobuf.ByteString
          getFacebookBytes() {
        Object ref = facebook_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          facebook_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string Facebook = 6;</code>
       * @param value The facebook to set.
       * @return This builder for chaining.
       */
      public Builder setFacebook(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        facebook_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string Facebook = 6;</code>
       * @return This builder for chaining.
       */
      public Builder clearFacebook() {
        
        facebook_ = getDefaultInstance().getFacebook();
        onChanged();
        return this;
      }
      /**
       * <code>string Facebook = 6;</code>
       * @param value The bytes for facebook to set.
       * @return This builder for chaining.
       */
      public Builder setFacebookBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        facebook_ = value;
        onChanged();
        return this;
      }

      private Object twitter_ = "";
      /**
       * <code>string Twitter = 7;</code>
       * @return The twitter.
       */
      public String getTwitter() {
        Object ref = twitter_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          twitter_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <code>string Twitter = 7;</code>
       * @return The bytes for twitter.
       */
      public com.google.protobuf.ByteString
          getTwitterBytes() {
        Object ref = twitter_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          twitter_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string Twitter = 7;</code>
       * @param value The twitter to set.
       * @return This builder for chaining.
       */
      public Builder setTwitter(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        twitter_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string Twitter = 7;</code>
       * @return This builder for chaining.
       */
      public Builder clearTwitter() {
        
        twitter_ = getDefaultInstance().getTwitter();
        onChanged();
        return this;
      }
      /**
       * <code>string Twitter = 7;</code>
       * @param value The bytes for twitter to set.
       * @return This builder for chaining.
       */
      public Builder setTwitterBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        twitter_ = value;
        onChanged();
        return this;
      }

      private Object linkedIn_ = "";
      /**
       * <code>string LinkedIn = 8;</code>
       * @return The linkedIn.
       */
      public String getLinkedIn() {
        Object ref = linkedIn_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          linkedIn_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <code>string LinkedIn = 8;</code>
       * @return The bytes for linkedIn.
       */
      public com.google.protobuf.ByteString
          getLinkedInBytes() {
        Object ref = linkedIn_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          linkedIn_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string LinkedIn = 8;</code>
       * @param value The linkedIn to set.
       * @return This builder for chaining.
       */
      public Builder setLinkedIn(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        linkedIn_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string LinkedIn = 8;</code>
       * @return This builder for chaining.
       */
      public Builder clearLinkedIn() {
        
        linkedIn_ = getDefaultInstance().getLinkedIn();
        onChanged();
        return this;
      }
      /**
       * <code>string LinkedIn = 8;</code>
       * @param value The bytes for linkedIn to set.
       * @return This builder for chaining.
       */
      public Builder setLinkedInBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        linkedIn_ = value;
        onChanged();
        return this;
      }

      private Object instagram_ = "";
      /**
       * <code>string Instagram = 9;</code>
       * @return The instagram.
       */
      public String getInstagram() {
        Object ref = instagram_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          instagram_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <code>string Instagram = 9;</code>
       * @return The bytes for instagram.
       */
      public com.google.protobuf.ByteString
          getInstagramBytes() {
        Object ref = instagram_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          instagram_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string Instagram = 9;</code>
       * @param value The instagram to set.
       * @return This builder for chaining.
       */
      public Builder setInstagram(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        instagram_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string Instagram = 9;</code>
       * @return This builder for chaining.
       */
      public Builder clearInstagram() {
        
        instagram_ = getDefaultInstance().getInstagram();
        onChanged();
        return this;
      }
      /**
       * <code>string Instagram = 9;</code>
       * @param value The bytes for instagram to set.
       * @return This builder for chaining.
       */
      public Builder setInstagramBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        instagram_ = value;
        onChanged();
        return this;
      }

      private Object youtube_ = "";
      /**
       * <code>string Youtube = 10;</code>
       * @return The youtube.
       */
      public String getYoutube() {
        Object ref = youtube_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          youtube_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <code>string Youtube = 10;</code>
       * @return The bytes for youtube.
       */
      public com.google.protobuf.ByteString
          getYoutubeBytes() {
        Object ref = youtube_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          youtube_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string Youtube = 10;</code>
       * @param value The youtube to set.
       * @return This builder for chaining.
       */
      public Builder setYoutube(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        youtube_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string Youtube = 10;</code>
       * @return This builder for chaining.
       */
      public Builder clearYoutube() {
        
        youtube_ = getDefaultInstance().getYoutube();
        onChanged();
        return this;
      }
      /**
       * <code>string Youtube = 10;</code>
       * @param value The bytes for youtube to set.
       * @return This builder for chaining.
       */
      public Builder setYoutubeBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        youtube_ = value;
        onChanged();
        return this;
      }

      private Object fax_ = "";
      /**
       * <code>string Fax = 11;</code>
       * @return The fax.
       */
      public String getFax() {
        Object ref = fax_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          fax_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <code>string Fax = 11;</code>
       * @return The bytes for fax.
       */
      public com.google.protobuf.ByteString
          getFaxBytes() {
        Object ref = fax_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          fax_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string Fax = 11;</code>
       * @param value The fax to set.
       * @return This builder for chaining.
       */
      public Builder setFax(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        fax_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string Fax = 11;</code>
       * @return This builder for chaining.
       */
      public Builder clearFax() {
        
        fax_ = getDefaultInstance().getFax();
        onChanged();
        return this;
      }
      /**
       * <code>string Fax = 11;</code>
       * @param value The bytes for fax to set.
       * @return This builder for chaining.
       */
      public Builder setFaxBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        fax_ = value;
        onChanged();
        return this;
      }

      private Object entityType_ = "";
      /**
       * <code>string entityType = 12;</code>
       * @return The entityType.
       */
      public String getEntityType() {
        Object ref = entityType_;
        if (!(ref instanceof String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          String s = bs.toStringUtf8();
          entityType_ = s;
          return s;
        } else {
          return (String) ref;
        }
      }
      /**
       * <code>string entityType = 12;</code>
       * @return The bytes for entityType.
       */
      public com.google.protobuf.ByteString
          getEntityTypeBytes() {
        Object ref = entityType_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (String) ref);
          entityType_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string entityType = 12;</code>
       * @param value The entityType to set.
       * @return This builder for chaining.
       */
      public Builder setEntityType(
          String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        entityType_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string entityType = 12;</code>
       * @return This builder for chaining.
       */
      public Builder clearEntityType() {
        
        entityType_ = getDefaultInstance().getEntityType();
        onChanged();
        return this;
      }
      /**
       * <code>string entityType = 12;</code>
       * @param value The bytes for entityType to set.
       * @return This builder for chaining.
       */
      public Builder setEntityTypeBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        entityType_ = value;
        onChanged();
        return this;
      }
      @Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

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


      // @@protoc_insertion_point(builder_scope:ContactInfo)
    }

    // @@protoc_insertion_point(class_scope:ContactInfo)
    private static final ContactInfo DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new ContactInfo();
    }

    public static ContactInfo getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

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

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

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

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

  }

  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_AgencyInfoSets_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_AgencyInfoSets_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_AgencyInfo_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_AgencyInfo_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ContactInfo_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ContactInfo_fieldAccessorTable;

  public static com.google.protobuf.Descriptors.FileDescriptor
      getDescriptor() {
    return descriptor;
  }
  private static  com.google.protobuf.Descriptors.FileDescriptor
      descriptor;
  static {
    String[] descriptorData = {
      "\n\014Agency.proto\"T\n\016AgencyInfoSets\022\037\n\nAgen" +
      "cyInfo\030\001 \003(\0132\013.AgencyInfo\022!\n\013ContactInfo" +
      "\030\002 \003(\0132\014.ContactInfo\"\375\001\n\nAgencyInfo\022\n\n\002i" +
      "d\030\001 \001(\t\022\022\n\noriginName\030\002 \001(\t\022\017\n\007acronym\030\003" +
      " \001(\t\022\014\n\004name\030\004 \001(\t\022\024\n\014introduction\030\005 \001(\t" +
      "\022\023\n\013officialUrl\030\006 \001(\t\022\017\n\007country\030\007 \001(\t\022\014" +
      "\n\004code\030\010 \001(\t\022\024\n\014mainPersonId\030\t \001(\t\022\014\n\004lo" +
      "go\030\n \001(\t\022\013\n\003tag\030\013 \001(\t\022\020\n\010loadTime\030\014 \001(\t\022" +
      "\022\n\nupdateTime\030\r \001(\t\022\017\n\007remarks\030\016 \001(\t\"\330\001\n" +
      "\013ContactInfo\022\n\n\002id\030\001 \001(\t\022\020\n\010entityId\030\002 \001" +
      "(\t\022\021\n\taddresses\030\003 \001(\t\022\016\n\006phones\030\004 \001(\t\022\016\n" +
      "\006emails\030\005 \001(\t\022\020\n\010Facebook\030\006 \001(\t\022\017\n\007Twitt" +
      "er\030\007 \001(\t\022\020\n\010LinkedIn\030\010 \001(\t\022\021\n\tInstagram\030" +
      "\t \001(\t\022\017\n\007Youtube\030\n \001(\t\022\013\n\003Fax\030\013 \001(\t\022\022\n\ne" +
      "ntityType\030\014 \001(\tb\006proto3"
    };
    descriptor = com.google.protobuf.Descriptors.FileDescriptor
      .internalBuildGeneratedFileFrom(descriptorData,
        new com.google.protobuf.Descriptors.FileDescriptor[] {
        });
    internal_static_AgencyInfoSets_descriptor =
      getDescriptor().getMessageTypes().get(0);
    internal_static_AgencyInfoSets_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_AgencyInfoSets_descriptor,
        new String[] { "AgencyInfo", "ContactInfo", });
    internal_static_AgencyInfo_descriptor =
      getDescriptor().getMessageTypes().get(1);
    internal_static_AgencyInfo_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_AgencyInfo_descriptor,
        new String[] { "Id", "OriginName", "Acronym", "Name", "Introduction", "OfficialUrl", "Country", "Code", "MainPersonId", "Logo", "Tag", "LoadTime", "UpdateTime", "Remarks", });
    internal_static_ContactInfo_descriptor =
      getDescriptor().getMessageTypes().get(2);
    internal_static_ContactInfo_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ContactInfo_descriptor,
        new String[] { "Id", "EntityId", "Addresses", "Phones", "Emails", "Facebook", "Twitter", "LinkedIn", "Instagram", "Youtube", "Fax", "EntityType", });
  }

  // @@protoc_insertion_point(outer_class_scope)
}
