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

package ru.keyapis.vc.v1;

public final class KeyapisVcV1Proto {
  private KeyapisVcV1Proto() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistryLite registry) {
  }
  public interface PostCompanyImpersonationRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:keyapis.vc.v1.PostCompanyImpersonationRequest)
      com.google.protobuf.MessageLiteOrBuilder {

    /**
     * <pre>
     * Идентификатор компании.
     * # Диапазон: 1..2147483647
     * </pre>
     *
     * <code>int32 company_id = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return The companyId.
     */
    int getCompanyId();
  }
  /**
   * <pre>
   * Запрос генерации имперсонационной ссылки для компании
   * </pre>
   *
   * Protobuf type {@code keyapis.vc.v1.PostCompanyImpersonationRequest}
   */
  public  static final class PostCompanyImpersonationRequest extends
      com.google.protobuf.GeneratedMessageLite<
          PostCompanyImpersonationRequest, PostCompanyImpersonationRequest.Builder> implements
      // @@protoc_insertion_point(message_implements:keyapis.vc.v1.PostCompanyImpersonationRequest)
      PostCompanyImpersonationRequestOrBuilder {
    private PostCompanyImpersonationRequest() {
    }
    public static final int COMPANY_ID_FIELD_NUMBER = 1;
    private int companyId_;
    /**
     * <pre>
     * Идентификатор компании.
     * # Диапазон: 1..2147483647
     * </pre>
     *
     * <code>int32 company_id = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return The companyId.
     */
    @java.lang.Override
    public int getCompanyId() {
      return companyId_;
    }
    /**
     * <pre>
     * Идентификатор компании.
     * # Диапазон: 1..2147483647
     * </pre>
     *
     * <code>int32 company_id = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     * @param value The companyId to set.
     */
    private void setCompanyId(int value) {
      
      companyId_ = value;
    }
    /**
     * <pre>
     * Идентификатор компании.
     * # Диапазон: 1..2147483647
     * </pre>
     *
     * <code>int32 company_id = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    private void clearCompanyId() {

      companyId_ = 0;
    }

    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input);
    }

    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static Builder newBuilder() {
      return (Builder) DEFAULT_INSTANCE.createBuilder();
    }
    public static Builder newBuilder(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest prototype) {
      return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
    }

    /**
     * <pre>
     * Запрос генерации имперсонационной ссылки для компании
     * </pre>
     *
     * Protobuf type {@code keyapis.vc.v1.PostCompanyImpersonationRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageLite.Builder<
          ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest, Builder> implements
        // @@protoc_insertion_point(builder_implements:keyapis.vc.v1.PostCompanyImpersonationRequest)
        ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequestOrBuilder {
      // Construct using ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest.newBuilder()
      private Builder() {
        super(DEFAULT_INSTANCE);
      }


      /**
       * <pre>
       * Идентификатор компании.
       * # Диапазон: 1..2147483647
       * </pre>
       *
       * <code>int32 company_id = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       * @return The companyId.
       */
      @java.lang.Override
      public int getCompanyId() {
        return instance.getCompanyId();
      }
      /**
       * <pre>
       * Идентификатор компании.
       * # Диапазон: 1..2147483647
       * </pre>
       *
       * <code>int32 company_id = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       * @param value The companyId to set.
       * @return This builder for chaining.
       */
      public Builder setCompanyId(int value) {
        copyOnWrite();
        instance.setCompanyId(value);
        return this;
      }
      /**
       * <pre>
       * Идентификатор компании.
       * # Диапазон: 1..2147483647
       * </pre>
       *
       * <code>int32 company_id = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       * @return This builder for chaining.
       */
      public Builder clearCompanyId() {
        copyOnWrite();
        instance.clearCompanyId();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:keyapis.vc.v1.PostCompanyImpersonationRequest)
    }
    @java.lang.Override
    @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
    protected final java.lang.Object dynamicMethod(
        com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
        java.lang.Object arg0, java.lang.Object arg1) {
      switch (method) {
        case NEW_MUTABLE_INSTANCE: {
          return new ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest();
        }
        case NEW_BUILDER: {
          return new Builder();
        }
        case BUILD_MESSAGE_INFO: {
            java.lang.Object[] objects = new java.lang.Object[] {
              "companyId_",
            };
            java.lang.String info =
                "\u0000\u0001\u0000\u0000\u0001\u0001\u0001\u0000\u0000\u0000\u0001\u0004";
            return newMessageInfo(DEFAULT_INSTANCE, info, objects);
        }
        // fall through
        case GET_DEFAULT_INSTANCE: {
          return DEFAULT_INSTANCE;
        }
        case GET_PARSER: {
          com.google.protobuf.Parser<ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest> parser = PARSER;
          if (parser == null) {
            synchronized (ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest.class) {
              parser = PARSER;
              if (parser == null) {
                parser =
                    new DefaultInstanceBasedParser<ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest>(
                        DEFAULT_INSTANCE);
                PARSER = parser;
              }
            }
          }
          return parser;
      }
      case GET_MEMOIZED_IS_INITIALIZED: {
        return (byte) 1;
      }
      case SET_MEMOIZED_IS_INITIALIZED: {
        return null;
      }
      }
      throw new UnsupportedOperationException();
    }


    // @@protoc_insertion_point(class_scope:keyapis.vc.v1.PostCompanyImpersonationRequest)
    private static final ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest DEFAULT_INSTANCE;
    static {
      PostCompanyImpersonationRequest defaultInstance = new PostCompanyImpersonationRequest();
      // New instances are implicitly immutable so no need to make
      // immutable.
      DEFAULT_INSTANCE = defaultInstance;
      com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
        PostCompanyImpersonationRequest.class, defaultInstance);
    }

    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static volatile com.google.protobuf.Parser<PostCompanyImpersonationRequest> PARSER;

    public static com.google.protobuf.Parser<PostCompanyImpersonationRequest> parser() {
      return DEFAULT_INSTANCE.getParserForType();
    }
  }

  public interface PostCompanyImpersonationResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:keyapis.vc.v1.PostCompanyImpersonationResponse)
      com.google.protobuf.MessageLiteOrBuilder {

    /**
     * <pre>
     * Имперсонационная ссылка
     * </pre>
     *
     * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation data = 1;</code>
     * @return Whether the data field is set.
     */
    boolean hasData();
    /**
     * <pre>
     * Имперсонационная ссылка
     * </pre>
     *
     * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation data = 1;</code>
     * @return The data.
     */
    ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation getData();

    /**
     * <pre>
     * Ошибка
     * </pre>
     *
     * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error error = 2;</code>
     * @return Whether the error field is set.
     */
    boolean hasError();
    /**
     * <pre>
     * Ошибка
     * </pre>
     *
     * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error error = 2;</code>
     * @return The error.
     */
    ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error getError();

    public ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.TypeCase getTypeCase();
  }
  /**
   * <pre>
   * Ответ на запрос генерации имперсонационной ссылки для компании
   * </pre>
   *
   * Protobuf type {@code keyapis.vc.v1.PostCompanyImpersonationResponse}
   */
  public  static final class PostCompanyImpersonationResponse extends
      com.google.protobuf.GeneratedMessageLite<
          PostCompanyImpersonationResponse, PostCompanyImpersonationResponse.Builder> implements
      // @@protoc_insertion_point(message_implements:keyapis.vc.v1.PostCompanyImpersonationResponse)
      PostCompanyImpersonationResponseOrBuilder {
    private PostCompanyImpersonationResponse() {
    }
    public interface ErrorOrBuilder extends
        // @@protoc_insertion_point(interface_extends:keyapis.vc.v1.PostCompanyImpersonationResponse.Error)
        com.google.protobuf.MessageLiteOrBuilder {

      /**
       * <pre>
       * Ошибка валидации
       * </pre>
       *
       * <code>.keyapis.vc.v1.ValidationError validation = 1;</code>
       * @return Whether the validation field is set.
       */
      boolean hasValidation();
      /**
       * <pre>
       * Ошибка валидации
       * </pre>
       *
       * <code>.keyapis.vc.v1.ValidationError validation = 1;</code>
       * @return The validation.
       */
      ru.keyapis.vc.v1.KeyapisVcV1Proto.ValidationError getValidation();

      /**
       * <pre>
       * Владелец компании не найден
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound owner_not_found = 2;</code>
       * @return Whether the ownerNotFound field is set.
       */
      boolean hasOwnerNotFound();
      /**
       * <pre>
       * Владелец компании не найден
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound owner_not_found = 2;</code>
       * @return The ownerNotFound.
       */
      ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound getOwnerNotFound();

      /**
       * <pre>
       * Ошибка взаимодействия с сервисом User
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError user_service_error = 3;</code>
       * @return Whether the userServiceError field is set.
       */
      boolean hasUserServiceError();
      /**
       * <pre>
       * Ошибка взаимодействия с сервисом User
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError user_service_error = 3;</code>
       * @return The userServiceError.
       */
      ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError getUserServiceError();

      /**
       * <pre>
       * Ошибка взаимодействия с сервисом vcfront
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError vcfront_service_error = 4;</code>
       * @return Whether the vcfrontServiceError field is set.
       */
      boolean hasVcfrontServiceError();
      /**
       * <pre>
       * Ошибка взаимодействия с сервисом vcfront
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError vcfront_service_error = 4;</code>
       * @return The vcfrontServiceError.
       */
      ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError getVcfrontServiceError();

      public ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.ReasonCase getReasonCase();
    }
    /**
     * <pre>
     * Ошибка генерации имперсонационной ссылки для компании
     * </pre>
     *
     * Protobuf type {@code keyapis.vc.v1.PostCompanyImpersonationResponse.Error}
     */
    public  static final class Error extends
        com.google.protobuf.GeneratedMessageLite<
            Error, Error.Builder> implements
        // @@protoc_insertion_point(message_implements:keyapis.vc.v1.PostCompanyImpersonationResponse.Error)
        ErrorOrBuilder {
      private Error() {
      }
      public interface OwnerNotFoundOrBuilder extends
          // @@protoc_insertion_point(interface_extends:keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound)
          com.google.protobuf.MessageLiteOrBuilder {
      }
      /**
       * <pre>
       * Владелец компании не найден
       * </pre>
       *
       * Protobuf type {@code keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound}
       */
      public  static final class OwnerNotFound extends
          com.google.protobuf.GeneratedMessageLite<
              OwnerNotFound, OwnerNotFound.Builder> implements
          // @@protoc_insertion_point(message_implements:keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound)
          OwnerNotFoundOrBuilder {
        private OwnerNotFound() {
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound parseFrom(
            java.nio.ByteBuffer data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound parseFrom(
            java.nio.ByteBuffer data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data, extensionRegistry);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data, extensionRegistry);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data, extensionRegistry);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input, extensionRegistry);
        }

        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return parseDelimitedFrom(DEFAULT_INSTANCE, input);
        }

        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input, extensionRegistry);
        }

        public static Builder newBuilder() {
          return (Builder) DEFAULT_INSTANCE.createBuilder();
        }
        public static Builder newBuilder(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound prototype) {
          return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
        }

        /**
         * <pre>
         * Владелец компании не найден
         * </pre>
         *
         * Protobuf type {@code keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessageLite.Builder<
              ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound, Builder> implements
            // @@protoc_insertion_point(builder_implements:keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound)
            ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFoundOrBuilder {
          // Construct using ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound.newBuilder()
          private Builder() {
            super(DEFAULT_INSTANCE);
          }


          // @@protoc_insertion_point(builder_scope:keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound)
        }
        @java.lang.Override
        @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
        protected final java.lang.Object dynamicMethod(
            com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
            java.lang.Object arg0, java.lang.Object arg1) {
          switch (method) {
            case NEW_MUTABLE_INSTANCE: {
              return new ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound();
            }
            case NEW_BUILDER: {
              return new Builder();
            }
            case BUILD_MESSAGE_INFO: {
                java.lang.Object[] objects = null;java.lang.String info =
                    "\u0000\u0000";
                return newMessageInfo(DEFAULT_INSTANCE, info, objects);
            }
            // fall through
            case GET_DEFAULT_INSTANCE: {
              return DEFAULT_INSTANCE;
            }
            case GET_PARSER: {
              com.google.protobuf.Parser<ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound> parser = PARSER;
              if (parser == null) {
                synchronized (ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound.class) {
                  parser = PARSER;
                  if (parser == null) {
                    parser =
                        new DefaultInstanceBasedParser<ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound>(
                            DEFAULT_INSTANCE);
                    PARSER = parser;
                  }
                }
              }
              return parser;
          }
          case GET_MEMOIZED_IS_INITIALIZED: {
            return (byte) 1;
          }
          case SET_MEMOIZED_IS_INITIALIZED: {
            return null;
          }
          }
          throw new UnsupportedOperationException();
        }


        // @@protoc_insertion_point(class_scope:keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound)
        private static final ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound DEFAULT_INSTANCE;
        static {
          OwnerNotFound defaultInstance = new OwnerNotFound();
          // New instances are implicitly immutable so no need to make
          // immutable.
          DEFAULT_INSTANCE = defaultInstance;
          com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
            OwnerNotFound.class, defaultInstance);
        }

        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound getDefaultInstance() {
          return DEFAULT_INSTANCE;
        }

        private static volatile com.google.protobuf.Parser<OwnerNotFound> PARSER;

        public static com.google.protobuf.Parser<OwnerNotFound> parser() {
          return DEFAULT_INSTANCE.getParserForType();
        }
      }

      public interface UserServiceErrorOrBuilder extends
          // @@protoc_insertion_point(interface_extends:keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError)
          com.google.protobuf.MessageLiteOrBuilder {
      }
      /**
       * <pre>
       * Ошибка взаимодействия с сервисом User
       * </pre>
       *
       * Protobuf type {@code keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError}
       */
      public  static final class UserServiceError extends
          com.google.protobuf.GeneratedMessageLite<
              UserServiceError, UserServiceError.Builder> implements
          // @@protoc_insertion_point(message_implements:keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError)
          UserServiceErrorOrBuilder {
        private UserServiceError() {
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError parseFrom(
            java.nio.ByteBuffer data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError parseFrom(
            java.nio.ByteBuffer data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data, extensionRegistry);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data, extensionRegistry);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data, extensionRegistry);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input, extensionRegistry);
        }

        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return parseDelimitedFrom(DEFAULT_INSTANCE, input);
        }

        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input, extensionRegistry);
        }

        public static Builder newBuilder() {
          return (Builder) DEFAULT_INSTANCE.createBuilder();
        }
        public static Builder newBuilder(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError prototype) {
          return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
        }

        /**
         * <pre>
         * Ошибка взаимодействия с сервисом User
         * </pre>
         *
         * Protobuf type {@code keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessageLite.Builder<
              ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError, Builder> implements
            // @@protoc_insertion_point(builder_implements:keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError)
            ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceErrorOrBuilder {
          // Construct using ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError.newBuilder()
          private Builder() {
            super(DEFAULT_INSTANCE);
          }


          // @@protoc_insertion_point(builder_scope:keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError)
        }
        @java.lang.Override
        @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
        protected final java.lang.Object dynamicMethod(
            com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
            java.lang.Object arg0, java.lang.Object arg1) {
          switch (method) {
            case NEW_MUTABLE_INSTANCE: {
              return new ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError();
            }
            case NEW_BUILDER: {
              return new Builder();
            }
            case BUILD_MESSAGE_INFO: {
                java.lang.Object[] objects = null;java.lang.String info =
                    "\u0000\u0000";
                return newMessageInfo(DEFAULT_INSTANCE, info, objects);
            }
            // fall through
            case GET_DEFAULT_INSTANCE: {
              return DEFAULT_INSTANCE;
            }
            case GET_PARSER: {
              com.google.protobuf.Parser<ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError> parser = PARSER;
              if (parser == null) {
                synchronized (ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError.class) {
                  parser = PARSER;
                  if (parser == null) {
                    parser =
                        new DefaultInstanceBasedParser<ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError>(
                            DEFAULT_INSTANCE);
                    PARSER = parser;
                  }
                }
              }
              return parser;
          }
          case GET_MEMOIZED_IS_INITIALIZED: {
            return (byte) 1;
          }
          case SET_MEMOIZED_IS_INITIALIZED: {
            return null;
          }
          }
          throw new UnsupportedOperationException();
        }


        // @@protoc_insertion_point(class_scope:keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError)
        private static final ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError DEFAULT_INSTANCE;
        static {
          UserServiceError defaultInstance = new UserServiceError();
          // New instances are implicitly immutable so no need to make
          // immutable.
          DEFAULT_INSTANCE = defaultInstance;
          com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
            UserServiceError.class, defaultInstance);
        }

        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError getDefaultInstance() {
          return DEFAULT_INSTANCE;
        }

        private static volatile com.google.protobuf.Parser<UserServiceError> PARSER;

        public static com.google.protobuf.Parser<UserServiceError> parser() {
          return DEFAULT_INSTANCE.getParserForType();
        }
      }

      public interface VcfrontServiceErrorOrBuilder extends
          // @@protoc_insertion_point(interface_extends:keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError)
          com.google.protobuf.MessageLiteOrBuilder {
      }
      /**
       * <pre>
       * Ошибка взаимодействия с сервисом vcfront
       * </pre>
       *
       * Protobuf type {@code keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError}
       */
      public  static final class VcfrontServiceError extends
          com.google.protobuf.GeneratedMessageLite<
              VcfrontServiceError, VcfrontServiceError.Builder> implements
          // @@protoc_insertion_point(message_implements:keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError)
          VcfrontServiceErrorOrBuilder {
        private VcfrontServiceError() {
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError parseFrom(
            java.nio.ByteBuffer data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError parseFrom(
            java.nio.ByteBuffer data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data, extensionRegistry);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data, extensionRegistry);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data, extensionRegistry);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input, extensionRegistry);
        }

        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return parseDelimitedFrom(DEFAULT_INSTANCE, input);
        }

        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input);
        }
        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input, extensionRegistry);
        }

        public static Builder newBuilder() {
          return (Builder) DEFAULT_INSTANCE.createBuilder();
        }
        public static Builder newBuilder(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError prototype) {
          return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
        }

        /**
         * <pre>
         * Ошибка взаимодействия с сервисом vcfront
         * </pre>
         *
         * Protobuf type {@code keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessageLite.Builder<
              ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError, Builder> implements
            // @@protoc_insertion_point(builder_implements:keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError)
            ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceErrorOrBuilder {
          // Construct using ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError.newBuilder()
          private Builder() {
            super(DEFAULT_INSTANCE);
          }


          // @@protoc_insertion_point(builder_scope:keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError)
        }
        @java.lang.Override
        @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
        protected final java.lang.Object dynamicMethod(
            com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
            java.lang.Object arg0, java.lang.Object arg1) {
          switch (method) {
            case NEW_MUTABLE_INSTANCE: {
              return new ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError();
            }
            case NEW_BUILDER: {
              return new Builder();
            }
            case BUILD_MESSAGE_INFO: {
                java.lang.Object[] objects = null;java.lang.String info =
                    "\u0000\u0000";
                return newMessageInfo(DEFAULT_INSTANCE, info, objects);
            }
            // fall through
            case GET_DEFAULT_INSTANCE: {
              return DEFAULT_INSTANCE;
            }
            case GET_PARSER: {
              com.google.protobuf.Parser<ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError> parser = PARSER;
              if (parser == null) {
                synchronized (ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError.class) {
                  parser = PARSER;
                  if (parser == null) {
                    parser =
                        new DefaultInstanceBasedParser<ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError>(
                            DEFAULT_INSTANCE);
                    PARSER = parser;
                  }
                }
              }
              return parser;
          }
          case GET_MEMOIZED_IS_INITIALIZED: {
            return (byte) 1;
          }
          case SET_MEMOIZED_IS_INITIALIZED: {
            return null;
          }
          }
          throw new UnsupportedOperationException();
        }


        // @@protoc_insertion_point(class_scope:keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError)
        private static final ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError DEFAULT_INSTANCE;
        static {
          VcfrontServiceError defaultInstance = new VcfrontServiceError();
          // New instances are implicitly immutable so no need to make
          // immutable.
          DEFAULT_INSTANCE = defaultInstance;
          com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
            VcfrontServiceError.class, defaultInstance);
        }

        public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError getDefaultInstance() {
          return DEFAULT_INSTANCE;
        }

        private static volatile com.google.protobuf.Parser<VcfrontServiceError> PARSER;

        public static com.google.protobuf.Parser<VcfrontServiceError> parser() {
          return DEFAULT_INSTANCE.getParserForType();
        }
      }

      private int reasonCase_ = 0;
      private java.lang.Object reason_;
      public enum ReasonCase {
        VALIDATION(1),
        OWNER_NOT_FOUND(2),
        USER_SERVICE_ERROR(3),
        VCFRONT_SERVICE_ERROR(4),
        REASON_NOT_SET(0);
        private final int value;
        private ReasonCase(int value) {
          this.value = value;
        }
        /**
         * @deprecated Use {@link #forNumber(int)} instead.
         */
        @java.lang.Deprecated
        public static ReasonCase valueOf(int value) {
          return forNumber(value);
        }

        public static ReasonCase forNumber(int value) {
          switch (value) {
            case 1: return VALIDATION;
            case 2: return OWNER_NOT_FOUND;
            case 3: return USER_SERVICE_ERROR;
            case 4: return VCFRONT_SERVICE_ERROR;
            case 0: return REASON_NOT_SET;
            default: return null;
          }
        }
        public int getNumber() {
          return this.value;
        }
      };

      @java.lang.Override
      public ReasonCase
      getReasonCase() {
        return ReasonCase.forNumber(
            reasonCase_);
      }

      private void clearReason() {
        reasonCase_ = 0;
        reason_ = null;
      }

      public static final int VALIDATION_FIELD_NUMBER = 1;
      /**
       * <pre>
       * Ошибка валидации
       * </pre>
       *
       * <code>.keyapis.vc.v1.ValidationError validation = 1;</code>
       */
      @java.lang.Override
      public boolean hasValidation() {
        return reasonCase_ == 1;
      }
      /**
       * <pre>
       * Ошибка валидации
       * </pre>
       *
       * <code>.keyapis.vc.v1.ValidationError validation = 1;</code>
       */
      @java.lang.Override
      public ru.keyapis.vc.v1.KeyapisVcV1Proto.ValidationError getValidation() {
        if (reasonCase_ == 1) {
           return (ru.keyapis.vc.v1.KeyapisVcV1Proto.ValidationError) reason_;
        }
        return ru.keyapis.vc.v1.KeyapisVcV1Proto.ValidationError.getDefaultInstance();
      }
      /**
       * <pre>
       * Ошибка валидации
       * </pre>
       *
       * <code>.keyapis.vc.v1.ValidationError validation = 1;</code>
       */
      private void setValidation(ru.keyapis.vc.v1.KeyapisVcV1Proto.ValidationError value) {
        value.getClass();
  reason_ = value;
        reasonCase_ = 1;
      }
      /**
       * <pre>
       * Ошибка валидации
       * </pre>
       *
       * <code>.keyapis.vc.v1.ValidationError validation = 1;</code>
       */
      private void mergeValidation(ru.keyapis.vc.v1.KeyapisVcV1Proto.ValidationError value) {
        value.getClass();
  if (reasonCase_ == 1 &&
            reason_ != ru.keyapis.vc.v1.KeyapisVcV1Proto.ValidationError.getDefaultInstance()) {
          reason_ = ru.keyapis.vc.v1.KeyapisVcV1Proto.ValidationError.newBuilder((ru.keyapis.vc.v1.KeyapisVcV1Proto.ValidationError) reason_)
              .mergeFrom(value).buildPartial();
        } else {
          reason_ = value;
        }
        reasonCase_ = 1;
      }
      /**
       * <pre>
       * Ошибка валидации
       * </pre>
       *
       * <code>.keyapis.vc.v1.ValidationError validation = 1;</code>
       */
      private void clearValidation() {
        if (reasonCase_ == 1) {
          reasonCase_ = 0;
          reason_ = null;
        }
      }

      public static final int OWNER_NOT_FOUND_FIELD_NUMBER = 2;
      /**
       * <pre>
       * Владелец компании не найден
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound owner_not_found = 2;</code>
       */
      @java.lang.Override
      public boolean hasOwnerNotFound() {
        return reasonCase_ == 2;
      }
      /**
       * <pre>
       * Владелец компании не найден
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound owner_not_found = 2;</code>
       */
      @java.lang.Override
      public ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound getOwnerNotFound() {
        if (reasonCase_ == 2) {
           return (ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound) reason_;
        }
        return ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound.getDefaultInstance();
      }
      /**
       * <pre>
       * Владелец компании не найден
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound owner_not_found = 2;</code>
       */
      private void setOwnerNotFound(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound value) {
        value.getClass();
  reason_ = value;
        reasonCase_ = 2;
      }
      /**
       * <pre>
       * Владелец компании не найден
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound owner_not_found = 2;</code>
       */
      private void mergeOwnerNotFound(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound value) {
        value.getClass();
  if (reasonCase_ == 2 &&
            reason_ != ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound.getDefaultInstance()) {
          reason_ = ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound.newBuilder((ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound) reason_)
              .mergeFrom(value).buildPartial();
        } else {
          reason_ = value;
        }
        reasonCase_ = 2;
      }
      /**
       * <pre>
       * Владелец компании не найден
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound owner_not_found = 2;</code>
       */
      private void clearOwnerNotFound() {
        if (reasonCase_ == 2) {
          reasonCase_ = 0;
          reason_ = null;
        }
      }

      public static final int USER_SERVICE_ERROR_FIELD_NUMBER = 3;
      /**
       * <pre>
       * Ошибка взаимодействия с сервисом User
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError user_service_error = 3;</code>
       */
      @java.lang.Override
      public boolean hasUserServiceError() {
        return reasonCase_ == 3;
      }
      /**
       * <pre>
       * Ошибка взаимодействия с сервисом User
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError user_service_error = 3;</code>
       */
      @java.lang.Override
      public ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError getUserServiceError() {
        if (reasonCase_ == 3) {
           return (ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError) reason_;
        }
        return ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError.getDefaultInstance();
      }
      /**
       * <pre>
       * Ошибка взаимодействия с сервисом User
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError user_service_error = 3;</code>
       */
      private void setUserServiceError(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError value) {
        value.getClass();
  reason_ = value;
        reasonCase_ = 3;
      }
      /**
       * <pre>
       * Ошибка взаимодействия с сервисом User
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError user_service_error = 3;</code>
       */
      private void mergeUserServiceError(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError value) {
        value.getClass();
  if (reasonCase_ == 3 &&
            reason_ != ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError.getDefaultInstance()) {
          reason_ = ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError.newBuilder((ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError) reason_)
              .mergeFrom(value).buildPartial();
        } else {
          reason_ = value;
        }
        reasonCase_ = 3;
      }
      /**
       * <pre>
       * Ошибка взаимодействия с сервисом User
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError user_service_error = 3;</code>
       */
      private void clearUserServiceError() {
        if (reasonCase_ == 3) {
          reasonCase_ = 0;
          reason_ = null;
        }
      }

      public static final int VCFRONT_SERVICE_ERROR_FIELD_NUMBER = 4;
      /**
       * <pre>
       * Ошибка взаимодействия с сервисом vcfront
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError vcfront_service_error = 4;</code>
       */
      @java.lang.Override
      public boolean hasVcfrontServiceError() {
        return reasonCase_ == 4;
      }
      /**
       * <pre>
       * Ошибка взаимодействия с сервисом vcfront
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError vcfront_service_error = 4;</code>
       */
      @java.lang.Override
      public ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError getVcfrontServiceError() {
        if (reasonCase_ == 4) {
           return (ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError) reason_;
        }
        return ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError.getDefaultInstance();
      }
      /**
       * <pre>
       * Ошибка взаимодействия с сервисом vcfront
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError vcfront_service_error = 4;</code>
       */
      private void setVcfrontServiceError(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError value) {
        value.getClass();
  reason_ = value;
        reasonCase_ = 4;
      }
      /**
       * <pre>
       * Ошибка взаимодействия с сервисом vcfront
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError vcfront_service_error = 4;</code>
       */
      private void mergeVcfrontServiceError(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError value) {
        value.getClass();
  if (reasonCase_ == 4 &&
            reason_ != ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError.getDefaultInstance()) {
          reason_ = ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError.newBuilder((ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError) reason_)
              .mergeFrom(value).buildPartial();
        } else {
          reason_ = value;
        }
        reasonCase_ = 4;
      }
      /**
       * <pre>
       * Ошибка взаимодействия с сервисом vcfront
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError vcfront_service_error = 4;</code>
       */
      private void clearVcfrontServiceError() {
        if (reasonCase_ == 4) {
          reasonCase_ = 0;
          reason_ = null;
        }
      }

      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data, extensionRegistry);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data, extensionRegistry);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data, extensionRegistry);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input, extensionRegistry);
      }

      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return parseDelimitedFrom(DEFAULT_INSTANCE, input);
      }

      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input, extensionRegistry);
      }

      public static Builder newBuilder() {
        return (Builder) DEFAULT_INSTANCE.createBuilder();
      }
      public static Builder newBuilder(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error prototype) {
        return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
      }

      /**
       * <pre>
       * Ошибка генерации имперсонационной ссылки для компании
       * </pre>
       *
       * Protobuf type {@code keyapis.vc.v1.PostCompanyImpersonationResponse.Error}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageLite.Builder<
            ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error, Builder> implements
          // @@protoc_insertion_point(builder_implements:keyapis.vc.v1.PostCompanyImpersonationResponse.Error)
          ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.ErrorOrBuilder {
        // Construct using ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.newBuilder()
        private Builder() {
          super(DEFAULT_INSTANCE);
        }

        @java.lang.Override
        public ReasonCase
            getReasonCase() {
          return instance.getReasonCase();
        }

        public Builder clearReason() {
          copyOnWrite();
          instance.clearReason();
          return this;
        }


        /**
         * <pre>
         * Ошибка валидации
         * </pre>
         *
         * <code>.keyapis.vc.v1.ValidationError validation = 1;</code>
         */
        @java.lang.Override
        public boolean hasValidation() {
          return instance.hasValidation();
        }
        /**
         * <pre>
         * Ошибка валидации
         * </pre>
         *
         * <code>.keyapis.vc.v1.ValidationError validation = 1;</code>
         */
        @java.lang.Override
        public ru.keyapis.vc.v1.KeyapisVcV1Proto.ValidationError getValidation() {
          return instance.getValidation();
        }
        /**
         * <pre>
         * Ошибка валидации
         * </pre>
         *
         * <code>.keyapis.vc.v1.ValidationError validation = 1;</code>
         */
        public Builder setValidation(ru.keyapis.vc.v1.KeyapisVcV1Proto.ValidationError value) {
          copyOnWrite();
          instance.setValidation(value);
          return this;
        }
        /**
         * <pre>
         * Ошибка валидации
         * </pre>
         *
         * <code>.keyapis.vc.v1.ValidationError validation = 1;</code>
         */
        public Builder setValidation(
            ru.keyapis.vc.v1.KeyapisVcV1Proto.ValidationError.Builder builderForValue) {
          copyOnWrite();
          instance.setValidation(builderForValue.build());
          return this;
        }
        /**
         * <pre>
         * Ошибка валидации
         * </pre>
         *
         * <code>.keyapis.vc.v1.ValidationError validation = 1;</code>
         */
        public Builder mergeValidation(ru.keyapis.vc.v1.KeyapisVcV1Proto.ValidationError value) {
          copyOnWrite();
          instance.mergeValidation(value);
          return this;
        }
        /**
         * <pre>
         * Ошибка валидации
         * </pre>
         *
         * <code>.keyapis.vc.v1.ValidationError validation = 1;</code>
         */
        public Builder clearValidation() {
          copyOnWrite();
          instance.clearValidation();
          return this;
        }

        /**
         * <pre>
         * Владелец компании не найден
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound owner_not_found = 2;</code>
         */
        @java.lang.Override
        public boolean hasOwnerNotFound() {
          return instance.hasOwnerNotFound();
        }
        /**
         * <pre>
         * Владелец компании не найден
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound owner_not_found = 2;</code>
         */
        @java.lang.Override
        public ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound getOwnerNotFound() {
          return instance.getOwnerNotFound();
        }
        /**
         * <pre>
         * Владелец компании не найден
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound owner_not_found = 2;</code>
         */
        public Builder setOwnerNotFound(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound value) {
          copyOnWrite();
          instance.setOwnerNotFound(value);
          return this;
        }
        /**
         * <pre>
         * Владелец компании не найден
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound owner_not_found = 2;</code>
         */
        public Builder setOwnerNotFound(
            ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound.Builder builderForValue) {
          copyOnWrite();
          instance.setOwnerNotFound(builderForValue.build());
          return this;
        }
        /**
         * <pre>
         * Владелец компании не найден
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound owner_not_found = 2;</code>
         */
        public Builder mergeOwnerNotFound(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound value) {
          copyOnWrite();
          instance.mergeOwnerNotFound(value);
          return this;
        }
        /**
         * <pre>
         * Владелец компании не найден
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.OwnerNotFound owner_not_found = 2;</code>
         */
        public Builder clearOwnerNotFound() {
          copyOnWrite();
          instance.clearOwnerNotFound();
          return this;
        }

        /**
         * <pre>
         * Ошибка взаимодействия с сервисом User
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError user_service_error = 3;</code>
         */
        @java.lang.Override
        public boolean hasUserServiceError() {
          return instance.hasUserServiceError();
        }
        /**
         * <pre>
         * Ошибка взаимодействия с сервисом User
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError user_service_error = 3;</code>
         */
        @java.lang.Override
        public ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError getUserServiceError() {
          return instance.getUserServiceError();
        }
        /**
         * <pre>
         * Ошибка взаимодействия с сервисом User
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError user_service_error = 3;</code>
         */
        public Builder setUserServiceError(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError value) {
          copyOnWrite();
          instance.setUserServiceError(value);
          return this;
        }
        /**
         * <pre>
         * Ошибка взаимодействия с сервисом User
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError user_service_error = 3;</code>
         */
        public Builder setUserServiceError(
            ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError.Builder builderForValue) {
          copyOnWrite();
          instance.setUserServiceError(builderForValue.build());
          return this;
        }
        /**
         * <pre>
         * Ошибка взаимодействия с сервисом User
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError user_service_error = 3;</code>
         */
        public Builder mergeUserServiceError(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError value) {
          copyOnWrite();
          instance.mergeUserServiceError(value);
          return this;
        }
        /**
         * <pre>
         * Ошибка взаимодействия с сервисом User
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.UserServiceError user_service_error = 3;</code>
         */
        public Builder clearUserServiceError() {
          copyOnWrite();
          instance.clearUserServiceError();
          return this;
        }

        /**
         * <pre>
         * Ошибка взаимодействия с сервисом vcfront
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError vcfront_service_error = 4;</code>
         */
        @java.lang.Override
        public boolean hasVcfrontServiceError() {
          return instance.hasVcfrontServiceError();
        }
        /**
         * <pre>
         * Ошибка взаимодействия с сервисом vcfront
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError vcfront_service_error = 4;</code>
         */
        @java.lang.Override
        public ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError getVcfrontServiceError() {
          return instance.getVcfrontServiceError();
        }
        /**
         * <pre>
         * Ошибка взаимодействия с сервисом vcfront
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError vcfront_service_error = 4;</code>
         */
        public Builder setVcfrontServiceError(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError value) {
          copyOnWrite();
          instance.setVcfrontServiceError(value);
          return this;
        }
        /**
         * <pre>
         * Ошибка взаимодействия с сервисом vcfront
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError vcfront_service_error = 4;</code>
         */
        public Builder setVcfrontServiceError(
            ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError.Builder builderForValue) {
          copyOnWrite();
          instance.setVcfrontServiceError(builderForValue.build());
          return this;
        }
        /**
         * <pre>
         * Ошибка взаимодействия с сервисом vcfront
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError vcfront_service_error = 4;</code>
         */
        public Builder mergeVcfrontServiceError(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError value) {
          copyOnWrite();
          instance.mergeVcfrontServiceError(value);
          return this;
        }
        /**
         * <pre>
         * Ошибка взаимодействия с сервисом vcfront
         * </pre>
         *
         * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error.VcfrontServiceError vcfront_service_error = 4;</code>
         */
        public Builder clearVcfrontServiceError() {
          copyOnWrite();
          instance.clearVcfrontServiceError();
          return this;
        }

        // @@protoc_insertion_point(builder_scope:keyapis.vc.v1.PostCompanyImpersonationResponse.Error)
      }
      @java.lang.Override
      @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
      protected final java.lang.Object dynamicMethod(
          com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
          java.lang.Object arg0, java.lang.Object arg1) {
        switch (method) {
          case NEW_MUTABLE_INSTANCE: {
            return new ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error();
          }
          case NEW_BUILDER: {
            return new Builder();
          }
          case BUILD_MESSAGE_INFO: {
              java.lang.Object[] objects = new java.lang.Object[] {
                "reason_",
                "reasonCase_",
                ru.keyapis.vc.v1.KeyapisVcV1Proto.ValidationError.class,
                ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.OwnerNotFound.class,
                ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.UserServiceError.class,
                ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.VcfrontServiceError.class,
              };
              java.lang.String info =
                  "\u0000\u0004\u0001\u0000\u0001\u0004\u0004\u0000\u0000\u0000\u0001<\u0000\u0002<" +
                  "\u0000\u0003<\u0000\u0004<\u0000";
              return newMessageInfo(DEFAULT_INSTANCE, info, objects);
          }
          // fall through
          case GET_DEFAULT_INSTANCE: {
            return DEFAULT_INSTANCE;
          }
          case GET_PARSER: {
            com.google.protobuf.Parser<ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error> parser = PARSER;
            if (parser == null) {
              synchronized (ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.class) {
                parser = PARSER;
                if (parser == null) {
                  parser =
                      new DefaultInstanceBasedParser<ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error>(
                          DEFAULT_INSTANCE);
                  PARSER = parser;
                }
              }
            }
            return parser;
        }
        case GET_MEMOIZED_IS_INITIALIZED: {
          return (byte) 1;
        }
        case SET_MEMOIZED_IS_INITIALIZED: {
          return null;
        }
        }
        throw new UnsupportedOperationException();
      }


      // @@protoc_insertion_point(class_scope:keyapis.vc.v1.PostCompanyImpersonationResponse.Error)
      private static final ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error DEFAULT_INSTANCE;
      static {
        Error defaultInstance = new Error();
        // New instances are implicitly immutable so no need to make
        // immutable.
        DEFAULT_INSTANCE = defaultInstance;
        com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
          Error.class, defaultInstance);
      }

      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }

      private static volatile com.google.protobuf.Parser<Error> PARSER;

      public static com.google.protobuf.Parser<Error> parser() {
        return DEFAULT_INSTANCE.getParserForType();
      }
    }

    public interface CompanyImpersonationOrBuilder extends
        // @@protoc_insertion_point(interface_extends:keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation)
        com.google.protobuf.MessageLiteOrBuilder {

      /**
       * <pre>
       * Одноразовая ссылка для имперсонации
       * </pre>
       *
       * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       * @return The url.
       */
      java.lang.String getUrl();
      /**
       * <pre>
       * Одноразовая ссылка для имперсонации
       * </pre>
       *
       * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       * @return The bytes for url.
       */
      com.google.protobuf.ByteString
          getUrlBytes();
    }
    /**
     * <pre>
     * Имперсонационная ссылка
     * </pre>
     *
     * Protobuf type {@code keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation}
     */
    public  static final class CompanyImpersonation extends
        com.google.protobuf.GeneratedMessageLite<
            CompanyImpersonation, CompanyImpersonation.Builder> implements
        // @@protoc_insertion_point(message_implements:keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation)
        CompanyImpersonationOrBuilder {
      private CompanyImpersonation() {
        url_ = "";
      }
      public static final int URL_FIELD_NUMBER = 1;
      private java.lang.String url_;
      /**
       * <pre>
       * Одноразовая ссылка для имперсонации
       * </pre>
       *
       * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       * @return The url.
       */
      @java.lang.Override
      public java.lang.String getUrl() {
        return url_;
      }
      /**
       * <pre>
       * Одноразовая ссылка для имперсонации
       * </pre>
       *
       * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       * @return The bytes for url.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getUrlBytes() {
        return com.google.protobuf.ByteString.copyFromUtf8(url_);
      }
      /**
       * <pre>
       * Одноразовая ссылка для имперсонации
       * </pre>
       *
       * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       * @param value The url to set.
       */
      private void setUrl(
          java.lang.String value) {
        java.lang.Class<?> valueClass = value.getClass();
  
        url_ = value;
      }
      /**
       * <pre>
       * Одноразовая ссылка для имперсонации
       * </pre>
       *
       * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       */
      private void clearUrl() {

        url_ = getDefaultInstance().getUrl();
      }
      /**
       * <pre>
       * Одноразовая ссылка для имперсонации
       * </pre>
       *
       * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       * @param value The bytes for url to set.
       */
      private void setUrlBytes(
          com.google.protobuf.ByteString value) {
        checkByteStringIsUtf8(value);
        url_ = value.toStringUtf8();

      }

      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data, extensionRegistry);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data, extensionRegistry);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data, extensionRegistry);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input, extensionRegistry);
      }

      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return parseDelimitedFrom(DEFAULT_INSTANCE, input);
      }

      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input);
      }
      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input, extensionRegistry);
      }

      public static Builder newBuilder() {
        return (Builder) DEFAULT_INSTANCE.createBuilder();
      }
      public static Builder newBuilder(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation prototype) {
        return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
      }

      /**
       * <pre>
       * Имперсонационная ссылка
       * </pre>
       *
       * Protobuf type {@code keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageLite.Builder<
            ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation, Builder> implements
          // @@protoc_insertion_point(builder_implements:keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation)
          ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonationOrBuilder {
        // Construct using ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation.newBuilder()
        private Builder() {
          super(DEFAULT_INSTANCE);
        }


        /**
         * <pre>
         * Одноразовая ссылка для имперсонации
         * </pre>
         *
         * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
         * @return The url.
         */
        @java.lang.Override
        public java.lang.String getUrl() {
          return instance.getUrl();
        }
        /**
         * <pre>
         * Одноразовая ссылка для имперсонации
         * </pre>
         *
         * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
         * @return The bytes for url.
         */
        @java.lang.Override
        public com.google.protobuf.ByteString
            getUrlBytes() {
          return instance.getUrlBytes();
        }
        /**
         * <pre>
         * Одноразовая ссылка для имперсонации
         * </pre>
         *
         * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
         * @param value The url to set.
         * @return This builder for chaining.
         */
        public Builder setUrl(
            java.lang.String value) {
          copyOnWrite();
          instance.setUrl(value);
          return this;
        }
        /**
         * <pre>
         * Одноразовая ссылка для имперсонации
         * </pre>
         *
         * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
         * @return This builder for chaining.
         */
        public Builder clearUrl() {
          copyOnWrite();
          instance.clearUrl();
          return this;
        }
        /**
         * <pre>
         * Одноразовая ссылка для имперсонации
         * </pre>
         *
         * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
         * @param value The bytes for url to set.
         * @return This builder for chaining.
         */
        public Builder setUrlBytes(
            com.google.protobuf.ByteString value) {
          copyOnWrite();
          instance.setUrlBytes(value);
          return this;
        }

        // @@protoc_insertion_point(builder_scope:keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation)
      }
      @java.lang.Override
      @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
      protected final java.lang.Object dynamicMethod(
          com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
          java.lang.Object arg0, java.lang.Object arg1) {
        switch (method) {
          case NEW_MUTABLE_INSTANCE: {
            return new ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation();
          }
          case NEW_BUILDER: {
            return new Builder();
          }
          case BUILD_MESSAGE_INFO: {
              java.lang.Object[] objects = new java.lang.Object[] {
                "url_",
              };
              java.lang.String info =
                  "\u0000\u0001\u0000\u0000\u0001\u0001\u0001\u0000\u0000\u0000\u0001\u0208";
              return newMessageInfo(DEFAULT_INSTANCE, info, objects);
          }
          // fall through
          case GET_DEFAULT_INSTANCE: {
            return DEFAULT_INSTANCE;
          }
          case GET_PARSER: {
            com.google.protobuf.Parser<ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation> parser = PARSER;
            if (parser == null) {
              synchronized (ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation.class) {
                parser = PARSER;
                if (parser == null) {
                  parser =
                      new DefaultInstanceBasedParser<ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation>(
                          DEFAULT_INSTANCE);
                  PARSER = parser;
                }
              }
            }
            return parser;
        }
        case GET_MEMOIZED_IS_INITIALIZED: {
          return (byte) 1;
        }
        case SET_MEMOIZED_IS_INITIALIZED: {
          return null;
        }
        }
        throw new UnsupportedOperationException();
      }


      // @@protoc_insertion_point(class_scope:keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation)
      private static final ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation DEFAULT_INSTANCE;
      static {
        CompanyImpersonation defaultInstance = new CompanyImpersonation();
        // New instances are implicitly immutable so no need to make
        // immutable.
        DEFAULT_INSTANCE = defaultInstance;
        com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
          CompanyImpersonation.class, defaultInstance);
      }

      public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }

      private static volatile com.google.protobuf.Parser<CompanyImpersonation> PARSER;

      public static com.google.protobuf.Parser<CompanyImpersonation> parser() {
        return DEFAULT_INSTANCE.getParserForType();
      }
    }

    private int typeCase_ = 0;
    private java.lang.Object type_;
    public enum TypeCase {
      DATA(1),
      ERROR(2),
      TYPE_NOT_SET(0);
      private final int value;
      private TypeCase(int value) {
        this.value = value;
      }
      /**
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static TypeCase valueOf(int value) {
        return forNumber(value);
      }

      public static TypeCase forNumber(int value) {
        switch (value) {
          case 1: return DATA;
          case 2: return ERROR;
          case 0: return TYPE_NOT_SET;
          default: return null;
        }
      }
      public int getNumber() {
        return this.value;
      }
    };

    @java.lang.Override
    public TypeCase
    getTypeCase() {
      return TypeCase.forNumber(
          typeCase_);
    }

    private void clearType() {
      typeCase_ = 0;
      type_ = null;
    }

    public static final int DATA_FIELD_NUMBER = 1;
    /**
     * <pre>
     * Имперсонационная ссылка
     * </pre>
     *
     * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation data = 1;</code>
     */
    @java.lang.Override
    public boolean hasData() {
      return typeCase_ == 1;
    }
    /**
     * <pre>
     * Имперсонационная ссылка
     * </pre>
     *
     * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation data = 1;</code>
     */
    @java.lang.Override
    public ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation getData() {
      if (typeCase_ == 1) {
         return (ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation) type_;
      }
      return ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation.getDefaultInstance();
    }
    /**
     * <pre>
     * Имперсонационная ссылка
     * </pre>
     *
     * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation data = 1;</code>
     */
    private void setData(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation value) {
      value.getClass();
  type_ = value;
      typeCase_ = 1;
    }
    /**
     * <pre>
     * Имперсонационная ссылка
     * </pre>
     *
     * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation data = 1;</code>
     */
    private void mergeData(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation value) {
      value.getClass();
  if (typeCase_ == 1 &&
          type_ != ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation.getDefaultInstance()) {
        type_ = ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation.newBuilder((ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation) type_)
            .mergeFrom(value).buildPartial();
      } else {
        type_ = value;
      }
      typeCase_ = 1;
    }
    /**
     * <pre>
     * Имперсонационная ссылка
     * </pre>
     *
     * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation data = 1;</code>
     */
    private void clearData() {
      if (typeCase_ == 1) {
        typeCase_ = 0;
        type_ = null;
      }
    }

    public static final int ERROR_FIELD_NUMBER = 2;
    /**
     * <pre>
     * Ошибка
     * </pre>
     *
     * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error error = 2;</code>
     */
    @java.lang.Override
    public boolean hasError() {
      return typeCase_ == 2;
    }
    /**
     * <pre>
     * Ошибка
     * </pre>
     *
     * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error error = 2;</code>
     */
    @java.lang.Override
    public ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error getError() {
      if (typeCase_ == 2) {
         return (ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error) type_;
      }
      return ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.getDefaultInstance();
    }
    /**
     * <pre>
     * Ошибка
     * </pre>
     *
     * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error error = 2;</code>
     */
    private void setError(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error value) {
      value.getClass();
  type_ = value;
      typeCase_ = 2;
    }
    /**
     * <pre>
     * Ошибка
     * </pre>
     *
     * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error error = 2;</code>
     */
    private void mergeError(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error value) {
      value.getClass();
  if (typeCase_ == 2 &&
          type_ != ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.getDefaultInstance()) {
        type_ = ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.newBuilder((ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error) type_)
            .mergeFrom(value).buildPartial();
      } else {
        type_ = value;
      }
      typeCase_ = 2;
    }
    /**
     * <pre>
     * Ошибка
     * </pre>
     *
     * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error error = 2;</code>
     */
    private void clearError() {
      if (typeCase_ == 2) {
        typeCase_ = 0;
        type_ = null;
      }
    }

    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input);
    }

    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static Builder newBuilder() {
      return (Builder) DEFAULT_INSTANCE.createBuilder();
    }
    public static Builder newBuilder(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse prototype) {
      return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
    }

    /**
     * <pre>
     * Ответ на запрос генерации имперсонационной ссылки для компании
     * </pre>
     *
     * Protobuf type {@code keyapis.vc.v1.PostCompanyImpersonationResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageLite.Builder<
          ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse, Builder> implements
        // @@protoc_insertion_point(builder_implements:keyapis.vc.v1.PostCompanyImpersonationResponse)
        ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponseOrBuilder {
      // Construct using ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.newBuilder()
      private Builder() {
        super(DEFAULT_INSTANCE);
      }

      @java.lang.Override
      public TypeCase
          getTypeCase() {
        return instance.getTypeCase();
      }

      public Builder clearType() {
        copyOnWrite();
        instance.clearType();
        return this;
      }


      /**
       * <pre>
       * Имперсонационная ссылка
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation data = 1;</code>
       */
      @java.lang.Override
      public boolean hasData() {
        return instance.hasData();
      }
      /**
       * <pre>
       * Имперсонационная ссылка
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation data = 1;</code>
       */
      @java.lang.Override
      public ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation getData() {
        return instance.getData();
      }
      /**
       * <pre>
       * Имперсонационная ссылка
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation data = 1;</code>
       */
      public Builder setData(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation value) {
        copyOnWrite();
        instance.setData(value);
        return this;
      }
      /**
       * <pre>
       * Имперсонационная ссылка
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation data = 1;</code>
       */
      public Builder setData(
          ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation.Builder builderForValue) {
        copyOnWrite();
        instance.setData(builderForValue.build());
        return this;
      }
      /**
       * <pre>
       * Имперсонационная ссылка
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation data = 1;</code>
       */
      public Builder mergeData(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation value) {
        copyOnWrite();
        instance.mergeData(value);
        return this;
      }
      /**
       * <pre>
       * Имперсонационная ссылка
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.CompanyImpersonation data = 1;</code>
       */
      public Builder clearData() {
        copyOnWrite();
        instance.clearData();
        return this;
      }

      /**
       * <pre>
       * Ошибка
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error error = 2;</code>
       */
      @java.lang.Override
      public boolean hasError() {
        return instance.hasError();
      }
      /**
       * <pre>
       * Ошибка
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error error = 2;</code>
       */
      @java.lang.Override
      public ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error getError() {
        return instance.getError();
      }
      /**
       * <pre>
       * Ошибка
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error error = 2;</code>
       */
      public Builder setError(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error value) {
        copyOnWrite();
        instance.setError(value);
        return this;
      }
      /**
       * <pre>
       * Ошибка
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error error = 2;</code>
       */
      public Builder setError(
          ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.Builder builderForValue) {
        copyOnWrite();
        instance.setError(builderForValue.build());
        return this;
      }
      /**
       * <pre>
       * Ошибка
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error error = 2;</code>
       */
      public Builder mergeError(ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error value) {
        copyOnWrite();
        instance.mergeError(value);
        return this;
      }
      /**
       * <pre>
       * Ошибка
       * </pre>
       *
       * <code>.keyapis.vc.v1.PostCompanyImpersonationResponse.Error error = 2;</code>
       */
      public Builder clearError() {
        copyOnWrite();
        instance.clearError();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:keyapis.vc.v1.PostCompanyImpersonationResponse)
    }
    @java.lang.Override
    @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
    protected final java.lang.Object dynamicMethod(
        com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
        java.lang.Object arg0, java.lang.Object arg1) {
      switch (method) {
        case NEW_MUTABLE_INSTANCE: {
          return new ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse();
        }
        case NEW_BUILDER: {
          return new Builder();
        }
        case BUILD_MESSAGE_INFO: {
            java.lang.Object[] objects = new java.lang.Object[] {
              "type_",
              "typeCase_",
              ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.CompanyImpersonation.class,
              ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.Error.class,
            };
            java.lang.String info =
                "\u0000\u0002\u0001\u0000\u0001\u0002\u0002\u0000\u0000\u0000\u0001<\u0000\u0002<" +
                "\u0000";
            return newMessageInfo(DEFAULT_INSTANCE, info, objects);
        }
        // fall through
        case GET_DEFAULT_INSTANCE: {
          return DEFAULT_INSTANCE;
        }
        case GET_PARSER: {
          com.google.protobuf.Parser<ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse> parser = PARSER;
          if (parser == null) {
            synchronized (ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse.class) {
              parser = PARSER;
              if (parser == null) {
                parser =
                    new DefaultInstanceBasedParser<ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse>(
                        DEFAULT_INSTANCE);
                PARSER = parser;
              }
            }
          }
          return parser;
      }
      case GET_MEMOIZED_IS_INITIALIZED: {
        return (byte) 1;
      }
      case SET_MEMOIZED_IS_INITIALIZED: {
        return null;
      }
      }
      throw new UnsupportedOperationException();
    }


    // @@protoc_insertion_point(class_scope:keyapis.vc.v1.PostCompanyImpersonationResponse)
    private static final ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse DEFAULT_INSTANCE;
    static {
      PostCompanyImpersonationResponse defaultInstance = new PostCompanyImpersonationResponse();
      // New instances are implicitly immutable so no need to make
      // immutable.
      DEFAULT_INSTANCE = defaultInstance;
      com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
        PostCompanyImpersonationResponse.class, defaultInstance);
    }

    public static ru.keyapis.vc.v1.KeyapisVcV1Proto.PostCompanyImpersonationResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static volatile com.google.protobuf.Parser<PostCompanyImpersonationResponse> PARSER;

    public static com.google.protobuf.Parser<PostCompanyImpersonationResponse> parser() {
      return DEFAULT_INSTANCE.getParserForType();
    }
  }


  static {
  }

  // @@protoc_insertion_point(outer_class_scope)
}
