yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass Maven / Gradle / Ivy
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: yandex/cloud/datasphere/v2/project_service.proto
package yandex.cloud.api.datasphere.v2;
public final class ProjectServiceOuterClass {
  private ProjectServiceOuterClass() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistryLite registry) {
  }
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistry registry) {
    registerAllExtensions(
        (com.google.protobuf.ExtensionRegistryLite) registry);
  }
  /**
   * Protobuf enum {@code yandex.cloud.datasphere.v2.ExecutionStatus}
   */
  public enum ExecutionStatus
      implements com.google.protobuf.ProtocolMessageEnum {
    /**
     * EXECUTION_STATUS_UNSPECIFIED = 0;
     */
    EXECUTION_STATUS_UNSPECIFIED(0),
    /**
     * 
     * Execution finished successfully.
     * 
     *
     * OK = 1;
     */
    OK(1),
    /**
     * 
     * Execution ended with error.
     * 
     *
     * ERROR = 2;
     */
    ERROR(2),
    /**
     * 
     * Execution was aborted.
     * 
     *
     * ABORTED = 3;
     */
    ABORTED(3),
    UNRECOGNIZED(-1),
    ;
    /**
     * EXECUTION_STATUS_UNSPECIFIED = 0;
     */
    public static final int EXECUTION_STATUS_UNSPECIFIED_VALUE = 0;
    /**
     * 
     * Execution finished successfully.
     * 
     *
     * OK = 1;
     */
    public static final int OK_VALUE = 1;
    /**
     * 
     * Execution ended with error.
     * 
     *
     * ERROR = 2;
     */
    public static final int ERROR_VALUE = 2;
    /**
     * 
     * Execution was aborted.
     * 
     *
     * ABORTED = 3;
     */
    public static final int ABORTED_VALUE = 3;
    public final int getNumber() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalArgumentException(
            "Can't get the number of an unknown enum value.");
      }
      return value;
    }
    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     * @deprecated Use {@link #forNumber(int)} instead.
     */
    @java.lang.Deprecated
    public static ExecutionStatus valueOf(int value) {
      return forNumber(value);
    }
    /**
     * @param value The numeric wire value of the corresponding enum entry.
     * @return The enum associated with the given numeric wire value.
     */
    public static ExecutionStatus forNumber(int value) {
      switch (value) {
        case 0: return EXECUTION_STATUS_UNSPECIFIED;
        case 1: return OK;
        case 2: return ERROR;
        case 3: return ABORTED;
        default: return null;
      }
    }
    public static com.google.protobuf.Internal.EnumLiteMap
        internalGetValueMap() {
      return internalValueMap;
    }
    private static final com.google.protobuf.Internal.EnumLiteMap<
        ExecutionStatus> internalValueMap =
          new com.google.protobuf.Internal.EnumLiteMap() {
            public ExecutionStatus findValueByNumber(int number) {
              return ExecutionStatus.forNumber(number);
            }
          };
    public final com.google.protobuf.Descriptors.EnumValueDescriptor
        getValueDescriptor() {
      if (this == UNRECOGNIZED) {
        throw new java.lang.IllegalStateException(
            "Can't get the descriptor of an unrecognized enum value.");
      }
      return getDescriptor().getValues().get(ordinal());
    }
    public final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptorForType() {
      return getDescriptor();
    }
    public static final com.google.protobuf.Descriptors.EnumDescriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.getDescriptor().getEnumTypes().get(0);
    }
    private static final ExecutionStatus[] VALUES = values();
    public static ExecutionStatus valueOf(
        com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
      if (desc.getType() != getDescriptor()) {
        throw new java.lang.IllegalArgumentException(
          "EnumValueDescriptor is not for this type.");
      }
      if (desc.getIndex() == -1) {
        return UNRECOGNIZED;
      }
      return VALUES[desc.getIndex()];
    }
    private final int value;
    private ExecutionStatus(int value) {
      this.value = value;
    }
    // @@protoc_insertion_point(enum_scope:yandex.cloud.datasphere.v2.ExecutionStatus)
  }
  public interface CreateProjectRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.CreateProjectRequest)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the community to create a project in.
     * 
     *
     * string community_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The communityId.
     */
    java.lang.String getCommunityId();
    /**
     * 
     * ID of the community to create a project in.
     * 
     *
     * string community_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for communityId.
     */
    com.google.protobuf.ByteString
        getCommunityIdBytes();
    /**
     * 
     * Name of the project. 0-63 characters long.
     * 
     *
     * string name = 2 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
     * @return The name.
     */
    java.lang.String getName();
    /**
     * 
     * Name of the project. 0-63 characters long.
     * 
     *
     * string name = 2 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
     * @return The bytes for name.
     */
    com.google.protobuf.ByteString
        getNameBytes();
    /**
     * 
     * Description of the project. 0-256 characters long.
     * 
     *
     * string description = 3 [(.yandex.cloud.length) = "<=256"];
     * @return The description.
     */
    java.lang.String getDescription();
    /**
     * 
     * Description of the project. 0-256 characters long.
     * 
     *
     * string description = 3 [(.yandex.cloud.length) = "<=256"];
     * @return The bytes for description.
     */
    com.google.protobuf.ByteString
        getDescriptionBytes();
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    int getLabelsCount();
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    boolean containsLabels(
        java.lang.String key);
    /**
     * Use {@link #getLabelsMap()} instead.
     */
    @java.lang.Deprecated
    java.util.Map
    getLabels();
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    java.util.Map
    getLabelsMap();
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    java.lang.String getLabelsOrDefault(
        java.lang.String key,
        java.lang.String defaultValue);
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    java.lang.String getLabelsOrThrow(
        java.lang.String key);
    /**
     * 
     * Settings of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Settings settings = 5;
     * @return Whether the settings field is set.
     */
    boolean hasSettings();
    /**
     * 
     * Settings of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Settings settings = 5;
     * @return The settings.
     */
    yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings getSettings();
    /**
     * 
     * Settings of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Settings settings = 5;
     */
    yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.SettingsOrBuilder getSettingsOrBuilder();
    /**
     * 
     * Limits of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Limits limits = 6;
     * @return Whether the limits field is set.
     */
    boolean hasLimits();
    /**
     * 
     * Limits of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Limits limits = 6;
     * @return The limits.
     */
    yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits getLimits();
    /**
     * 
     * Limits of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Limits limits = 6;
     */
    yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.LimitsOrBuilder getLimitsOrBuilder();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.CreateProjectRequest}
   */
  public static final class CreateProjectRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.CreateProjectRequest)
      CreateProjectRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use CreateProjectRequest.newBuilder() to construct.
    private CreateProjectRequest(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private CreateProjectRequest() {
      communityId_ = "";
      name_ = "";
      description_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new CreateProjectRequest();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private CreateProjectRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              communityId_ = s;
              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();
              name_ = s;
              break;
            }
            case 26: {
              java.lang.String s = input.readStringRequireUtf8();
              description_ = s;
              break;
            }
            case 34: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                labels_ = com.google.protobuf.MapField.newMapField(
                    LabelsDefaultEntryHolder.defaultEntry);
                mutable_bitField0_ |= 0x00000001;
              }
              com.google.protobuf.MapEntry
              labels__ = input.readMessage(
                  LabelsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
              labels_.getMutableMap().put(
                  labels__.getKey(), labels__.getValue());
              break;
            }
            case 42: {
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.Builder subBuilder = null;
              if (settings_ != null) {
                subBuilder = settings_.toBuilder();
              }
              settings_ = input.readMessage(yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(settings_);
                settings_ = subBuilder.buildPartial();
              }
              break;
            }
            case 50: {
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.Builder subBuilder = null;
              if (limits_ != null) {
                subBuilder = limits_.toBuilder();
              }
              limits_ = input.readMessage(yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(limits_);
                limits_ = subBuilder.buildPartial();
              }
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_descriptor;
    }
    @SuppressWarnings({"rawtypes"})
    @java.lang.Override
    protected com.google.protobuf.MapField internalGetMapField(
        int number) {
      switch (number) {
        case 4:
          return internalGetLabels();
        default:
          throw new RuntimeException(
              "Invalid map field number: " + number);
      }
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest.Builder.class);
    }
    public static final int COMMUNITY_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object communityId_;
    /**
     * 
     * ID of the community to create a project in.
     * 
     *
     * string community_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The communityId.
     */
    @java.lang.Override
    public java.lang.String getCommunityId() {
      java.lang.Object ref = communityId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        communityId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the community to create a project in.
     * 
     *
     * string community_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for communityId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getCommunityIdBytes() {
      java.lang.Object ref = communityId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        communityId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int NAME_FIELD_NUMBER = 2;
    private volatile java.lang.Object name_;
    /**
     * 
     * Name of the project. 0-63 characters long.
     * 
     *
     * string name = 2 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
     * @return The name.
     */
    @java.lang.Override
    public java.lang.String getName() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        name_ = s;
        return s;
      }
    }
    /**
     * 
     * Name of the project. 0-63 characters long.
     * 
     *
     * string name = 2 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
     * @return The bytes for name.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getNameBytes() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int DESCRIPTION_FIELD_NUMBER = 3;
    private volatile java.lang.Object description_;
    /**
     * 
     * Description of the project. 0-256 characters long.
     * 
     *
     * string description = 3 [(.yandex.cloud.length) = "<=256"];
     * @return The description.
     */
    @java.lang.Override
    public java.lang.String getDescription() {
      java.lang.Object ref = description_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        description_ = s;
        return s;
      }
    }
    /**
     * 
     * Description of the project. 0-256 characters long.
     * 
     *
     * string description = 3 [(.yandex.cloud.length) = "<=256"];
     * @return The bytes for description.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getDescriptionBytes() {
      java.lang.Object ref = description_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        description_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int LABELS_FIELD_NUMBER = 4;
    private static final class LabelsDefaultEntryHolder {
      static final com.google.protobuf.MapEntry<
          java.lang.String, java.lang.String> defaultEntry =
              com.google.protobuf.MapEntry
              .newDefaultInstance(
                  yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_LabelsEntry_descriptor, 
                  com.google.protobuf.WireFormat.FieldType.STRING,
                  "",
                  com.google.protobuf.WireFormat.FieldType.STRING,
                  "");
    }
    private com.google.protobuf.MapField<
        java.lang.String, java.lang.String> labels_;
    private com.google.protobuf.MapField
    internalGetLabels() {
      if (labels_ == null) {
        return com.google.protobuf.MapField.emptyMapField(
            LabelsDefaultEntryHolder.defaultEntry);
      }
      return labels_;
    }
    public int getLabelsCount() {
      return internalGetLabels().getMap().size();
    }
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    @java.lang.Override
    public boolean containsLabels(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      return internalGetLabels().getMap().containsKey(key);
    }
    /**
     * Use {@link #getLabelsMap()} instead.
     */
    @java.lang.Override
    @java.lang.Deprecated
    public java.util.Map getLabels() {
      return getLabelsMap();
    }
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    @java.lang.Override
    public java.util.Map getLabelsMap() {
      return internalGetLabels().getMap();
    }
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    @java.lang.Override
    public java.lang.String getLabelsOrDefault(
        java.lang.String key,
        java.lang.String defaultValue) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map map =
          internalGetLabels().getMap();
      return map.containsKey(key) ? map.get(key) : defaultValue;
    }
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    @java.lang.Override
    public java.lang.String getLabelsOrThrow(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map map =
          internalGetLabels().getMap();
      if (!map.containsKey(key)) {
        throw new java.lang.IllegalArgumentException();
      }
      return map.get(key);
    }
    public static final int SETTINGS_FIELD_NUMBER = 5;
    private yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings settings_;
    /**
     * 
     * Settings of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Settings settings = 5;
     * @return Whether the settings field is set.
     */
    @java.lang.Override
    public boolean hasSettings() {
      return settings_ != null;
    }
    /**
     * 
     * Settings of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Settings settings = 5;
     * @return The settings.
     */
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings getSettings() {
      return settings_ == null ? yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.getDefaultInstance() : settings_;
    }
    /**
     * 
     * Settings of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Settings settings = 5;
     */
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.SettingsOrBuilder getSettingsOrBuilder() {
      return getSettings();
    }
    public static final int LIMITS_FIELD_NUMBER = 6;
    private yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits limits_;
    /**
     * 
     * Limits of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Limits limits = 6;
     * @return Whether the limits field is set.
     */
    @java.lang.Override
    public boolean hasLimits() {
      return limits_ != null;
    }
    /**
     * 
     * Limits of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Limits limits = 6;
     * @return The limits.
     */
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits getLimits() {
      return limits_ == null ? yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.getDefaultInstance() : limits_;
    }
    /**
     * 
     * Limits of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Limits limits = 6;
     */
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.LimitsOrBuilder getLimitsOrBuilder() {
      return getLimits();
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(communityId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, communityId_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, description_);
      }
      com.google.protobuf.GeneratedMessageV3
        .serializeStringMapTo(
          output,
          internalGetLabels(),
          LabelsDefaultEntryHolder.defaultEntry,
          4);
      if (settings_ != null) {
        output.writeMessage(5, getSettings());
      }
      if (limits_ != null) {
        output.writeMessage(6, getLimits());
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(communityId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, communityId_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, description_);
      }
      for (java.util.Map.Entry entry
           : internalGetLabels().getMap().entrySet()) {
        com.google.protobuf.MapEntry
        labels__ = LabelsDefaultEntryHolder.defaultEntry.newBuilderForType()
            .setKey(entry.getKey())
            .setValue(entry.getValue())
            .build();
        size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(4, labels__);
      }
      if (settings_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(5, getSettings());
      }
      if (limits_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(6, getLimits());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest) obj;
      if (!getCommunityId()
          .equals(other.getCommunityId())) return false;
      if (!getName()
          .equals(other.getName())) return false;
      if (!getDescription()
          .equals(other.getDescription())) return false;
      if (!internalGetLabels().equals(
          other.internalGetLabels())) return false;
      if (hasSettings() != other.hasSettings()) return false;
      if (hasSettings()) {
        if (!getSettings()
            .equals(other.getSettings())) return false;
      }
      if (hasLimits() != other.hasLimits()) return false;
      if (hasLimits()) {
        if (!getLimits()
            .equals(other.getLimits())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + COMMUNITY_ID_FIELD_NUMBER;
      hash = (53 * hash) + getCommunityId().hashCode();
      hash = (37 * hash) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
      hash = (37 * hash) + DESCRIPTION_FIELD_NUMBER;
      hash = (53 * hash) + getDescription().hashCode();
      if (!internalGetLabels().getMap().isEmpty()) {
        hash = (37 * hash) + LABELS_FIELD_NUMBER;
        hash = (53 * hash) + internalGetLabels().hashCode();
      }
      if (hasSettings()) {
        hash = (37 * hash) + SETTINGS_FIELD_NUMBER;
        hash = (53 * hash) + getSettings().hashCode();
      }
      if (hasLimits()) {
        hash = (37 * hash) + LIMITS_FIELD_NUMBER;
        hash = (53 * hash) + getLimits().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.CreateProjectRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.CreateProjectRequest)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_descriptor;
      }
      @SuppressWarnings({"rawtypes"})
      protected com.google.protobuf.MapField internalGetMapField(
          int number) {
        switch (number) {
          case 4:
            return internalGetLabels();
          default:
            throw new RuntimeException(
                "Invalid map field number: " + number);
        }
      }
      @SuppressWarnings({"rawtypes"})
      protected com.google.protobuf.MapField internalGetMutableMapField(
          int number) {
        switch (number) {
          case 4:
            return internalGetMutableLabels();
          default:
            throw new RuntimeException(
                "Invalid map field number: " + number);
        }
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        communityId_ = "";
        name_ = "";
        description_ = "";
        internalGetMutableLabels().clear();
        if (settingsBuilder_ == null) {
          settings_ = null;
        } else {
          settings_ = null;
          settingsBuilder_ = null;
        }
        if (limitsBuilder_ == null) {
          limits_ = null;
        } else {
          limits_ = null;
          limitsBuilder_ = null;
        }
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest(this);
        int from_bitField0_ = bitField0_;
        result.communityId_ = communityId_;
        result.name_ = name_;
        result.description_ = description_;
        result.labels_ = internalGetLabels();
        result.labels_.makeImmutable();
        if (settingsBuilder_ == null) {
          result.settings_ = settings_;
        } else {
          result.settings_ = settingsBuilder_.build();
        }
        if (limitsBuilder_ == null) {
          result.limits_ = limits_;
        } else {
          result.limits_ = limitsBuilder_.build();
        }
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest.getDefaultInstance()) return this;
        if (!other.getCommunityId().isEmpty()) {
          communityId_ = other.communityId_;
          onChanged();
        }
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (!other.getDescription().isEmpty()) {
          description_ = other.description_;
          onChanged();
        }
        internalGetMutableLabels().mergeFrom(
            other.internalGetLabels());
        if (other.hasSettings()) {
          mergeSettings(other.getSettings());
        }
        if (other.hasLimits()) {
          mergeLimits(other.getLimits());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;
      private java.lang.Object communityId_ = "";
      /**
       * 
       * ID of the community to create a project in.
       * 
       *
       * string community_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The communityId.
       */
      public java.lang.String getCommunityId() {
        java.lang.Object ref = communityId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          communityId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the community to create a project in.
       * 
       *
       * string community_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The bytes for communityId.
       */
      public com.google.protobuf.ByteString
          getCommunityIdBytes() {
        java.lang.Object ref = communityId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          communityId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the community to create a project in.
       * 
       *
       * string community_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The communityId to set.
       * @return This builder for chaining.
       */
      public Builder setCommunityId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        communityId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the community to create a project in.
       * 
       *
       * string community_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return This builder for chaining.
       */
      public Builder clearCommunityId() {
        
        communityId_ = getDefaultInstance().getCommunityId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the community to create a project in.
       * 
       *
       * string community_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The bytes for communityId to set.
       * @return This builder for chaining.
       */
      public Builder setCommunityIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        communityId_ = value;
        onChanged();
        return this;
      }
      private java.lang.Object name_ = "";
      /**
       * 
       * Name of the project. 0-63 characters long.
       * 
       *
       * string name = 2 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
       * @return The name.
       */
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          name_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * Name of the project. 0-63 characters long.
       * 
       *
       * string name = 2 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
       * @return The bytes for name.
       */
      public com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * Name of the project. 0-63 characters long.
       * 
       *
       * string name = 2 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
       * @param value The name to set.
       * @return This builder for chaining.
       */
      public Builder setName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        name_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Name of the project. 0-63 characters long.
       * 
       *
       * string name = 2 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
       * @return This builder for chaining.
       */
      public Builder clearName() {
        
        name_ = getDefaultInstance().getName();
        onChanged();
        return this;
      }
      /**
       * 
       * Name of the project. 0-63 characters long.
       * 
       *
       * string name = 2 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
       * @param value The bytes for name to set.
       * @return This builder for chaining.
       */
      public Builder setNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        name_ = value;
        onChanged();
        return this;
      }
      private java.lang.Object description_ = "";
      /**
       * 
       * Description of the project. 0-256 characters long.
       * 
       *
       * string description = 3 [(.yandex.cloud.length) = "<=256"];
       * @return The description.
       */
      public java.lang.String getDescription() {
        java.lang.Object ref = description_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          description_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * Description of the project. 0-256 characters long.
       * 
       *
       * string description = 3 [(.yandex.cloud.length) = "<=256"];
       * @return The bytes for description.
       */
      public com.google.protobuf.ByteString
          getDescriptionBytes() {
        java.lang.Object ref = description_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          description_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * Description of the project. 0-256 characters long.
       * 
       *
       * string description = 3 [(.yandex.cloud.length) = "<=256"];
       * @param value The description to set.
       * @return This builder for chaining.
       */
      public Builder setDescription(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        description_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Description of the project. 0-256 characters long.
       * 
       *
       * string description = 3 [(.yandex.cloud.length) = "<=256"];
       * @return This builder for chaining.
       */
      public Builder clearDescription() {
        
        description_ = getDefaultInstance().getDescription();
        onChanged();
        return this;
      }
      /**
       * 
       * Description of the project. 0-256 characters long.
       * 
       *
       * string description = 3 [(.yandex.cloud.length) = "<=256"];
       * @param value The bytes for description to set.
       * @return This builder for chaining.
       */
      public Builder setDescriptionBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        description_ = value;
        onChanged();
        return this;
      }
      private com.google.protobuf.MapField<
          java.lang.String, java.lang.String> labels_;
      private com.google.protobuf.MapField
      internalGetLabels() {
        if (labels_ == null) {
          return com.google.protobuf.MapField.emptyMapField(
              LabelsDefaultEntryHolder.defaultEntry);
        }
        return labels_;
      }
      private com.google.protobuf.MapField
      internalGetMutableLabels() {
        onChanged();;
        if (labels_ == null) {
          labels_ = com.google.protobuf.MapField.newMapField(
              LabelsDefaultEntryHolder.defaultEntry);
        }
        if (!labels_.isMutable()) {
          labels_ = labels_.copy();
        }
        return labels_;
      }
      public int getLabelsCount() {
        return internalGetLabels().getMap().size();
      }
      /**
       * 
       * Labels of the project.
       * 
       *
       * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
       */
      @java.lang.Override
      public boolean containsLabels(
          java.lang.String key) {
        if (key == null) { throw new NullPointerException("map key"); }
        return internalGetLabels().getMap().containsKey(key);
      }
      /**
       * Use {@link #getLabelsMap()} instead.
       */
      @java.lang.Override
      @java.lang.Deprecated
      public java.util.Map getLabels() {
        return getLabelsMap();
      }
      /**
       * 
       * Labels of the project.
       * 
       *
       * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
       */
      @java.lang.Override
      public java.util.Map getLabelsMap() {
        return internalGetLabels().getMap();
      }
      /**
       * 
       * Labels of the project.
       * 
       *
       * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
       */
      @java.lang.Override
      public java.lang.String getLabelsOrDefault(
          java.lang.String key,
          java.lang.String defaultValue) {
        if (key == null) { throw new NullPointerException("map key"); }
        java.util.Map map =
            internalGetLabels().getMap();
        return map.containsKey(key) ? map.get(key) : defaultValue;
      }
      /**
       * 
       * Labels of the project.
       * 
       *
       * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
       */
      @java.lang.Override
      public java.lang.String getLabelsOrThrow(
          java.lang.String key) {
        if (key == null) { throw new NullPointerException("map key"); }
        java.util.Map map =
            internalGetLabels().getMap();
        if (!map.containsKey(key)) {
          throw new java.lang.IllegalArgumentException();
        }
        return map.get(key);
      }
      public Builder clearLabels() {
        internalGetMutableLabels().getMutableMap()
            .clear();
        return this;
      }
      /**
       * 
       * Labels of the project.
       * 
       *
       * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
       */
      public Builder removeLabels(
          java.lang.String key) {
        if (key == null) { throw new NullPointerException("map key"); }
        internalGetMutableLabels().getMutableMap()
            .remove(key);
        return this;
      }
      /**
       * Use alternate mutation accessors instead.
       */
      @java.lang.Deprecated
      public java.util.Map
      getMutableLabels() {
        return internalGetMutableLabels().getMutableMap();
      }
      /**
       * 
       * Labels of the project.
       * 
       *
       * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
       */
      public Builder putLabels(
          java.lang.String key,
          java.lang.String value) {
        if (key == null) { throw new NullPointerException("map key"); }
        if (value == null) {
  throw new NullPointerException("map value");
}
        internalGetMutableLabels().getMutableMap()
            .put(key, value);
        return this;
      }
      /**
       * 
       * Labels of the project.
       * 
       *
       * map<string, string> labels = 4 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
       */
      public Builder putAllLabels(
          java.util.Map values) {
        internalGetMutableLabels().getMutableMap()
            .putAll(values);
        return this;
      }
      private yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings settings_;
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.Builder, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.SettingsOrBuilder> settingsBuilder_;
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 5;
       * @return Whether the settings field is set.
       */
      public boolean hasSettings() {
        return settingsBuilder_ != null || settings_ != null;
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 5;
       * @return The settings.
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings getSettings() {
        if (settingsBuilder_ == null) {
          return settings_ == null ? yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.getDefaultInstance() : settings_;
        } else {
          return settingsBuilder_.getMessage();
        }
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 5;
       */
      public Builder setSettings(yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings value) {
        if (settingsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          settings_ = value;
          onChanged();
        } else {
          settingsBuilder_.setMessage(value);
        }
        return this;
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 5;
       */
      public Builder setSettings(
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.Builder builderForValue) {
        if (settingsBuilder_ == null) {
          settings_ = builderForValue.build();
          onChanged();
        } else {
          settingsBuilder_.setMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 5;
       */
      public Builder mergeSettings(yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings value) {
        if (settingsBuilder_ == null) {
          if (settings_ != null) {
            settings_ =
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.newBuilder(settings_).mergeFrom(value).buildPartial();
          } else {
            settings_ = value;
          }
          onChanged();
        } else {
          settingsBuilder_.mergeFrom(value);
        }
        return this;
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 5;
       */
      public Builder clearSettings() {
        if (settingsBuilder_ == null) {
          settings_ = null;
          onChanged();
        } else {
          settings_ = null;
          settingsBuilder_ = null;
        }
        return this;
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 5;
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.Builder getSettingsBuilder() {
        
        onChanged();
        return getSettingsFieldBuilder().getBuilder();
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 5;
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.SettingsOrBuilder getSettingsOrBuilder() {
        if (settingsBuilder_ != null) {
          return settingsBuilder_.getMessageOrBuilder();
        } else {
          return settings_ == null ?
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.getDefaultInstance() : settings_;
        }
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 5;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.Builder, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.SettingsOrBuilder> 
          getSettingsFieldBuilder() {
        if (settingsBuilder_ == null) {
          settingsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.Builder, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.SettingsOrBuilder>(
                  getSettings(),
                  getParentForChildren(),
                  isClean());
          settings_ = null;
        }
        return settingsBuilder_;
      }
      private yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits limits_;
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.Builder, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.LimitsOrBuilder> limitsBuilder_;
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 6;
       * @return Whether the limits field is set.
       */
      public boolean hasLimits() {
        return limitsBuilder_ != null || limits_ != null;
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 6;
       * @return The limits.
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits getLimits() {
        if (limitsBuilder_ == null) {
          return limits_ == null ? yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.getDefaultInstance() : limits_;
        } else {
          return limitsBuilder_.getMessage();
        }
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 6;
       */
      public Builder setLimits(yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits value) {
        if (limitsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          limits_ = value;
          onChanged();
        } else {
          limitsBuilder_.setMessage(value);
        }
        return this;
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 6;
       */
      public Builder setLimits(
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.Builder builderForValue) {
        if (limitsBuilder_ == null) {
          limits_ = builderForValue.build();
          onChanged();
        } else {
          limitsBuilder_.setMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 6;
       */
      public Builder mergeLimits(yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits value) {
        if (limitsBuilder_ == null) {
          if (limits_ != null) {
            limits_ =
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.newBuilder(limits_).mergeFrom(value).buildPartial();
          } else {
            limits_ = value;
          }
          onChanged();
        } else {
          limitsBuilder_.mergeFrom(value);
        }
        return this;
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 6;
       */
      public Builder clearLimits() {
        if (limitsBuilder_ == null) {
          limits_ = null;
          onChanged();
        } else {
          limits_ = null;
          limitsBuilder_ = null;
        }
        return this;
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 6;
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.Builder getLimitsBuilder() {
        
        onChanged();
        return getLimitsFieldBuilder().getBuilder();
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 6;
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.LimitsOrBuilder getLimitsOrBuilder() {
        if (limitsBuilder_ != null) {
          return limitsBuilder_.getMessageOrBuilder();
        } else {
          return limits_ == null ?
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.getDefaultInstance() : limits_;
        }
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 6;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.Builder, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.LimitsOrBuilder> 
          getLimitsFieldBuilder() {
        if (limitsBuilder_ == null) {
          limitsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.Builder, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.LimitsOrBuilder>(
                  getLimits(),
                  getParentForChildren(),
                  isClean());
          limits_ = null;
        }
        return limitsBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.CreateProjectRequest)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.CreateProjectRequest)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public CreateProjectRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new CreateProjectRequest(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface CreateProjectMetadataOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.CreateProjectMetadata)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the project that is being created.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the project that is being created.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.CreateProjectMetadata}
   */
  public static final class CreateProjectMetadata extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.CreateProjectMetadata)
      CreateProjectMetadataOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use CreateProjectMetadata.newBuilder() to construct.
    private CreateProjectMetadata(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private CreateProjectMetadata() {
      projectId_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new CreateProjectMetadata();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private CreateProjectMetadata(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CreateProjectMetadata_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CreateProjectMetadata_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata.Builder.class);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the project that is being created.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the project that is being created.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.CreateProjectMetadata}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.CreateProjectMetadata)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadataOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CreateProjectMetadata_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CreateProjectMetadata_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CreateProjectMetadata_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata(this);
        result.projectId_ = projectId_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the project that is being created.
       * 
       *
       * string project_id = 1;
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the project that is being created.
       * 
       *
       * string project_id = 1;
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the project that is being created.
       * 
       *
       * string project_id = 1;
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project that is being created.
       * 
       *
       * string project_id = 1;
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project that is being created.
       * 
       *
       * string project_id = 1;
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.CreateProjectMetadata)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.CreateProjectMetadata)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public CreateProjectMetadata parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new CreateProjectMetadata(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CreateProjectMetadata getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface UpdateProjectRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.UpdateProjectRequest)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the Project resource to update.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the Project resource to update.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
    /**
     * 
     * Field mask that specifies which fields of the Project resource are going to be updated.
     * 
     *
     * .google.protobuf.FieldMask update_mask = 2;
     * @return Whether the updateMask field is set.
     */
    boolean hasUpdateMask();
    /**
     * 
     * Field mask that specifies which fields of the Project resource are going to be updated.
     * 
     *
     * .google.protobuf.FieldMask update_mask = 2;
     * @return The updateMask.
     */
    com.google.protobuf.FieldMask getUpdateMask();
    /**
     * 
     * Field mask that specifies which fields of the Project resource are going to be updated.
     * 
     *
     * .google.protobuf.FieldMask update_mask = 2;
     */
    com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder();
    /**
     * 
     * Name of the project. 0-63 characters long.
     * 
     *
     * string name = 3 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
     * @return The name.
     */
    java.lang.String getName();
    /**
     * 
     * Name of the project. 0-63 characters long.
     * 
     *
     * string name = 3 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
     * @return The bytes for name.
     */
    com.google.protobuf.ByteString
        getNameBytes();
    /**
     * 
     * Description of the project. 0-256 characters long.
     * 
     *
     * string description = 4 [(.yandex.cloud.length) = "<=256"];
     * @return The description.
     */
    java.lang.String getDescription();
    /**
     * 
     * Description of the project. 0-256 characters long.
     * 
     *
     * string description = 4 [(.yandex.cloud.length) = "<=256"];
     * @return The bytes for description.
     */
    com.google.protobuf.ByteString
        getDescriptionBytes();
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    int getLabelsCount();
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    boolean containsLabels(
        java.lang.String key);
    /**
     * Use {@link #getLabelsMap()} instead.
     */
    @java.lang.Deprecated
    java.util.Map
    getLabels();
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    java.util.Map
    getLabelsMap();
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    java.lang.String getLabelsOrDefault(
        java.lang.String key,
        java.lang.String defaultValue);
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    java.lang.String getLabelsOrThrow(
        java.lang.String key);
    /**
     * 
     * Settings of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Settings settings = 6;
     * @return Whether the settings field is set.
     */
    boolean hasSettings();
    /**
     * 
     * Settings of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Settings settings = 6;
     * @return The settings.
     */
    yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings getSettings();
    /**
     * 
     * Settings of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Settings settings = 6;
     */
    yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.SettingsOrBuilder getSettingsOrBuilder();
    /**
     * 
     * Limits of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Limits limits = 7;
     * @return Whether the limits field is set.
     */
    boolean hasLimits();
    /**
     * 
     * Limits of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Limits limits = 7;
     * @return The limits.
     */
    yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits getLimits();
    /**
     * 
     * Limits of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Limits limits = 7;
     */
    yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.LimitsOrBuilder getLimitsOrBuilder();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.UpdateProjectRequest}
   */
  public static final class UpdateProjectRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.UpdateProjectRequest)
      UpdateProjectRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use UpdateProjectRequest.newBuilder() to construct.
    private UpdateProjectRequest(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private UpdateProjectRequest() {
      projectId_ = "";
      name_ = "";
      description_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new UpdateProjectRequest();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private UpdateProjectRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            case 18: {
              com.google.protobuf.FieldMask.Builder subBuilder = null;
              if (updateMask_ != null) {
                subBuilder = updateMask_.toBuilder();
              }
              updateMask_ = input.readMessage(com.google.protobuf.FieldMask.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(updateMask_);
                updateMask_ = subBuilder.buildPartial();
              }
              break;
            }
            case 26: {
              java.lang.String s = input.readStringRequireUtf8();
              name_ = s;
              break;
            }
            case 34: {
              java.lang.String s = input.readStringRequireUtf8();
              description_ = s;
              break;
            }
            case 42: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                labels_ = com.google.protobuf.MapField.newMapField(
                    LabelsDefaultEntryHolder.defaultEntry);
                mutable_bitField0_ |= 0x00000001;
              }
              com.google.protobuf.MapEntry
              labels__ = input.readMessage(
                  LabelsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
              labels_.getMutableMap().put(
                  labels__.getKey(), labels__.getValue());
              break;
            }
            case 50: {
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.Builder subBuilder = null;
              if (settings_ != null) {
                subBuilder = settings_.toBuilder();
              }
              settings_ = input.readMessage(yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(settings_);
                settings_ = subBuilder.buildPartial();
              }
              break;
            }
            case 58: {
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.Builder subBuilder = null;
              if (limits_ != null) {
                subBuilder = limits_.toBuilder();
              }
              limits_ = input.readMessage(yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(limits_);
                limits_ = subBuilder.buildPartial();
              }
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_descriptor;
    }
    @SuppressWarnings({"rawtypes"})
    @java.lang.Override
    protected com.google.protobuf.MapField internalGetMapField(
        int number) {
      switch (number) {
        case 5:
          return internalGetLabels();
        default:
          throw new RuntimeException(
              "Invalid map field number: " + number);
      }
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest.Builder.class);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the Project resource to update.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the Project resource to update.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int UPDATE_MASK_FIELD_NUMBER = 2;
    private com.google.protobuf.FieldMask updateMask_;
    /**
     * 
     * Field mask that specifies which fields of the Project resource are going to be updated.
     * 
     *
     * .google.protobuf.FieldMask update_mask = 2;
     * @return Whether the updateMask field is set.
     */
    @java.lang.Override
    public boolean hasUpdateMask() {
      return updateMask_ != null;
    }
    /**
     * 
     * Field mask that specifies which fields of the Project resource are going to be updated.
     * 
     *
     * .google.protobuf.FieldMask update_mask = 2;
     * @return The updateMask.
     */
    @java.lang.Override
    public com.google.protobuf.FieldMask getUpdateMask() {
      return updateMask_ == null ? com.google.protobuf.FieldMask.getDefaultInstance() : updateMask_;
    }
    /**
     * 
     * Field mask that specifies which fields of the Project resource are going to be updated.
     * 
     *
     * .google.protobuf.FieldMask update_mask = 2;
     */
    @java.lang.Override
    public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() {
      return getUpdateMask();
    }
    public static final int NAME_FIELD_NUMBER = 3;
    private volatile java.lang.Object name_;
    /**
     * 
     * Name of the project. 0-63 characters long.
     * 
     *
     * string name = 3 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
     * @return The name.
     */
    @java.lang.Override
    public java.lang.String getName() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        name_ = s;
        return s;
      }
    }
    /**
     * 
     * Name of the project. 0-63 characters long.
     * 
     *
     * string name = 3 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
     * @return The bytes for name.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getNameBytes() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int DESCRIPTION_FIELD_NUMBER = 4;
    private volatile java.lang.Object description_;
    /**
     * 
     * Description of the project. 0-256 characters long.
     * 
     *
     * string description = 4 [(.yandex.cloud.length) = "<=256"];
     * @return The description.
     */
    @java.lang.Override
    public java.lang.String getDescription() {
      java.lang.Object ref = description_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        description_ = s;
        return s;
      }
    }
    /**
     * 
     * Description of the project. 0-256 characters long.
     * 
     *
     * string description = 4 [(.yandex.cloud.length) = "<=256"];
     * @return The bytes for description.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getDescriptionBytes() {
      java.lang.Object ref = description_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        description_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int LABELS_FIELD_NUMBER = 5;
    private static final class LabelsDefaultEntryHolder {
      static final com.google.protobuf.MapEntry<
          java.lang.String, java.lang.String> defaultEntry =
              com.google.protobuf.MapEntry
              .newDefaultInstance(
                  yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_LabelsEntry_descriptor, 
                  com.google.protobuf.WireFormat.FieldType.STRING,
                  "",
                  com.google.protobuf.WireFormat.FieldType.STRING,
                  "");
    }
    private com.google.protobuf.MapField<
        java.lang.String, java.lang.String> labels_;
    private com.google.protobuf.MapField
    internalGetLabels() {
      if (labels_ == null) {
        return com.google.protobuf.MapField.emptyMapField(
            LabelsDefaultEntryHolder.defaultEntry);
      }
      return labels_;
    }
    public int getLabelsCount() {
      return internalGetLabels().getMap().size();
    }
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    @java.lang.Override
    public boolean containsLabels(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      return internalGetLabels().getMap().containsKey(key);
    }
    /**
     * Use {@link #getLabelsMap()} instead.
     */
    @java.lang.Override
    @java.lang.Deprecated
    public java.util.Map getLabels() {
      return getLabelsMap();
    }
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    @java.lang.Override
    public java.util.Map getLabelsMap() {
      return internalGetLabels().getMap();
    }
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    @java.lang.Override
    public java.lang.String getLabelsOrDefault(
        java.lang.String key,
        java.lang.String defaultValue) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map map =
          internalGetLabels().getMap();
      return map.containsKey(key) ? map.get(key) : defaultValue;
    }
    /**
     * 
     * Labels of the project.
     * 
     *
     * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
     */
    @java.lang.Override
    public java.lang.String getLabelsOrThrow(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map map =
          internalGetLabels().getMap();
      if (!map.containsKey(key)) {
        throw new java.lang.IllegalArgumentException();
      }
      return map.get(key);
    }
    public static final int SETTINGS_FIELD_NUMBER = 6;
    private yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings settings_;
    /**
     * 
     * Settings of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Settings settings = 6;
     * @return Whether the settings field is set.
     */
    @java.lang.Override
    public boolean hasSettings() {
      return settings_ != null;
    }
    /**
     * 
     * Settings of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Settings settings = 6;
     * @return The settings.
     */
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings getSettings() {
      return settings_ == null ? yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.getDefaultInstance() : settings_;
    }
    /**
     * 
     * Settings of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Settings settings = 6;
     */
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.SettingsOrBuilder getSettingsOrBuilder() {
      return getSettings();
    }
    public static final int LIMITS_FIELD_NUMBER = 7;
    private yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits limits_;
    /**
     * 
     * Limits of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Limits limits = 7;
     * @return Whether the limits field is set.
     */
    @java.lang.Override
    public boolean hasLimits() {
      return limits_ != null;
    }
    /**
     * 
     * Limits of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Limits limits = 7;
     * @return The limits.
     */
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits getLimits() {
      return limits_ == null ? yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.getDefaultInstance() : limits_;
    }
    /**
     * 
     * Limits of the project.
     * 
     *
     * .yandex.cloud.datasphere.v2.Project.Limits limits = 7;
     */
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.LimitsOrBuilder getLimitsOrBuilder() {
      return getLimits();
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      if (updateMask_ != null) {
        output.writeMessage(2, getUpdateMask());
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, name_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, description_);
      }
      com.google.protobuf.GeneratedMessageV3
        .serializeStringMapTo(
          output,
          internalGetLabels(),
          LabelsDefaultEntryHolder.defaultEntry,
          5);
      if (settings_ != null) {
        output.writeMessage(6, getSettings());
      }
      if (limits_ != null) {
        output.writeMessage(7, getLimits());
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      if (updateMask_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getUpdateMask());
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, name_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, description_);
      }
      for (java.util.Map.Entry entry
           : internalGetLabels().getMap().entrySet()) {
        com.google.protobuf.MapEntry
        labels__ = LabelsDefaultEntryHolder.defaultEntry.newBuilderForType()
            .setKey(entry.getKey())
            .setValue(entry.getValue())
            .build();
        size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(5, labels__);
      }
      if (settings_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(6, getSettings());
      }
      if (limits_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(7, getLimits());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (hasUpdateMask() != other.hasUpdateMask()) return false;
      if (hasUpdateMask()) {
        if (!getUpdateMask()
            .equals(other.getUpdateMask())) return false;
      }
      if (!getName()
          .equals(other.getName())) return false;
      if (!getDescription()
          .equals(other.getDescription())) return false;
      if (!internalGetLabels().equals(
          other.internalGetLabels())) return false;
      if (hasSettings() != other.hasSettings()) return false;
      if (hasSettings()) {
        if (!getSettings()
            .equals(other.getSettings())) return false;
      }
      if (hasLimits() != other.hasLimits()) return false;
      if (hasLimits()) {
        if (!getLimits()
            .equals(other.getLimits())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      if (hasUpdateMask()) {
        hash = (37 * hash) + UPDATE_MASK_FIELD_NUMBER;
        hash = (53 * hash) + getUpdateMask().hashCode();
      }
      hash = (37 * hash) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
      hash = (37 * hash) + DESCRIPTION_FIELD_NUMBER;
      hash = (53 * hash) + getDescription().hashCode();
      if (!internalGetLabels().getMap().isEmpty()) {
        hash = (37 * hash) + LABELS_FIELD_NUMBER;
        hash = (53 * hash) + internalGetLabels().hashCode();
      }
      if (hasSettings()) {
        hash = (37 * hash) + SETTINGS_FIELD_NUMBER;
        hash = (53 * hash) + getSettings().hashCode();
      }
      if (hasLimits()) {
        hash = (37 * hash) + LIMITS_FIELD_NUMBER;
        hash = (53 * hash) + getLimits().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.UpdateProjectRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.UpdateProjectRequest)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_descriptor;
      }
      @SuppressWarnings({"rawtypes"})
      protected com.google.protobuf.MapField internalGetMapField(
          int number) {
        switch (number) {
          case 5:
            return internalGetLabels();
          default:
            throw new RuntimeException(
                "Invalid map field number: " + number);
        }
      }
      @SuppressWarnings({"rawtypes"})
      protected com.google.protobuf.MapField internalGetMutableMapField(
          int number) {
        switch (number) {
          case 5:
            return internalGetMutableLabels();
          default:
            throw new RuntimeException(
                "Invalid map field number: " + number);
        }
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        if (updateMaskBuilder_ == null) {
          updateMask_ = null;
        } else {
          updateMask_ = null;
          updateMaskBuilder_ = null;
        }
        name_ = "";
        description_ = "";
        internalGetMutableLabels().clear();
        if (settingsBuilder_ == null) {
          settings_ = null;
        } else {
          settings_ = null;
          settingsBuilder_ = null;
        }
        if (limitsBuilder_ == null) {
          limits_ = null;
        } else {
          limits_ = null;
          limitsBuilder_ = null;
        }
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest(this);
        int from_bitField0_ = bitField0_;
        result.projectId_ = projectId_;
        if (updateMaskBuilder_ == null) {
          result.updateMask_ = updateMask_;
        } else {
          result.updateMask_ = updateMaskBuilder_.build();
        }
        result.name_ = name_;
        result.description_ = description_;
        result.labels_ = internalGetLabels();
        result.labels_.makeImmutable();
        if (settingsBuilder_ == null) {
          result.settings_ = settings_;
        } else {
          result.settings_ = settingsBuilder_.build();
        }
        if (limitsBuilder_ == null) {
          result.limits_ = limits_;
        } else {
          result.limits_ = limitsBuilder_.build();
        }
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        if (other.hasUpdateMask()) {
          mergeUpdateMask(other.getUpdateMask());
        }
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (!other.getDescription().isEmpty()) {
          description_ = other.description_;
          onChanged();
        }
        internalGetMutableLabels().mergeFrom(
            other.internalGetLabels());
        if (other.hasSettings()) {
          mergeSettings(other.getSettings());
        }
        if (other.hasLimits()) {
          mergeLimits(other.getLimits());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the Project resource to update.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the Project resource to update.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the Project resource to update.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the Project resource to update.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the Project resource to update.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      private com.google.protobuf.FieldMask updateMask_;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.FieldMask, com.google.protobuf.FieldMask.Builder, com.google.protobuf.FieldMaskOrBuilder> updateMaskBuilder_;
      /**
       * 
       * Field mask that specifies which fields of the Project resource are going to be updated.
       * 
       *
       * .google.protobuf.FieldMask update_mask = 2;
       * @return Whether the updateMask field is set.
       */
      public boolean hasUpdateMask() {
        return updateMaskBuilder_ != null || updateMask_ != null;
      }
      /**
       * 
       * Field mask that specifies which fields of the Project resource are going to be updated.
       * 
       *
       * .google.protobuf.FieldMask update_mask = 2;
       * @return The updateMask.
       */
      public com.google.protobuf.FieldMask getUpdateMask() {
        if (updateMaskBuilder_ == null) {
          return updateMask_ == null ? com.google.protobuf.FieldMask.getDefaultInstance() : updateMask_;
        } else {
          return updateMaskBuilder_.getMessage();
        }
      }
      /**
       * 
       * Field mask that specifies which fields of the Project resource are going to be updated.
       * 
       *
       * .google.protobuf.FieldMask update_mask = 2;
       */
      public Builder setUpdateMask(com.google.protobuf.FieldMask value) {
        if (updateMaskBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          updateMask_ = value;
          onChanged();
        } else {
          updateMaskBuilder_.setMessage(value);
        }
        return this;
      }
      /**
       * 
       * Field mask that specifies which fields of the Project resource are going to be updated.
       * 
       *
       * .google.protobuf.FieldMask update_mask = 2;
       */
      public Builder setUpdateMask(
          com.google.protobuf.FieldMask.Builder builderForValue) {
        if (updateMaskBuilder_ == null) {
          updateMask_ = builderForValue.build();
          onChanged();
        } else {
          updateMaskBuilder_.setMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * Field mask that specifies which fields of the Project resource are going to be updated.
       * 
       *
       * .google.protobuf.FieldMask update_mask = 2;
       */
      public Builder mergeUpdateMask(com.google.protobuf.FieldMask value) {
        if (updateMaskBuilder_ == null) {
          if (updateMask_ != null) {
            updateMask_ =
              com.google.protobuf.FieldMask.newBuilder(updateMask_).mergeFrom(value).buildPartial();
          } else {
            updateMask_ = value;
          }
          onChanged();
        } else {
          updateMaskBuilder_.mergeFrom(value);
        }
        return this;
      }
      /**
       * 
       * Field mask that specifies which fields of the Project resource are going to be updated.
       * 
       *
       * .google.protobuf.FieldMask update_mask = 2;
       */
      public Builder clearUpdateMask() {
        if (updateMaskBuilder_ == null) {
          updateMask_ = null;
          onChanged();
        } else {
          updateMask_ = null;
          updateMaskBuilder_ = null;
        }
        return this;
      }
      /**
       * 
       * Field mask that specifies which fields of the Project resource are going to be updated.
       * 
       *
       * .google.protobuf.FieldMask update_mask = 2;
       */
      public com.google.protobuf.FieldMask.Builder getUpdateMaskBuilder() {
        
        onChanged();
        return getUpdateMaskFieldBuilder().getBuilder();
      }
      /**
       * 
       * Field mask that specifies which fields of the Project resource are going to be updated.
       * 
       *
       * .google.protobuf.FieldMask update_mask = 2;
       */
      public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() {
        if (updateMaskBuilder_ != null) {
          return updateMaskBuilder_.getMessageOrBuilder();
        } else {
          return updateMask_ == null ?
              com.google.protobuf.FieldMask.getDefaultInstance() : updateMask_;
        }
      }
      /**
       * 
       * Field mask that specifies which fields of the Project resource are going to be updated.
       * 
       *
       * .google.protobuf.FieldMask update_mask = 2;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.FieldMask, com.google.protobuf.FieldMask.Builder, com.google.protobuf.FieldMaskOrBuilder> 
          getUpdateMaskFieldBuilder() {
        if (updateMaskBuilder_ == null) {
          updateMaskBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.google.protobuf.FieldMask, com.google.protobuf.FieldMask.Builder, com.google.protobuf.FieldMaskOrBuilder>(
                  getUpdateMask(),
                  getParentForChildren(),
                  isClean());
          updateMask_ = null;
        }
        return updateMaskBuilder_;
      }
      private java.lang.Object name_ = "";
      /**
       * 
       * Name of the project. 0-63 characters long.
       * 
       *
       * string name = 3 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
       * @return The name.
       */
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          name_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * Name of the project. 0-63 characters long.
       * 
       *
       * string name = 3 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
       * @return The bytes for name.
       */
      public com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * Name of the project. 0-63 characters long.
       * 
       *
       * string name = 3 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
       * @param value The name to set.
       * @return This builder for chaining.
       */
      public Builder setName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        name_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Name of the project. 0-63 characters long.
       * 
       *
       * string name = 3 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
       * @return This builder for chaining.
       */
      public Builder clearName() {
        
        name_ = getDefaultInstance().getName();
        onChanged();
        return this;
      }
      /**
       * 
       * Name of the project. 0-63 characters long.
       * 
       *
       * string name = 3 [(.yandex.cloud.pattern) = "[a-z]([-a-z0-9]{0,61}[a-z0-9])?", (.yandex.cloud.length) = "<=63"];
       * @param value The bytes for name to set.
       * @return This builder for chaining.
       */
      public Builder setNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        name_ = value;
        onChanged();
        return this;
      }
      private java.lang.Object description_ = "";
      /**
       * 
       * Description of the project. 0-256 characters long.
       * 
       *
       * string description = 4 [(.yandex.cloud.length) = "<=256"];
       * @return The description.
       */
      public java.lang.String getDescription() {
        java.lang.Object ref = description_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          description_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * Description of the project. 0-256 characters long.
       * 
       *
       * string description = 4 [(.yandex.cloud.length) = "<=256"];
       * @return The bytes for description.
       */
      public com.google.protobuf.ByteString
          getDescriptionBytes() {
        java.lang.Object ref = description_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          description_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * Description of the project. 0-256 characters long.
       * 
       *
       * string description = 4 [(.yandex.cloud.length) = "<=256"];
       * @param value The description to set.
       * @return This builder for chaining.
       */
      public Builder setDescription(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        description_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Description of the project. 0-256 characters long.
       * 
       *
       * string description = 4 [(.yandex.cloud.length) = "<=256"];
       * @return This builder for chaining.
       */
      public Builder clearDescription() {
        
        description_ = getDefaultInstance().getDescription();
        onChanged();
        return this;
      }
      /**
       * 
       * Description of the project. 0-256 characters long.
       * 
       *
       * string description = 4 [(.yandex.cloud.length) = "<=256"];
       * @param value The bytes for description to set.
       * @return This builder for chaining.
       */
      public Builder setDescriptionBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        description_ = value;
        onChanged();
        return this;
      }
      private com.google.protobuf.MapField<
          java.lang.String, java.lang.String> labels_;
      private com.google.protobuf.MapField
      internalGetLabels() {
        if (labels_ == null) {
          return com.google.protobuf.MapField.emptyMapField(
              LabelsDefaultEntryHolder.defaultEntry);
        }
        return labels_;
      }
      private com.google.protobuf.MapField
      internalGetMutableLabels() {
        onChanged();;
        if (labels_ == null) {
          labels_ = com.google.protobuf.MapField.newMapField(
              LabelsDefaultEntryHolder.defaultEntry);
        }
        if (!labels_.isMutable()) {
          labels_ = labels_.copy();
        }
        return labels_;
      }
      public int getLabelsCount() {
        return internalGetLabels().getMap().size();
      }
      /**
       * 
       * Labels of the project.
       * 
       *
       * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
       */
      @java.lang.Override
      public boolean containsLabels(
          java.lang.String key) {
        if (key == null) { throw new NullPointerException("map key"); }
        return internalGetLabels().getMap().containsKey(key);
      }
      /**
       * Use {@link #getLabelsMap()} instead.
       */
      @java.lang.Override
      @java.lang.Deprecated
      public java.util.Map getLabels() {
        return getLabelsMap();
      }
      /**
       * 
       * Labels of the project.
       * 
       *
       * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
       */
      @java.lang.Override
      public java.util.Map getLabelsMap() {
        return internalGetLabels().getMap();
      }
      /**
       * 
       * Labels of the project.
       * 
       *
       * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
       */
      @java.lang.Override
      public java.lang.String getLabelsOrDefault(
          java.lang.String key,
          java.lang.String defaultValue) {
        if (key == null) { throw new NullPointerException("map key"); }
        java.util.Map map =
            internalGetLabels().getMap();
        return map.containsKey(key) ? map.get(key) : defaultValue;
      }
      /**
       * 
       * Labels of the project.
       * 
       *
       * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
       */
      @java.lang.Override
      public java.lang.String getLabelsOrThrow(
          java.lang.String key) {
        if (key == null) { throw new NullPointerException("map key"); }
        java.util.Map map =
            internalGetLabels().getMap();
        if (!map.containsKey(key)) {
          throw new java.lang.IllegalArgumentException();
        }
        return map.get(key);
      }
      public Builder clearLabels() {
        internalGetMutableLabels().getMutableMap()
            .clear();
        return this;
      }
      /**
       * 
       * Labels of the project.
       * 
       *
       * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
       */
      public Builder removeLabels(
          java.lang.String key) {
        if (key == null) { throw new NullPointerException("map key"); }
        internalGetMutableLabels().getMutableMap()
            .remove(key);
        return this;
      }
      /**
       * Use alternate mutation accessors instead.
       */
      @java.lang.Deprecated
      public java.util.Map
      getMutableLabels() {
        return internalGetMutableLabels().getMutableMap();
      }
      /**
       * 
       * Labels of the project.
       * 
       *
       * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
       */
      public Builder putLabels(
          java.lang.String key,
          java.lang.String value) {
        if (key == null) { throw new NullPointerException("map key"); }
        if (value == null) {
  throw new NullPointerException("map value");
}
        internalGetMutableLabels().getMutableMap()
            .put(key, value);
        return this;
      }
      /**
       * 
       * Labels of the project.
       * 
       *
       * map<string, string> labels = 5 [(.yandex.cloud.pattern) = "[-_0-9a-z]*", (.yandex.cloud.size) = "<=64", (.yandex.cloud.length) = "<=63", (.yandex.cloud.map_key) = { ... }
       */
      public Builder putAllLabels(
          java.util.Map values) {
        internalGetMutableLabels().getMutableMap()
            .putAll(values);
        return this;
      }
      private yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings settings_;
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.Builder, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.SettingsOrBuilder> settingsBuilder_;
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 6;
       * @return Whether the settings field is set.
       */
      public boolean hasSettings() {
        return settingsBuilder_ != null || settings_ != null;
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 6;
       * @return The settings.
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings getSettings() {
        if (settingsBuilder_ == null) {
          return settings_ == null ? yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.getDefaultInstance() : settings_;
        } else {
          return settingsBuilder_.getMessage();
        }
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 6;
       */
      public Builder setSettings(yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings value) {
        if (settingsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          settings_ = value;
          onChanged();
        } else {
          settingsBuilder_.setMessage(value);
        }
        return this;
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 6;
       */
      public Builder setSettings(
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.Builder builderForValue) {
        if (settingsBuilder_ == null) {
          settings_ = builderForValue.build();
          onChanged();
        } else {
          settingsBuilder_.setMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 6;
       */
      public Builder mergeSettings(yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings value) {
        if (settingsBuilder_ == null) {
          if (settings_ != null) {
            settings_ =
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.newBuilder(settings_).mergeFrom(value).buildPartial();
          } else {
            settings_ = value;
          }
          onChanged();
        } else {
          settingsBuilder_.mergeFrom(value);
        }
        return this;
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 6;
       */
      public Builder clearSettings() {
        if (settingsBuilder_ == null) {
          settings_ = null;
          onChanged();
        } else {
          settings_ = null;
          settingsBuilder_ = null;
        }
        return this;
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 6;
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.Builder getSettingsBuilder() {
        
        onChanged();
        return getSettingsFieldBuilder().getBuilder();
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 6;
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.SettingsOrBuilder getSettingsOrBuilder() {
        if (settingsBuilder_ != null) {
          return settingsBuilder_.getMessageOrBuilder();
        } else {
          return settings_ == null ?
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.getDefaultInstance() : settings_;
        }
      }
      /**
       * 
       * Settings of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Settings settings = 6;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.Builder, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.SettingsOrBuilder> 
          getSettingsFieldBuilder() {
        if (settingsBuilder_ == null) {
          settingsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Settings.Builder, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.SettingsOrBuilder>(
                  getSettings(),
                  getParentForChildren(),
                  isClean());
          settings_ = null;
        }
        return settingsBuilder_;
      }
      private yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits limits_;
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.Builder, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.LimitsOrBuilder> limitsBuilder_;
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 7;
       * @return Whether the limits field is set.
       */
      public boolean hasLimits() {
        return limitsBuilder_ != null || limits_ != null;
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 7;
       * @return The limits.
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits getLimits() {
        if (limitsBuilder_ == null) {
          return limits_ == null ? yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.getDefaultInstance() : limits_;
        } else {
          return limitsBuilder_.getMessage();
        }
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 7;
       */
      public Builder setLimits(yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits value) {
        if (limitsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          limits_ = value;
          onChanged();
        } else {
          limitsBuilder_.setMessage(value);
        }
        return this;
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 7;
       */
      public Builder setLimits(
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.Builder builderForValue) {
        if (limitsBuilder_ == null) {
          limits_ = builderForValue.build();
          onChanged();
        } else {
          limitsBuilder_.setMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 7;
       */
      public Builder mergeLimits(yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits value) {
        if (limitsBuilder_ == null) {
          if (limits_ != null) {
            limits_ =
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.newBuilder(limits_).mergeFrom(value).buildPartial();
          } else {
            limits_ = value;
          }
          onChanged();
        } else {
          limitsBuilder_.mergeFrom(value);
        }
        return this;
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 7;
       */
      public Builder clearLimits() {
        if (limitsBuilder_ == null) {
          limits_ = null;
          onChanged();
        } else {
          limits_ = null;
          limitsBuilder_ = null;
        }
        return this;
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 7;
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.Builder getLimitsBuilder() {
        
        onChanged();
        return getLimitsFieldBuilder().getBuilder();
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 7;
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.LimitsOrBuilder getLimitsOrBuilder() {
        if (limitsBuilder_ != null) {
          return limitsBuilder_.getMessageOrBuilder();
        } else {
          return limits_ == null ?
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.getDefaultInstance() : limits_;
        }
      }
      /**
       * 
       * Limits of the project.
       * 
       *
       * .yandex.cloud.datasphere.v2.Project.Limits limits = 7;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.Builder, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.LimitsOrBuilder> 
          getLimitsFieldBuilder() {
        if (limitsBuilder_ == null) {
          limitsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Limits.Builder, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.LimitsOrBuilder>(
                  getLimits(),
                  getParentForChildren(),
                  isClean());
          limits_ = null;
        }
        return limitsBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.UpdateProjectRequest)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.UpdateProjectRequest)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public UpdateProjectRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new UpdateProjectRequest(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface UpdateProjectMetadataOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.UpdateProjectMetadata)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the project that is being updated.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the project that is being updated.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.UpdateProjectMetadata}
   */
  public static final class UpdateProjectMetadata extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.UpdateProjectMetadata)
      UpdateProjectMetadataOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use UpdateProjectMetadata.newBuilder() to construct.
    private UpdateProjectMetadata(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private UpdateProjectMetadata() {
      projectId_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new UpdateProjectMetadata();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private UpdateProjectMetadata(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectMetadata_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectMetadata_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata.Builder.class);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the project that is being updated.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the project that is being updated.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.UpdateProjectMetadata}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.UpdateProjectMetadata)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadataOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectMetadata_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectMetadata_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectMetadata_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata(this);
        result.projectId_ = projectId_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the project that is being updated.
       * 
       *
       * string project_id = 1;
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the project that is being updated.
       * 
       *
       * string project_id = 1;
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the project that is being updated.
       * 
       *
       * string project_id = 1;
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project that is being updated.
       * 
       *
       * string project_id = 1;
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project that is being updated.
       * 
       *
       * string project_id = 1;
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.UpdateProjectMetadata)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.UpdateProjectMetadata)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public UpdateProjectMetadata parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new UpdateProjectMetadata(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectMetadata getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface DeleteProjectRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.DeleteProjectRequest)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the Project resource to delete.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the Project resource to delete.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.DeleteProjectRequest}
   */
  public static final class DeleteProjectRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.DeleteProjectRequest)
      DeleteProjectRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use DeleteProjectRequest.newBuilder() to construct.
    private DeleteProjectRequest(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private DeleteProjectRequest() {
      projectId_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new DeleteProjectRequest();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private DeleteProjectRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_DeleteProjectRequest_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_DeleteProjectRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest.Builder.class);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the Project resource to delete.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the Project resource to delete.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.DeleteProjectRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.DeleteProjectRequest)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_DeleteProjectRequest_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_DeleteProjectRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_DeleteProjectRequest_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest(this);
        result.projectId_ = projectId_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the Project resource to delete.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the Project resource to delete.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the Project resource to delete.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the Project resource to delete.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the Project resource to delete.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.DeleteProjectRequest)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.DeleteProjectRequest)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public DeleteProjectRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new DeleteProjectRequest(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface DeleteProjectMetadataOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.DeleteProjectMetadata)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the project that is being deleted.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the project that is being deleted.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.DeleteProjectMetadata}
   */
  public static final class DeleteProjectMetadata extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.DeleteProjectMetadata)
      DeleteProjectMetadataOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use DeleteProjectMetadata.newBuilder() to construct.
    private DeleteProjectMetadata(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private DeleteProjectMetadata() {
      projectId_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new DeleteProjectMetadata();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private DeleteProjectMetadata(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_DeleteProjectMetadata_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_DeleteProjectMetadata_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata.Builder.class);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the project that is being deleted.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the project that is being deleted.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.DeleteProjectMetadata}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.DeleteProjectMetadata)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadataOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_DeleteProjectMetadata_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_DeleteProjectMetadata_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_DeleteProjectMetadata_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata(this);
        result.projectId_ = projectId_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the project that is being deleted.
       * 
       *
       * string project_id = 1;
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the project that is being deleted.
       * 
       *
       * string project_id = 1;
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the project that is being deleted.
       * 
       *
       * string project_id = 1;
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project that is being deleted.
       * 
       *
       * string project_id = 1;
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project that is being deleted.
       * 
       *
       * string project_id = 1;
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.DeleteProjectMetadata)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.DeleteProjectMetadata)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public DeleteProjectMetadata parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new DeleteProjectMetadata(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.DeleteProjectMetadata getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface OpenProjectRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.OpenProjectRequest)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the Project resource to open.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the Project resource to open.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.OpenProjectRequest}
   */
  public static final class OpenProjectRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.OpenProjectRequest)
      OpenProjectRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use OpenProjectRequest.newBuilder() to construct.
    private OpenProjectRequest(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private OpenProjectRequest() {
      projectId_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new OpenProjectRequest();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private OpenProjectRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_OpenProjectRequest_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_OpenProjectRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest.Builder.class);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the Project resource to open.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the Project resource to open.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.OpenProjectRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.OpenProjectRequest)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_OpenProjectRequest_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_OpenProjectRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_OpenProjectRequest_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest(this);
        result.projectId_ = projectId_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the Project resource to open.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the Project resource to open.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the Project resource to open.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the Project resource to open.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the Project resource to open.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.OpenProjectRequest)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.OpenProjectRequest)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public OpenProjectRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new OpenProjectRequest(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface OpenProjectMetadataOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.OpenProjectMetadata)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the project that is being opened.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the project that is being opened.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
    /**
     * 
     * Project opening status.
     * 
     *
     * .yandex.cloud.datasphere.v2.OpenProjectMetadata.OpenProjectStatus status = 2;
     * @return The enum numeric value on the wire for status.
     */
    int getStatusValue();
    /**
     * 
     * Project opening status.
     * 
     *
     * .yandex.cloud.datasphere.v2.OpenProjectMetadata.OpenProjectStatus status = 2;
     * @return The status.
     */
    yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.OpenProjectStatus getStatus();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.OpenProjectMetadata}
   */
  public static final class OpenProjectMetadata extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.OpenProjectMetadata)
      OpenProjectMetadataOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use OpenProjectMetadata.newBuilder() to construct.
    private OpenProjectMetadata(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private OpenProjectMetadata() {
      projectId_ = "";
      status_ = 0;
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new OpenProjectMetadata();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private OpenProjectMetadata(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            case 16: {
              int rawValue = input.readEnum();
              status_ = rawValue;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_OpenProjectMetadata_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_OpenProjectMetadata_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.Builder.class);
    }
    /**
     * Protobuf enum {@code yandex.cloud.datasphere.v2.OpenProjectMetadata.OpenProjectStatus}
     */
    public enum OpenProjectStatus
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * OPEN_PROJECT_STATUS_UNSPECIFIED = 0;
       */
      OPEN_PROJECT_STATUS_UNSPECIFIED(0),
      /**
       * 
       * Closing previous IDE instance.
       * 
       *
       * OPEN_PROJECT_STATUS_CLOSING_IDE = 1;
       */
      OPEN_PROJECT_STATUS_CLOSING_IDE(1),
      /**
       * 
       * Unzipping project.
       * 
       *
       * OPEN_PROJECT_STATUS_UNZIPPING_PROJECT = 2;
       */
      OPEN_PROJECT_STATUS_UNZIPPING_PROJECT(2),
      /**
       * 
       * Allocating VM for the project.
       * 
       *
       * OPEN_PROJECT_STATUS_ALLOCATING_VM = 3;
       */
      OPEN_PROJECT_STATUS_ALLOCATING_VM(3),
      /**
       * 
       * Allocating resources for the project.
       * 
       *
       * OPEN_PROJECT_STATUS_ALLOCATING_RESOURCES = 4;
       */
      OPEN_PROJECT_STATUS_ALLOCATING_RESOURCES(4),
      /**
       * 
       * Starting IDE.
       * 
       *
       * OPEN_PROJECT_STATUS_STARTING_IDE = 5;
       */
      OPEN_PROJECT_STATUS_STARTING_IDE(5),
      /**
       * 
       * Applying checkpoint to project.
       * 
       *
       * OPEN_PROJECT_STATUS_APPLYING_CHECKPOINT = 6;
       */
      OPEN_PROJECT_STATUS_APPLYING_CHECKPOINT(6),
      /**
       * 
       * Unknown open project status.
       * 
       *
       * OPEN_PROJECT_STATUS_UNKNOWN = 7;
       */
      OPEN_PROJECT_STATUS_UNKNOWN(7),
      UNRECOGNIZED(-1),
      ;
      /**
       * OPEN_PROJECT_STATUS_UNSPECIFIED = 0;
       */
      public static final int OPEN_PROJECT_STATUS_UNSPECIFIED_VALUE = 0;
      /**
       * 
       * Closing previous IDE instance.
       * 
       *
       * OPEN_PROJECT_STATUS_CLOSING_IDE = 1;
       */
      public static final int OPEN_PROJECT_STATUS_CLOSING_IDE_VALUE = 1;
      /**
       * 
       * Unzipping project.
       * 
       *
       * OPEN_PROJECT_STATUS_UNZIPPING_PROJECT = 2;
       */
      public static final int OPEN_PROJECT_STATUS_UNZIPPING_PROJECT_VALUE = 2;
      /**
       * 
       * Allocating VM for the project.
       * 
       *
       * OPEN_PROJECT_STATUS_ALLOCATING_VM = 3;
       */
      public static final int OPEN_PROJECT_STATUS_ALLOCATING_VM_VALUE = 3;
      /**
       * 
       * Allocating resources for the project.
       * 
       *
       * OPEN_PROJECT_STATUS_ALLOCATING_RESOURCES = 4;
       */
      public static final int OPEN_PROJECT_STATUS_ALLOCATING_RESOURCES_VALUE = 4;
      /**
       * 
       * Starting IDE.
       * 
       *
       * OPEN_PROJECT_STATUS_STARTING_IDE = 5;
       */
      public static final int OPEN_PROJECT_STATUS_STARTING_IDE_VALUE = 5;
      /**
       * 
       * Applying checkpoint to project.
       * 
       *
       * OPEN_PROJECT_STATUS_APPLYING_CHECKPOINT = 6;
       */
      public static final int OPEN_PROJECT_STATUS_APPLYING_CHECKPOINT_VALUE = 6;
      /**
       * 
       * Unknown open project status.
       * 
       *
       * OPEN_PROJECT_STATUS_UNKNOWN = 7;
       */
      public static final int OPEN_PROJECT_STATUS_UNKNOWN_VALUE = 7;
      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        return value;
      }
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static OpenProjectStatus valueOf(int value) {
        return forNumber(value);
      }
      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static OpenProjectStatus forNumber(int value) {
        switch (value) {
          case 0: return OPEN_PROJECT_STATUS_UNSPECIFIED;
          case 1: return OPEN_PROJECT_STATUS_CLOSING_IDE;
          case 2: return OPEN_PROJECT_STATUS_UNZIPPING_PROJECT;
          case 3: return OPEN_PROJECT_STATUS_ALLOCATING_VM;
          case 4: return OPEN_PROJECT_STATUS_ALLOCATING_RESOURCES;
          case 5: return OPEN_PROJECT_STATUS_STARTING_IDE;
          case 6: return OPEN_PROJECT_STATUS_APPLYING_CHECKPOINT;
          case 7: return OPEN_PROJECT_STATUS_UNKNOWN;
          default: return null;
        }
      }
      public static com.google.protobuf.Internal.EnumLiteMap
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.google.protobuf.Internal.EnumLiteMap<
          OpenProjectStatus> internalValueMap =
            new com.google.protobuf.Internal.EnumLiteMap() {
              public OpenProjectStatus findValueByNumber(int number) {
                return OpenProjectStatus.forNumber(number);
              }
            };
      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalStateException(
              "Can't get the descriptor of an unrecognized enum value.");
        }
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.getDescriptor().getEnumTypes().get(0);
      }
      private static final OpenProjectStatus[] VALUES = values();
      public static OpenProjectStatus valueOf(
          com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        if (desc.getIndex() == -1) {
          return UNRECOGNIZED;
        }
        return VALUES[desc.getIndex()];
      }
      private final int value;
      private OpenProjectStatus(int value) {
        this.value = value;
      }
      // @@protoc_insertion_point(enum_scope:yandex.cloud.datasphere.v2.OpenProjectMetadata.OpenProjectStatus)
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the project that is being opened.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the project that is being opened.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int STATUS_FIELD_NUMBER = 2;
    private int status_;
    /**
     * 
     * Project opening status.
     * 
     *
     * .yandex.cloud.datasphere.v2.OpenProjectMetadata.OpenProjectStatus status = 2;
     * @return The enum numeric value on the wire for status.
     */
    @java.lang.Override public int getStatusValue() {
      return status_;
    }
    /**
     * 
     * Project opening status.
     * 
     *
     * .yandex.cloud.datasphere.v2.OpenProjectMetadata.OpenProjectStatus status = 2;
     * @return The status.
     */
    @java.lang.Override public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.OpenProjectStatus getStatus() {
      @SuppressWarnings("deprecation")
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.OpenProjectStatus result = yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.OpenProjectStatus.valueOf(status_);
      return result == null ? yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.OpenProjectStatus.UNRECOGNIZED : result;
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      if (status_ != yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.OpenProjectStatus.OPEN_PROJECT_STATUS_UNSPECIFIED.getNumber()) {
        output.writeEnum(2, status_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      if (status_ != yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.OpenProjectStatus.OPEN_PROJECT_STATUS_UNSPECIFIED.getNumber()) {
        size += com.google.protobuf.CodedOutputStream
          .computeEnumSize(2, status_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (status_ != other.status_) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      hash = (37 * hash) + STATUS_FIELD_NUMBER;
      hash = (53 * hash) + status_;
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.OpenProjectMetadata}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.OpenProjectMetadata)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadataOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_OpenProjectMetadata_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_OpenProjectMetadata_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        status_ = 0;
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_OpenProjectMetadata_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata(this);
        result.projectId_ = projectId_;
        result.status_ = status_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        if (other.status_ != 0) {
          setStatusValue(other.getStatusValue());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the project that is being opened.
       * 
       *
       * string project_id = 1;
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the project that is being opened.
       * 
       *
       * string project_id = 1;
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the project that is being opened.
       * 
       *
       * string project_id = 1;
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project that is being opened.
       * 
       *
       * string project_id = 1;
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project that is being opened.
       * 
       *
       * string project_id = 1;
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      private int status_ = 0;
      /**
       * 
       * Project opening status.
       * 
       *
       * .yandex.cloud.datasphere.v2.OpenProjectMetadata.OpenProjectStatus status = 2;
       * @return The enum numeric value on the wire for status.
       */
      @java.lang.Override public int getStatusValue() {
        return status_;
      }
      /**
       * 
       * Project opening status.
       * 
       *
       * .yandex.cloud.datasphere.v2.OpenProjectMetadata.OpenProjectStatus status = 2;
       * @param value The enum numeric value on the wire for status to set.
       * @return This builder for chaining.
       */
      public Builder setStatusValue(int value) {
        
        status_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Project opening status.
       * 
       *
       * .yandex.cloud.datasphere.v2.OpenProjectMetadata.OpenProjectStatus status = 2;
       * @return The status.
       */
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.OpenProjectStatus getStatus() {
        @SuppressWarnings("deprecation")
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.OpenProjectStatus result = yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.OpenProjectStatus.valueOf(status_);
        return result == null ? yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.OpenProjectStatus.UNRECOGNIZED : result;
      }
      /**
       * 
       * Project opening status.
       * 
       *
       * .yandex.cloud.datasphere.v2.OpenProjectMetadata.OpenProjectStatus status = 2;
       * @param value The status to set.
       * @return This builder for chaining.
       */
      public Builder setStatus(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata.OpenProjectStatus value) {
        if (value == null) {
          throw new NullPointerException();
        }
        
        status_ = value.getNumber();
        onChanged();
        return this;
      }
      /**
       * 
       * Project opening status.
       * 
       *
       * .yandex.cloud.datasphere.v2.OpenProjectMetadata.OpenProjectStatus status = 2;
       * @return This builder for chaining.
       */
      public Builder clearStatus() {
        
        status_ = 0;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.OpenProjectMetadata)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.OpenProjectMetadata)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public OpenProjectMetadata parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new OpenProjectMetadata(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectMetadata getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface OpenProjectResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.OpenProjectResponse)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * URL of the project that is being opened.
     * Make GET request to [project_url] with sessionToken query parameter equals to [session_token]
     * or POST request to [project_url] with sessionToken body parameter equals to [session_token]
     * to fetch Datasphere web interface.
     * 
     *
     * string project_url = 1;
     * @return The projectUrl.
     */
    java.lang.String getProjectUrl();
    /**
     * 
     * URL of the project that is being opened.
     * Make GET request to [project_url] with sessionToken query parameter equals to [session_token]
     * or POST request to [project_url] with sessionToken body parameter equals to [session_token]
     * to fetch Datasphere web interface.
     * 
     *
     * string project_url = 1;
     * @return The bytes for projectUrl.
     */
    com.google.protobuf.ByteString
        getProjectUrlBytes();
    /**
     * 
     * Session token of the project that is being opened.
     * 
     *
     * string session_token = 2;
     * @return The sessionToken.
     */
    java.lang.String getSessionToken();
    /**
     * 
     * Session token of the project that is being opened.
     * 
     *
     * string session_token = 2;
     * @return The bytes for sessionToken.
     */
    com.google.protobuf.ByteString
        getSessionTokenBytes();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.OpenProjectResponse}
   */
  public static final class OpenProjectResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.OpenProjectResponse)
      OpenProjectResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use OpenProjectResponse.newBuilder() to construct.
    private OpenProjectResponse(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private OpenProjectResponse() {
      projectUrl_ = "";
      sessionToken_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new OpenProjectResponse();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private OpenProjectResponse(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectUrl_ = s;
              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();
              sessionToken_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_OpenProjectResponse_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_OpenProjectResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse.Builder.class);
    }
    public static final int PROJECT_URL_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectUrl_;
    /**
     * 
     * URL of the project that is being opened.
     * Make GET request to [project_url] with sessionToken query parameter equals to [session_token]
     * or POST request to [project_url] with sessionToken body parameter equals to [session_token]
     * to fetch Datasphere web interface.
     * 
     *
     * string project_url = 1;
     * @return The projectUrl.
     */
    @java.lang.Override
    public java.lang.String getProjectUrl() {
      java.lang.Object ref = projectUrl_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectUrl_ = s;
        return s;
      }
    }
    /**
     * 
     * URL of the project that is being opened.
     * Make GET request to [project_url] with sessionToken query parameter equals to [session_token]
     * or POST request to [project_url] with sessionToken body parameter equals to [session_token]
     * to fetch Datasphere web interface.
     * 
     *
     * string project_url = 1;
     * @return The bytes for projectUrl.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectUrlBytes() {
      java.lang.Object ref = projectUrl_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectUrl_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int SESSION_TOKEN_FIELD_NUMBER = 2;
    private volatile java.lang.Object sessionToken_;
    /**
     * 
     * Session token of the project that is being opened.
     * 
     *
     * string session_token = 2;
     * @return The sessionToken.
     */
    @java.lang.Override
    public java.lang.String getSessionToken() {
      java.lang.Object ref = sessionToken_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        sessionToken_ = s;
        return s;
      }
    }
    /**
     * 
     * Session token of the project that is being opened.
     * 
     *
     * string session_token = 2;
     * @return The bytes for sessionToken.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getSessionTokenBytes() {
      java.lang.Object ref = sessionToken_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        sessionToken_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectUrl_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectUrl_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionToken_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, sessionToken_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectUrl_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectUrl_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionToken_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, sessionToken_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse) obj;
      if (!getProjectUrl()
          .equals(other.getProjectUrl())) return false;
      if (!getSessionToken()
          .equals(other.getSessionToken())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_URL_FIELD_NUMBER;
      hash = (53 * hash) + getProjectUrl().hashCode();
      hash = (37 * hash) + SESSION_TOKEN_FIELD_NUMBER;
      hash = (53 * hash) + getSessionToken().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.OpenProjectResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.OpenProjectResponse)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_OpenProjectResponse_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_OpenProjectResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectUrl_ = "";
        sessionToken_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_OpenProjectResponse_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse(this);
        result.projectUrl_ = projectUrl_;
        result.sessionToken_ = sessionToken_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse.getDefaultInstance()) return this;
        if (!other.getProjectUrl().isEmpty()) {
          projectUrl_ = other.projectUrl_;
          onChanged();
        }
        if (!other.getSessionToken().isEmpty()) {
          sessionToken_ = other.sessionToken_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object projectUrl_ = "";
      /**
       * 
       * URL of the project that is being opened.
       * Make GET request to [project_url] with sessionToken query parameter equals to [session_token]
       * or POST request to [project_url] with sessionToken body parameter equals to [session_token]
       * to fetch Datasphere web interface.
       * 
       *
       * string project_url = 1;
       * @return The projectUrl.
       */
      public java.lang.String getProjectUrl() {
        java.lang.Object ref = projectUrl_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectUrl_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * URL of the project that is being opened.
       * Make GET request to [project_url] with sessionToken query parameter equals to [session_token]
       * or POST request to [project_url] with sessionToken body parameter equals to [session_token]
       * to fetch Datasphere web interface.
       * 
       *
       * string project_url = 1;
       * @return The bytes for projectUrl.
       */
      public com.google.protobuf.ByteString
          getProjectUrlBytes() {
        java.lang.Object ref = projectUrl_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectUrl_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * URL of the project that is being opened.
       * Make GET request to [project_url] with sessionToken query parameter equals to [session_token]
       * or POST request to [project_url] with sessionToken body parameter equals to [session_token]
       * to fetch Datasphere web interface.
       * 
       *
       * string project_url = 1;
       * @param value The projectUrl to set.
       * @return This builder for chaining.
       */
      public Builder setProjectUrl(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectUrl_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * URL of the project that is being opened.
       * Make GET request to [project_url] with sessionToken query parameter equals to [session_token]
       * or POST request to [project_url] with sessionToken body parameter equals to [session_token]
       * to fetch Datasphere web interface.
       * 
       *
       * string project_url = 1;
       * @return This builder for chaining.
       */
      public Builder clearProjectUrl() {
        
        projectUrl_ = getDefaultInstance().getProjectUrl();
        onChanged();
        return this;
      }
      /**
       * 
       * URL of the project that is being opened.
       * Make GET request to [project_url] with sessionToken query parameter equals to [session_token]
       * or POST request to [project_url] with sessionToken body parameter equals to [session_token]
       * to fetch Datasphere web interface.
       * 
       *
       * string project_url = 1;
       * @param value The bytes for projectUrl to set.
       * @return This builder for chaining.
       */
      public Builder setProjectUrlBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectUrl_ = value;
        onChanged();
        return this;
      }
      private java.lang.Object sessionToken_ = "";
      /**
       * 
       * Session token of the project that is being opened.
       * 
       *
       * string session_token = 2;
       * @return The sessionToken.
       */
      public java.lang.String getSessionToken() {
        java.lang.Object ref = sessionToken_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          sessionToken_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * Session token of the project that is being opened.
       * 
       *
       * string session_token = 2;
       * @return The bytes for sessionToken.
       */
      public com.google.protobuf.ByteString
          getSessionTokenBytes() {
        java.lang.Object ref = sessionToken_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          sessionToken_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * Session token of the project that is being opened.
       * 
       *
       * string session_token = 2;
       * @param value The sessionToken to set.
       * @return This builder for chaining.
       */
      public Builder setSessionToken(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        sessionToken_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Session token of the project that is being opened.
       * 
       *
       * string session_token = 2;
       * @return This builder for chaining.
       */
      public Builder clearSessionToken() {
        
        sessionToken_ = getDefaultInstance().getSessionToken();
        onChanged();
        return this;
      }
      /**
       * 
       * Session token of the project that is being opened.
       * 
       *
       * string session_token = 2;
       * @param value The bytes for sessionToken to set.
       * @return This builder for chaining.
       */
      public Builder setSessionTokenBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        sessionToken_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.OpenProjectResponse)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.OpenProjectResponse)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public OpenProjectResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new OpenProjectResponse(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.OpenProjectResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface GetProjectRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.GetProjectRequest)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the Project resource to return.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the Project resource to return.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.GetProjectRequest}
   */
  public static final class GetProjectRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.GetProjectRequest)
      GetProjectRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use GetProjectRequest.newBuilder() to construct.
    private GetProjectRequest(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private GetProjectRequest() {
      projectId_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new GetProjectRequest();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private GetProjectRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetProjectRequest_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetProjectRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest.Builder.class);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the Project resource to return.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the Project resource to return.
     * To get the project ID use a [ProjectService.List] request.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.GetProjectRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.GetProjectRequest)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetProjectRequest_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetProjectRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetProjectRequest_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest(this);
        result.projectId_ = projectId_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the Project resource to return.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the Project resource to return.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the Project resource to return.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the Project resource to return.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the Project resource to return.
       * To get the project ID use a [ProjectService.List] request.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.GetProjectRequest)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.GetProjectRequest)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public GetProjectRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new GetProjectRequest(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetProjectRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface ListProjectsRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.ListProjectsRequest)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the community to list projects in.
     * 
     *
     * string community_id = 1 [(.yandex.cloud.required) = true];
     * @return The communityId.
     */
    java.lang.String getCommunityId();
    /**
     * 
     * ID of the community to list projects in.
     * 
     *
     * string community_id = 1 [(.yandex.cloud.required) = true];
     * @return The bytes for communityId.
     */
    com.google.protobuf.ByteString
        getCommunityIdBytes();
    /**
     * 
     * The maximum number of results per page to return. If the number of available
     * results is larger than [page_size],
     * the service returns a [ListProjectsResponse.next_page_token]
     * that can be used to get the next page of results in subsequent list requests.
     * 
     *
     * int64 page_size = 2 [(.yandex.cloud.value) = "0-1000"];
     * @return The pageSize.
     */
    long getPageSize();
    /**
     * 
     * Page token. To get the next page of results, set [page_token] to the
     * [ListProjectsResponse.next_page_token] returned by a previous list request.
     * 
     *
     * string page_token = 3 [(.yandex.cloud.length) = "<=100"];
     * @return The pageToken.
     */
    java.lang.String getPageToken();
    /**
     * 
     * Page token. To get the next page of results, set [page_token] to the
     * [ListProjectsResponse.next_page_token] returned by a previous list request.
     * 
     *
     * string page_token = 3 [(.yandex.cloud.length) = "<=100"];
     * @return The bytes for pageToken.
     */
    com.google.protobuf.ByteString
        getPageTokenBytes();
    /**
     * 
     * Name pattern to filter projects that are returned.
     * Only projects with names matching the pattern will be returned.
     * 
     *
     * string project_name_pattern = 4;
     * @return The projectNamePattern.
     */
    java.lang.String getProjectNamePattern();
    /**
     * 
     * Name pattern to filter projects that are returned.
     * Only projects with names matching the pattern will be returned.
     * 
     *
     * string project_name_pattern = 4;
     * @return The bytes for projectNamePattern.
     */
    com.google.protobuf.ByteString
        getProjectNamePatternBytes();
    /**
     * 
     * User ID to filter projects that are returned.
     * Only projects that are owned by specified user will be returned.
     * 
     *
     * string owned_by_id = 5;
     * @return The ownedById.
     */
    java.lang.String getOwnedById();
    /**
     * 
     * User ID to filter projects that are returned.
     * Only projects that are owned by specified user will be returned.
     * 
     *
     * string owned_by_id = 5;
     * @return The bytes for ownedById.
     */
    com.google.protobuf.ByteString
        getOwnedByIdBytes();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.ListProjectsRequest}
   */
  public static final class ListProjectsRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.ListProjectsRequest)
      ListProjectsRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ListProjectsRequest.newBuilder() to construct.
    private ListProjectsRequest(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private ListProjectsRequest() {
      communityId_ = "";
      pageToken_ = "";
      projectNamePattern_ = "";
      ownedById_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new ListProjectsRequest();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ListProjectsRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              communityId_ = s;
              break;
            }
            case 16: {
              pageSize_ = input.readInt64();
              break;
            }
            case 26: {
              java.lang.String s = input.readStringRequireUtf8();
              pageToken_ = s;
              break;
            }
            case 34: {
              java.lang.String s = input.readStringRequireUtf8();
              projectNamePattern_ = s;
              break;
            }
            case 42: {
              java.lang.String s = input.readStringRequireUtf8();
              ownedById_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ListProjectsRequest_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ListProjectsRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest.Builder.class);
    }
    public static final int COMMUNITY_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object communityId_;
    /**
     * 
     * ID of the community to list projects in.
     * 
     *
     * string community_id = 1 [(.yandex.cloud.required) = true];
     * @return The communityId.
     */
    @java.lang.Override
    public java.lang.String getCommunityId() {
      java.lang.Object ref = communityId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        communityId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the community to list projects in.
     * 
     *
     * string community_id = 1 [(.yandex.cloud.required) = true];
     * @return The bytes for communityId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getCommunityIdBytes() {
      java.lang.Object ref = communityId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        communityId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int PAGE_SIZE_FIELD_NUMBER = 2;
    private long pageSize_;
    /**
     * 
     * The maximum number of results per page to return. If the number of available
     * results is larger than [page_size],
     * the service returns a [ListProjectsResponse.next_page_token]
     * that can be used to get the next page of results in subsequent list requests.
     * 
     *
     * int64 page_size = 2 [(.yandex.cloud.value) = "0-1000"];
     * @return The pageSize.
     */
    @java.lang.Override
    public long getPageSize() {
      return pageSize_;
    }
    public static final int PAGE_TOKEN_FIELD_NUMBER = 3;
    private volatile java.lang.Object pageToken_;
    /**
     * 
     * Page token. To get the next page of results, set [page_token] to the
     * [ListProjectsResponse.next_page_token] returned by a previous list request.
     * 
     *
     * string page_token = 3 [(.yandex.cloud.length) = "<=100"];
     * @return The pageToken.
     */
    @java.lang.Override
    public java.lang.String getPageToken() {
      java.lang.Object ref = pageToken_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        pageToken_ = s;
        return s;
      }
    }
    /**
     * 
     * Page token. To get the next page of results, set [page_token] to the
     * [ListProjectsResponse.next_page_token] returned by a previous list request.
     * 
     *
     * string page_token = 3 [(.yandex.cloud.length) = "<=100"];
     * @return The bytes for pageToken.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getPageTokenBytes() {
      java.lang.Object ref = pageToken_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        pageToken_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int PROJECT_NAME_PATTERN_FIELD_NUMBER = 4;
    private volatile java.lang.Object projectNamePattern_;
    /**
     * 
     * Name pattern to filter projects that are returned.
     * Only projects with names matching the pattern will be returned.
     * 
     *
     * string project_name_pattern = 4;
     * @return The projectNamePattern.
     */
    @java.lang.Override
    public java.lang.String getProjectNamePattern() {
      java.lang.Object ref = projectNamePattern_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectNamePattern_ = s;
        return s;
      }
    }
    /**
     * 
     * Name pattern to filter projects that are returned.
     * Only projects with names matching the pattern will be returned.
     * 
     *
     * string project_name_pattern = 4;
     * @return The bytes for projectNamePattern.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectNamePatternBytes() {
      java.lang.Object ref = projectNamePattern_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectNamePattern_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int OWNED_BY_ID_FIELD_NUMBER = 5;
    private volatile java.lang.Object ownedById_;
    /**
     * 
     * User ID to filter projects that are returned.
     * Only projects that are owned by specified user will be returned.
     * 
     *
     * string owned_by_id = 5;
     * @return The ownedById.
     */
    @java.lang.Override
    public java.lang.String getOwnedById() {
      java.lang.Object ref = ownedById_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        ownedById_ = s;
        return s;
      }
    }
    /**
     * 
     * User ID to filter projects that are returned.
     * Only projects that are owned by specified user will be returned.
     * 
     *
     * string owned_by_id = 5;
     * @return The bytes for ownedById.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getOwnedByIdBytes() {
      java.lang.Object ref = ownedById_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        ownedById_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(communityId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, communityId_);
      }
      if (pageSize_ != 0L) {
        output.writeInt64(2, pageSize_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, pageToken_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectNamePattern_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, projectNamePattern_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(ownedById_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, ownedById_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(communityId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, communityId_);
      }
      if (pageSize_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(2, pageSize_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, pageToken_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectNamePattern_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, projectNamePattern_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(ownedById_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, ownedById_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest) obj;
      if (!getCommunityId()
          .equals(other.getCommunityId())) return false;
      if (getPageSize()
          != other.getPageSize()) return false;
      if (!getPageToken()
          .equals(other.getPageToken())) return false;
      if (!getProjectNamePattern()
          .equals(other.getProjectNamePattern())) return false;
      if (!getOwnedById()
          .equals(other.getOwnedById())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + COMMUNITY_ID_FIELD_NUMBER;
      hash = (53 * hash) + getCommunityId().hashCode();
      hash = (37 * hash) + PAGE_SIZE_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getPageSize());
      hash = (37 * hash) + PAGE_TOKEN_FIELD_NUMBER;
      hash = (53 * hash) + getPageToken().hashCode();
      hash = (37 * hash) + PROJECT_NAME_PATTERN_FIELD_NUMBER;
      hash = (53 * hash) + getProjectNamePattern().hashCode();
      hash = (37 * hash) + OWNED_BY_ID_FIELD_NUMBER;
      hash = (53 * hash) + getOwnedById().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.ListProjectsRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.ListProjectsRequest)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ListProjectsRequest_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ListProjectsRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        communityId_ = "";
        pageSize_ = 0L;
        pageToken_ = "";
        projectNamePattern_ = "";
        ownedById_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ListProjectsRequest_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest(this);
        result.communityId_ = communityId_;
        result.pageSize_ = pageSize_;
        result.pageToken_ = pageToken_;
        result.projectNamePattern_ = projectNamePattern_;
        result.ownedById_ = ownedById_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest.getDefaultInstance()) return this;
        if (!other.getCommunityId().isEmpty()) {
          communityId_ = other.communityId_;
          onChanged();
        }
        if (other.getPageSize() != 0L) {
          setPageSize(other.getPageSize());
        }
        if (!other.getPageToken().isEmpty()) {
          pageToken_ = other.pageToken_;
          onChanged();
        }
        if (!other.getProjectNamePattern().isEmpty()) {
          projectNamePattern_ = other.projectNamePattern_;
          onChanged();
        }
        if (!other.getOwnedById().isEmpty()) {
          ownedById_ = other.ownedById_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object communityId_ = "";
      /**
       * 
       * ID of the community to list projects in.
       * 
       *
       * string community_id = 1 [(.yandex.cloud.required) = true];
       * @return The communityId.
       */
      public java.lang.String getCommunityId() {
        java.lang.Object ref = communityId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          communityId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the community to list projects in.
       * 
       *
       * string community_id = 1 [(.yandex.cloud.required) = true];
       * @return The bytes for communityId.
       */
      public com.google.protobuf.ByteString
          getCommunityIdBytes() {
        java.lang.Object ref = communityId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          communityId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the community to list projects in.
       * 
       *
       * string community_id = 1 [(.yandex.cloud.required) = true];
       * @param value The communityId to set.
       * @return This builder for chaining.
       */
      public Builder setCommunityId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        communityId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the community to list projects in.
       * 
       *
       * string community_id = 1 [(.yandex.cloud.required) = true];
       * @return This builder for chaining.
       */
      public Builder clearCommunityId() {
        
        communityId_ = getDefaultInstance().getCommunityId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the community to list projects in.
       * 
       *
       * string community_id = 1 [(.yandex.cloud.required) = true];
       * @param value The bytes for communityId to set.
       * @return This builder for chaining.
       */
      public Builder setCommunityIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        communityId_ = value;
        onChanged();
        return this;
      }
      private long pageSize_ ;
      /**
       * 
       * The maximum number of results per page to return. If the number of available
       * results is larger than [page_size],
       * the service returns a [ListProjectsResponse.next_page_token]
       * that can be used to get the next page of results in subsequent list requests.
       * 
       *
       * int64 page_size = 2 [(.yandex.cloud.value) = "0-1000"];
       * @return The pageSize.
       */
      @java.lang.Override
      public long getPageSize() {
        return pageSize_;
      }
      /**
       * 
       * The maximum number of results per page to return. If the number of available
       * results is larger than [page_size],
       * the service returns a [ListProjectsResponse.next_page_token]
       * that can be used to get the next page of results in subsequent list requests.
       * 
       *
       * int64 page_size = 2 [(.yandex.cloud.value) = "0-1000"];
       * @param value The pageSize to set.
       * @return This builder for chaining.
       */
      public Builder setPageSize(long value) {
        
        pageSize_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * The maximum number of results per page to return. If the number of available
       * results is larger than [page_size],
       * the service returns a [ListProjectsResponse.next_page_token]
       * that can be used to get the next page of results in subsequent list requests.
       * 
       *
       * int64 page_size = 2 [(.yandex.cloud.value) = "0-1000"];
       * @return This builder for chaining.
       */
      public Builder clearPageSize() {
        
        pageSize_ = 0L;
        onChanged();
        return this;
      }
      private java.lang.Object pageToken_ = "";
      /**
       * 
       * Page token. To get the next page of results, set [page_token] to the
       * [ListProjectsResponse.next_page_token] returned by a previous list request.
       * 
       *
       * string page_token = 3 [(.yandex.cloud.length) = "<=100"];
       * @return The pageToken.
       */
      public java.lang.String getPageToken() {
        java.lang.Object ref = pageToken_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          pageToken_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * Page token. To get the next page of results, set [page_token] to the
       * [ListProjectsResponse.next_page_token] returned by a previous list request.
       * 
       *
       * string page_token = 3 [(.yandex.cloud.length) = "<=100"];
       * @return The bytes for pageToken.
       */
      public com.google.protobuf.ByteString
          getPageTokenBytes() {
        java.lang.Object ref = pageToken_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          pageToken_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * Page token. To get the next page of results, set [page_token] to the
       * [ListProjectsResponse.next_page_token] returned by a previous list request.
       * 
       *
       * string page_token = 3 [(.yandex.cloud.length) = "<=100"];
       * @param value The pageToken to set.
       * @return This builder for chaining.
       */
      public Builder setPageToken(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        pageToken_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Page token. To get the next page of results, set [page_token] to the
       * [ListProjectsResponse.next_page_token] returned by a previous list request.
       * 
       *
       * string page_token = 3 [(.yandex.cloud.length) = "<=100"];
       * @return This builder for chaining.
       */
      public Builder clearPageToken() {
        
        pageToken_ = getDefaultInstance().getPageToken();
        onChanged();
        return this;
      }
      /**
       * 
       * Page token. To get the next page of results, set [page_token] to the
       * [ListProjectsResponse.next_page_token] returned by a previous list request.
       * 
       *
       * string page_token = 3 [(.yandex.cloud.length) = "<=100"];
       * @param value The bytes for pageToken to set.
       * @return This builder for chaining.
       */
      public Builder setPageTokenBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        pageToken_ = value;
        onChanged();
        return this;
      }
      private java.lang.Object projectNamePattern_ = "";
      /**
       * 
       * Name pattern to filter projects that are returned.
       * Only projects with names matching the pattern will be returned.
       * 
       *
       * string project_name_pattern = 4;
       * @return The projectNamePattern.
       */
      public java.lang.String getProjectNamePattern() {
        java.lang.Object ref = projectNamePattern_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectNamePattern_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * Name pattern to filter projects that are returned.
       * Only projects with names matching the pattern will be returned.
       * 
       *
       * string project_name_pattern = 4;
       * @return The bytes for projectNamePattern.
       */
      public com.google.protobuf.ByteString
          getProjectNamePatternBytes() {
        java.lang.Object ref = projectNamePattern_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectNamePattern_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * Name pattern to filter projects that are returned.
       * Only projects with names matching the pattern will be returned.
       * 
       *
       * string project_name_pattern = 4;
       * @param value The projectNamePattern to set.
       * @return This builder for chaining.
       */
      public Builder setProjectNamePattern(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectNamePattern_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Name pattern to filter projects that are returned.
       * Only projects with names matching the pattern will be returned.
       * 
       *
       * string project_name_pattern = 4;
       * @return This builder for chaining.
       */
      public Builder clearProjectNamePattern() {
        
        projectNamePattern_ = getDefaultInstance().getProjectNamePattern();
        onChanged();
        return this;
      }
      /**
       * 
       * Name pattern to filter projects that are returned.
       * Only projects with names matching the pattern will be returned.
       * 
       *
       * string project_name_pattern = 4;
       * @param value The bytes for projectNamePattern to set.
       * @return This builder for chaining.
       */
      public Builder setProjectNamePatternBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectNamePattern_ = value;
        onChanged();
        return this;
      }
      private java.lang.Object ownedById_ = "";
      /**
       * 
       * User ID to filter projects that are returned.
       * Only projects that are owned by specified user will be returned.
       * 
       *
       * string owned_by_id = 5;
       * @return The ownedById.
       */
      public java.lang.String getOwnedById() {
        java.lang.Object ref = ownedById_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          ownedById_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * User ID to filter projects that are returned.
       * Only projects that are owned by specified user will be returned.
       * 
       *
       * string owned_by_id = 5;
       * @return The bytes for ownedById.
       */
      public com.google.protobuf.ByteString
          getOwnedByIdBytes() {
        java.lang.Object ref = ownedById_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          ownedById_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * User ID to filter projects that are returned.
       * Only projects that are owned by specified user will be returned.
       * 
       *
       * string owned_by_id = 5;
       * @param value The ownedById to set.
       * @return This builder for chaining.
       */
      public Builder setOwnedById(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        ownedById_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * User ID to filter projects that are returned.
       * Only projects that are owned by specified user will be returned.
       * 
       *
       * string owned_by_id = 5;
       * @return This builder for chaining.
       */
      public Builder clearOwnedById() {
        
        ownedById_ = getDefaultInstance().getOwnedById();
        onChanged();
        return this;
      }
      /**
       * 
       * User ID to filter projects that are returned.
       * Only projects that are owned by specified user will be returned.
       * 
       *
       * string owned_by_id = 5;
       * @param value The bytes for ownedById to set.
       * @return This builder for chaining.
       */
      public Builder setOwnedByIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        ownedById_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.ListProjectsRequest)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.ListProjectsRequest)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public ListProjectsRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ListProjectsRequest(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface ListProjectsResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.ListProjectsResponse)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * List of Project resources.
     * 
     *
     * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
     */
    java.util.List 
        getProjectsList();
    /**
     * 
     * List of Project resources.
     * 
     *
     * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
     */
    yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project getProjects(int index);
    /**
     * 
     * List of Project resources.
     * 
     *
     * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
     */
    int getProjectsCount();
    /**
     * 
     * List of Project resources.
     * 
     *
     * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
     */
    java.util.List extends yandex.cloud.api.datasphere.v2.ProjectOuterClass.ProjectOrBuilder> 
        getProjectsOrBuilderList();
    /**
     * 
     * List of Project resources.
     * 
     *
     * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
     */
    yandex.cloud.api.datasphere.v2.ProjectOuterClass.ProjectOrBuilder getProjectsOrBuilder(
        int index);
    /**
     * 
     * This token allows you to get the next page of results for list requests. If the number of results
     * is larger than [ListProjectsRequest.page_size], use
     * the [next_page_token] as the value
     * for the [ListProjectsRequest.page_token] query parameter
     * in the next list request. Each subsequent list request will have its own
     * [next_page_token] to continue paging through the results.
     * 
     *
     * string next_page_token = 2;
     * @return The nextPageToken.
     */
    java.lang.String getNextPageToken();
    /**
     * 
     * This token allows you to get the next page of results for list requests. If the number of results
     * is larger than [ListProjectsRequest.page_size], use
     * the [next_page_token] as the value
     * for the [ListProjectsRequest.page_token] query parameter
     * in the next list request. Each subsequent list request will have its own
     * [next_page_token] to continue paging through the results.
     * 
     *
     * string next_page_token = 2;
     * @return The bytes for nextPageToken.
     */
    com.google.protobuf.ByteString
        getNextPageTokenBytes();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.ListProjectsResponse}
   */
  public static final class ListProjectsResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.ListProjectsResponse)
      ListProjectsResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ListProjectsResponse.newBuilder() to construct.
    private ListProjectsResponse(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private ListProjectsResponse() {
      projects_ = java.util.Collections.emptyList();
      nextPageToken_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new ListProjectsResponse();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ListProjectsResponse(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                projects_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              projects_.add(
                  input.readMessage(yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.parser(), extensionRegistry));
              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();
              nextPageToken_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          projects_ = java.util.Collections.unmodifiableList(projects_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ListProjectsResponse_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ListProjectsResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse.Builder.class);
    }
    public static final int PROJECTS_FIELD_NUMBER = 1;
    private java.util.List projects_;
    /**
     * 
     * List of Project resources.
     * 
     *
     * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
     */
    @java.lang.Override
    public java.util.List getProjectsList() {
      return projects_;
    }
    /**
     * 
     * List of Project resources.
     * 
     *
     * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
     */
    @java.lang.Override
    public java.util.List extends yandex.cloud.api.datasphere.v2.ProjectOuterClass.ProjectOrBuilder> 
        getProjectsOrBuilderList() {
      return projects_;
    }
    /**
     * 
     * List of Project resources.
     * 
     *
     * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
     */
    @java.lang.Override
    public int getProjectsCount() {
      return projects_.size();
    }
    /**
     * 
     * List of Project resources.
     * 
     *
     * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
     */
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project getProjects(int index) {
      return projects_.get(index);
    }
    /**
     * 
     * List of Project resources.
     * 
     *
     * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
     */
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectOuterClass.ProjectOrBuilder getProjectsOrBuilder(
        int index) {
      return projects_.get(index);
    }
    public static final int NEXT_PAGE_TOKEN_FIELD_NUMBER = 2;
    private volatile java.lang.Object nextPageToken_;
    /**
     * 
     * This token allows you to get the next page of results for list requests. If the number of results
     * is larger than [ListProjectsRequest.page_size], use
     * the [next_page_token] as the value
     * for the [ListProjectsRequest.page_token] query parameter
     * in the next list request. Each subsequent list request will have its own
     * [next_page_token] to continue paging through the results.
     * 
     *
     * string next_page_token = 2;
     * @return The nextPageToken.
     */
    @java.lang.Override
    public java.lang.String getNextPageToken() {
      java.lang.Object ref = nextPageToken_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        nextPageToken_ = s;
        return s;
      }
    }
    /**
     * 
     * This token allows you to get the next page of results for list requests. If the number of results
     * is larger than [ListProjectsRequest.page_size], use
     * the [next_page_token] as the value
     * for the [ListProjectsRequest.page_token] query parameter
     * in the next list request. Each subsequent list request will have its own
     * [next_page_token] to continue paging through the results.
     * 
     *
     * string next_page_token = 2;
     * @return The bytes for nextPageToken.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getNextPageTokenBytes() {
      java.lang.Object ref = nextPageToken_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        nextPageToken_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      for (int i = 0; i < projects_.size(); i++) {
        output.writeMessage(1, projects_.get(i));
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, nextPageToken_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      for (int i = 0; i < projects_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, projects_.get(i));
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, nextPageToken_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse) obj;
      if (!getProjectsList()
          .equals(other.getProjectsList())) return false;
      if (!getNextPageToken()
          .equals(other.getNextPageToken())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getProjectsCount() > 0) {
        hash = (37 * hash) + PROJECTS_FIELD_NUMBER;
        hash = (53 * hash) + getProjectsList().hashCode();
      }
      hash = (37 * hash) + NEXT_PAGE_TOKEN_FIELD_NUMBER;
      hash = (53 * hash) + getNextPageToken().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.ListProjectsResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.ListProjectsResponse)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ListProjectsResponse_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ListProjectsResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getProjectsFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (projectsBuilder_ == null) {
          projects_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          projectsBuilder_.clear();
        }
        nextPageToken_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ListProjectsResponse_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse(this);
        int from_bitField0_ = bitField0_;
        if (projectsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            projects_ = java.util.Collections.unmodifiableList(projects_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.projects_ = projects_;
        } else {
          result.projects_ = projectsBuilder_.build();
        }
        result.nextPageToken_ = nextPageToken_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse.getDefaultInstance()) return this;
        if (projectsBuilder_ == null) {
          if (!other.projects_.isEmpty()) {
            if (projects_.isEmpty()) {
              projects_ = other.projects_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureProjectsIsMutable();
              projects_.addAll(other.projects_);
            }
            onChanged();
          }
        } else {
          if (!other.projects_.isEmpty()) {
            if (projectsBuilder_.isEmpty()) {
              projectsBuilder_.dispose();
              projectsBuilder_ = null;
              projects_ = other.projects_;
              bitField0_ = (bitField0_ & ~0x00000001);
              projectsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getProjectsFieldBuilder() : null;
            } else {
              projectsBuilder_.addAllMessages(other.projects_);
            }
          }
        }
        if (!other.getNextPageToken().isEmpty()) {
          nextPageToken_ = other.nextPageToken_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;
      private java.util.List projects_ =
        java.util.Collections.emptyList();
      private void ensureProjectsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          projects_ = new java.util.ArrayList(projects_);
          bitField0_ |= 0x00000001;
         }
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Builder, yandex.cloud.api.datasphere.v2.ProjectOuterClass.ProjectOrBuilder> projectsBuilder_;
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public java.util.List getProjectsList() {
        if (projectsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(projects_);
        } else {
          return projectsBuilder_.getMessageList();
        }
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public int getProjectsCount() {
        if (projectsBuilder_ == null) {
          return projects_.size();
        } else {
          return projectsBuilder_.getCount();
        }
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project getProjects(int index) {
        if (projectsBuilder_ == null) {
          return projects_.get(index);
        } else {
          return projectsBuilder_.getMessage(index);
        }
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public Builder setProjects(
          int index, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project value) {
        if (projectsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureProjectsIsMutable();
          projects_.set(index, value);
          onChanged();
        } else {
          projectsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public Builder setProjects(
          int index, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Builder builderForValue) {
        if (projectsBuilder_ == null) {
          ensureProjectsIsMutable();
          projects_.set(index, builderForValue.build());
          onChanged();
        } else {
          projectsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public Builder addProjects(yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project value) {
        if (projectsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureProjectsIsMutable();
          projects_.add(value);
          onChanged();
        } else {
          projectsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public Builder addProjects(
          int index, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project value) {
        if (projectsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureProjectsIsMutable();
          projects_.add(index, value);
          onChanged();
        } else {
          projectsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public Builder addProjects(
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Builder builderForValue) {
        if (projectsBuilder_ == null) {
          ensureProjectsIsMutable();
          projects_.add(builderForValue.build());
          onChanged();
        } else {
          projectsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public Builder addProjects(
          int index, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Builder builderForValue) {
        if (projectsBuilder_ == null) {
          ensureProjectsIsMutable();
          projects_.add(index, builderForValue.build());
          onChanged();
        } else {
          projectsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public Builder addAllProjects(
          java.lang.Iterable extends yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project> values) {
        if (projectsBuilder_ == null) {
          ensureProjectsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, projects_);
          onChanged();
        } else {
          projectsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public Builder clearProjects() {
        if (projectsBuilder_ == null) {
          projects_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          projectsBuilder_.clear();
        }
        return this;
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public Builder removeProjects(int index) {
        if (projectsBuilder_ == null) {
          ensureProjectsIsMutable();
          projects_.remove(index);
          onChanged();
        } else {
          projectsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Builder getProjectsBuilder(
          int index) {
        return getProjectsFieldBuilder().getBuilder(index);
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.ProjectOrBuilder getProjectsOrBuilder(
          int index) {
        if (projectsBuilder_ == null) {
          return projects_.get(index);  } else {
          return projectsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public java.util.List extends yandex.cloud.api.datasphere.v2.ProjectOuterClass.ProjectOrBuilder> 
           getProjectsOrBuilderList() {
        if (projectsBuilder_ != null) {
          return projectsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(projects_);
        }
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Builder addProjectsBuilder() {
        return getProjectsFieldBuilder().addBuilder(
            yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.getDefaultInstance());
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Builder addProjectsBuilder(
          int index) {
        return getProjectsFieldBuilder().addBuilder(
            index, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.getDefaultInstance());
      }
      /**
       * 
       * List of Project resources.
       * 
       *
       * repeated .yandex.cloud.datasphere.v2.Project projects = 1;
       */
      public java.util.List 
           getProjectsBuilderList() {
        return getProjectsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Builder, yandex.cloud.api.datasphere.v2.ProjectOuterClass.ProjectOrBuilder> 
          getProjectsFieldBuilder() {
        if (projectsBuilder_ == null) {
          projectsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project, yandex.cloud.api.datasphere.v2.ProjectOuterClass.Project.Builder, yandex.cloud.api.datasphere.v2.ProjectOuterClass.ProjectOrBuilder>(
                  projects_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          projects_ = null;
        }
        return projectsBuilder_;
      }
      private java.lang.Object nextPageToken_ = "";
      /**
       * 
       * This token allows you to get the next page of results for list requests. If the number of results
       * is larger than [ListProjectsRequest.page_size], use
       * the [next_page_token] as the value
       * for the [ListProjectsRequest.page_token] query parameter
       * in the next list request. Each subsequent list request will have its own
       * [next_page_token] to continue paging through the results.
       * 
       *
       * string next_page_token = 2;
       * @return The nextPageToken.
       */
      public java.lang.String getNextPageToken() {
        java.lang.Object ref = nextPageToken_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          nextPageToken_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * This token allows you to get the next page of results for list requests. If the number of results
       * is larger than [ListProjectsRequest.page_size], use
       * the [next_page_token] as the value
       * for the [ListProjectsRequest.page_token] query parameter
       * in the next list request. Each subsequent list request will have its own
       * [next_page_token] to continue paging through the results.
       * 
       *
       * string next_page_token = 2;
       * @return The bytes for nextPageToken.
       */
      public com.google.protobuf.ByteString
          getNextPageTokenBytes() {
        java.lang.Object ref = nextPageToken_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          nextPageToken_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * This token allows you to get the next page of results for list requests. If the number of results
       * is larger than [ListProjectsRequest.page_size], use
       * the [next_page_token] as the value
       * for the [ListProjectsRequest.page_token] query parameter
       * in the next list request. Each subsequent list request will have its own
       * [next_page_token] to continue paging through the results.
       * 
       *
       * string next_page_token = 2;
       * @param value The nextPageToken to set.
       * @return This builder for chaining.
       */
      public Builder setNextPageToken(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        nextPageToken_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * This token allows you to get the next page of results for list requests. If the number of results
       * is larger than [ListProjectsRequest.page_size], use
       * the [next_page_token] as the value
       * for the [ListProjectsRequest.page_token] query parameter
       * in the next list request. Each subsequent list request will have its own
       * [next_page_token] to continue paging through the results.
       * 
       *
       * string next_page_token = 2;
       * @return This builder for chaining.
       */
      public Builder clearNextPageToken() {
        
        nextPageToken_ = getDefaultInstance().getNextPageToken();
        onChanged();
        return this;
      }
      /**
       * 
       * This token allows you to get the next page of results for list requests. If the number of results
       * is larger than [ListProjectsRequest.page_size], use
       * the [next_page_token] as the value
       * for the [ListProjectsRequest.page_token] query parameter
       * in the next list request. Each subsequent list request will have its own
       * [next_page_token] to continue paging through the results.
       * 
       *
       * string next_page_token = 2;
       * @param value The bytes for nextPageToken to set.
       * @return This builder for chaining.
       */
      public Builder setNextPageTokenBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        nextPageToken_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.ListProjectsResponse)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.ListProjectsResponse)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public ListProjectsResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ListProjectsResponse(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ListProjectsResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface GetUnitBalanceRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.GetUnitBalanceRequest)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the project to return the unit balance for.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the project to return the unit balance for.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.GetUnitBalanceRequest}
   */
  public static final class GetUnitBalanceRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.GetUnitBalanceRequest)
      GetUnitBalanceRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use GetUnitBalanceRequest.newBuilder() to construct.
    private GetUnitBalanceRequest(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private GetUnitBalanceRequest() {
      projectId_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new GetUnitBalanceRequest();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private GetUnitBalanceRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceRequest_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest.Builder.class);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the project to return the unit balance for.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the project to return the unit balance for.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.GetUnitBalanceRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.GetUnitBalanceRequest)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceRequest_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceRequest_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest(this);
        result.projectId_ = projectId_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the project to return the unit balance for.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the project to return the unit balance for.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the project to return the unit balance for.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project to return the unit balance for.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project to return the unit balance for.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.GetUnitBalanceRequest)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.GetUnitBalanceRequest)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public GetUnitBalanceRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new GetUnitBalanceRequest(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface GetUnitBalanceResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.GetUnitBalanceResponse)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * The number of units available to the project.
     * 
     *
     * .google.protobuf.Int64Value unit_balance = 1;
     * @return Whether the unitBalance field is set.
     */
    boolean hasUnitBalance();
    /**
     * 
     * The number of units available to the project.
     * 
     *
     * .google.protobuf.Int64Value unit_balance = 1;
     * @return The unitBalance.
     */
    com.google.protobuf.Int64Value getUnitBalance();
    /**
     * 
     * The number of units available to the project.
     * 
     *
     * .google.protobuf.Int64Value unit_balance = 1;
     */
    com.google.protobuf.Int64ValueOrBuilder getUnitBalanceOrBuilder();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.GetUnitBalanceResponse}
   */
  public static final class GetUnitBalanceResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.GetUnitBalanceResponse)
      GetUnitBalanceResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use GetUnitBalanceResponse.newBuilder() to construct.
    private GetUnitBalanceResponse(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private GetUnitBalanceResponse() {
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new GetUnitBalanceResponse();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private GetUnitBalanceResponse(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              com.google.protobuf.Int64Value.Builder subBuilder = null;
              if (unitBalance_ != null) {
                subBuilder = unitBalance_.toBuilder();
              }
              unitBalance_ = input.readMessage(com.google.protobuf.Int64Value.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(unitBalance_);
                unitBalance_ = subBuilder.buildPartial();
              }
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceResponse_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse.Builder.class);
    }
    public static final int UNIT_BALANCE_FIELD_NUMBER = 1;
    private com.google.protobuf.Int64Value unitBalance_;
    /**
     * 
     * The number of units available to the project.
     * 
     *
     * .google.protobuf.Int64Value unit_balance = 1;
     * @return Whether the unitBalance field is set.
     */
    @java.lang.Override
    public boolean hasUnitBalance() {
      return unitBalance_ != null;
    }
    /**
     * 
     * The number of units available to the project.
     * 
     *
     * .google.protobuf.Int64Value unit_balance = 1;
     * @return The unitBalance.
     */
    @java.lang.Override
    public com.google.protobuf.Int64Value getUnitBalance() {
      return unitBalance_ == null ? com.google.protobuf.Int64Value.getDefaultInstance() : unitBalance_;
    }
    /**
     * 
     * The number of units available to the project.
     * 
     *
     * .google.protobuf.Int64Value unit_balance = 1;
     */
    @java.lang.Override
    public com.google.protobuf.Int64ValueOrBuilder getUnitBalanceOrBuilder() {
      return getUnitBalance();
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (unitBalance_ != null) {
        output.writeMessage(1, getUnitBalance());
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (unitBalance_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getUnitBalance());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse) obj;
      if (hasUnitBalance() != other.hasUnitBalance()) return false;
      if (hasUnitBalance()) {
        if (!getUnitBalance()
            .equals(other.getUnitBalance())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasUnitBalance()) {
        hash = (37 * hash) + UNIT_BALANCE_FIELD_NUMBER;
        hash = (53 * hash) + getUnitBalance().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.GetUnitBalanceResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.GetUnitBalanceResponse)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceResponse_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (unitBalanceBuilder_ == null) {
          unitBalance_ = null;
        } else {
          unitBalance_ = null;
          unitBalanceBuilder_ = null;
        }
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceResponse_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse(this);
        if (unitBalanceBuilder_ == null) {
          result.unitBalance_ = unitBalance_;
        } else {
          result.unitBalance_ = unitBalanceBuilder_.build();
        }
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse.getDefaultInstance()) return this;
        if (other.hasUnitBalance()) {
          mergeUnitBalance(other.getUnitBalance());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private com.google.protobuf.Int64Value unitBalance_;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Int64Value, com.google.protobuf.Int64Value.Builder, com.google.protobuf.Int64ValueOrBuilder> unitBalanceBuilder_;
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 1;
       * @return Whether the unitBalance field is set.
       */
      public boolean hasUnitBalance() {
        return unitBalanceBuilder_ != null || unitBalance_ != null;
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 1;
       * @return The unitBalance.
       */
      public com.google.protobuf.Int64Value getUnitBalance() {
        if (unitBalanceBuilder_ == null) {
          return unitBalance_ == null ? com.google.protobuf.Int64Value.getDefaultInstance() : unitBalance_;
        } else {
          return unitBalanceBuilder_.getMessage();
        }
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 1;
       */
      public Builder setUnitBalance(com.google.protobuf.Int64Value value) {
        if (unitBalanceBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          unitBalance_ = value;
          onChanged();
        } else {
          unitBalanceBuilder_.setMessage(value);
        }
        return this;
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 1;
       */
      public Builder setUnitBalance(
          com.google.protobuf.Int64Value.Builder builderForValue) {
        if (unitBalanceBuilder_ == null) {
          unitBalance_ = builderForValue.build();
          onChanged();
        } else {
          unitBalanceBuilder_.setMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 1;
       */
      public Builder mergeUnitBalance(com.google.protobuf.Int64Value value) {
        if (unitBalanceBuilder_ == null) {
          if (unitBalance_ != null) {
            unitBalance_ =
              com.google.protobuf.Int64Value.newBuilder(unitBalance_).mergeFrom(value).buildPartial();
          } else {
            unitBalance_ = value;
          }
          onChanged();
        } else {
          unitBalanceBuilder_.mergeFrom(value);
        }
        return this;
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 1;
       */
      public Builder clearUnitBalance() {
        if (unitBalanceBuilder_ == null) {
          unitBalance_ = null;
          onChanged();
        } else {
          unitBalance_ = null;
          unitBalanceBuilder_ = null;
        }
        return this;
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 1;
       */
      public com.google.protobuf.Int64Value.Builder getUnitBalanceBuilder() {
        
        onChanged();
        return getUnitBalanceFieldBuilder().getBuilder();
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 1;
       */
      public com.google.protobuf.Int64ValueOrBuilder getUnitBalanceOrBuilder() {
        if (unitBalanceBuilder_ != null) {
          return unitBalanceBuilder_.getMessageOrBuilder();
        } else {
          return unitBalance_ == null ?
              com.google.protobuf.Int64Value.getDefaultInstance() : unitBalance_;
        }
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 1;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Int64Value, com.google.protobuf.Int64Value.Builder, com.google.protobuf.Int64ValueOrBuilder> 
          getUnitBalanceFieldBuilder() {
        if (unitBalanceBuilder_ == null) {
          unitBalanceBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.google.protobuf.Int64Value, com.google.protobuf.Int64Value.Builder, com.google.protobuf.Int64ValueOrBuilder>(
                  getUnitBalance(),
                  getParentForChildren(),
                  isClean());
          unitBalance_ = null;
        }
        return unitBalanceBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.GetUnitBalanceResponse)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.GetUnitBalanceResponse)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public GetUnitBalanceResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new GetUnitBalanceResponse(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetUnitBalanceResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface SetUnitBalanceRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.SetUnitBalanceRequest)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the project to set the unit balance for.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the project to set the unit balance for.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
    /**
     * 
     * The number of units available to the project.
     * 
     *
     * .google.protobuf.Int64Value unit_balance = 2;
     * @return Whether the unitBalance field is set.
     */
    boolean hasUnitBalance();
    /**
     * 
     * The number of units available to the project.
     * 
     *
     * .google.protobuf.Int64Value unit_balance = 2;
     * @return The unitBalance.
     */
    com.google.protobuf.Int64Value getUnitBalance();
    /**
     * 
     * The number of units available to the project.
     * 
     *
     * .google.protobuf.Int64Value unit_balance = 2;
     */
    com.google.protobuf.Int64ValueOrBuilder getUnitBalanceOrBuilder();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.SetUnitBalanceRequest}
   */
  public static final class SetUnitBalanceRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.SetUnitBalanceRequest)
      SetUnitBalanceRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use SetUnitBalanceRequest.newBuilder() to construct.
    private SetUnitBalanceRequest(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private SetUnitBalanceRequest() {
      projectId_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new SetUnitBalanceRequest();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private SetUnitBalanceRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            case 18: {
              com.google.protobuf.Int64Value.Builder subBuilder = null;
              if (unitBalance_ != null) {
                subBuilder = unitBalance_.toBuilder();
              }
              unitBalance_ = input.readMessage(com.google.protobuf.Int64Value.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(unitBalance_);
                unitBalance_ = subBuilder.buildPartial();
              }
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceRequest_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest.Builder.class);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the project to set the unit balance for.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the project to set the unit balance for.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int UNIT_BALANCE_FIELD_NUMBER = 2;
    private com.google.protobuf.Int64Value unitBalance_;
    /**
     * 
     * The number of units available to the project.
     * 
     *
     * .google.protobuf.Int64Value unit_balance = 2;
     * @return Whether the unitBalance field is set.
     */
    @java.lang.Override
    public boolean hasUnitBalance() {
      return unitBalance_ != null;
    }
    /**
     * 
     * The number of units available to the project.
     * 
     *
     * .google.protobuf.Int64Value unit_balance = 2;
     * @return The unitBalance.
     */
    @java.lang.Override
    public com.google.protobuf.Int64Value getUnitBalance() {
      return unitBalance_ == null ? com.google.protobuf.Int64Value.getDefaultInstance() : unitBalance_;
    }
    /**
     * 
     * The number of units available to the project.
     * 
     *
     * .google.protobuf.Int64Value unit_balance = 2;
     */
    @java.lang.Override
    public com.google.protobuf.Int64ValueOrBuilder getUnitBalanceOrBuilder() {
      return getUnitBalance();
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      if (unitBalance_ != null) {
        output.writeMessage(2, getUnitBalance());
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      if (unitBalance_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getUnitBalance());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (hasUnitBalance() != other.hasUnitBalance()) return false;
      if (hasUnitBalance()) {
        if (!getUnitBalance()
            .equals(other.getUnitBalance())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      if (hasUnitBalance()) {
        hash = (37 * hash) + UNIT_BALANCE_FIELD_NUMBER;
        hash = (53 * hash) + getUnitBalance().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.SetUnitBalanceRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.SetUnitBalanceRequest)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceRequest_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        if (unitBalanceBuilder_ == null) {
          unitBalance_ = null;
        } else {
          unitBalance_ = null;
          unitBalanceBuilder_ = null;
        }
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceRequest_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest(this);
        result.projectId_ = projectId_;
        if (unitBalanceBuilder_ == null) {
          result.unitBalance_ = unitBalance_;
        } else {
          result.unitBalance_ = unitBalanceBuilder_.build();
        }
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        if (other.hasUnitBalance()) {
          mergeUnitBalance(other.getUnitBalance());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the project to set the unit balance for.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the project to set the unit balance for.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the project to set the unit balance for.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project to set the unit balance for.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project to set the unit balance for.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      private com.google.protobuf.Int64Value unitBalance_;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Int64Value, com.google.protobuf.Int64Value.Builder, com.google.protobuf.Int64ValueOrBuilder> unitBalanceBuilder_;
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 2;
       * @return Whether the unitBalance field is set.
       */
      public boolean hasUnitBalance() {
        return unitBalanceBuilder_ != null || unitBalance_ != null;
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 2;
       * @return The unitBalance.
       */
      public com.google.protobuf.Int64Value getUnitBalance() {
        if (unitBalanceBuilder_ == null) {
          return unitBalance_ == null ? com.google.protobuf.Int64Value.getDefaultInstance() : unitBalance_;
        } else {
          return unitBalanceBuilder_.getMessage();
        }
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 2;
       */
      public Builder setUnitBalance(com.google.protobuf.Int64Value value) {
        if (unitBalanceBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          unitBalance_ = value;
          onChanged();
        } else {
          unitBalanceBuilder_.setMessage(value);
        }
        return this;
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 2;
       */
      public Builder setUnitBalance(
          com.google.protobuf.Int64Value.Builder builderForValue) {
        if (unitBalanceBuilder_ == null) {
          unitBalance_ = builderForValue.build();
          onChanged();
        } else {
          unitBalanceBuilder_.setMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 2;
       */
      public Builder mergeUnitBalance(com.google.protobuf.Int64Value value) {
        if (unitBalanceBuilder_ == null) {
          if (unitBalance_ != null) {
            unitBalance_ =
              com.google.protobuf.Int64Value.newBuilder(unitBalance_).mergeFrom(value).buildPartial();
          } else {
            unitBalance_ = value;
          }
          onChanged();
        } else {
          unitBalanceBuilder_.mergeFrom(value);
        }
        return this;
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 2;
       */
      public Builder clearUnitBalance() {
        if (unitBalanceBuilder_ == null) {
          unitBalance_ = null;
          onChanged();
        } else {
          unitBalance_ = null;
          unitBalanceBuilder_ = null;
        }
        return this;
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 2;
       */
      public com.google.protobuf.Int64Value.Builder getUnitBalanceBuilder() {
        
        onChanged();
        return getUnitBalanceFieldBuilder().getBuilder();
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 2;
       */
      public com.google.protobuf.Int64ValueOrBuilder getUnitBalanceOrBuilder() {
        if (unitBalanceBuilder_ != null) {
          return unitBalanceBuilder_.getMessageOrBuilder();
        } else {
          return unitBalance_ == null ?
              com.google.protobuf.Int64Value.getDefaultInstance() : unitBalance_;
        }
      }
      /**
       * 
       * The number of units available to the project.
       * 
       *
       * .google.protobuf.Int64Value unit_balance = 2;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Int64Value, com.google.protobuf.Int64Value.Builder, com.google.protobuf.Int64ValueOrBuilder> 
          getUnitBalanceFieldBuilder() {
        if (unitBalanceBuilder_ == null) {
          unitBalanceBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.google.protobuf.Int64Value, com.google.protobuf.Int64Value.Builder, com.google.protobuf.Int64ValueOrBuilder>(
                  getUnitBalance(),
                  getParentForChildren(),
                  isClean());
          unitBalance_ = null;
        }
        return unitBalanceBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.SetUnitBalanceRequest)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.SetUnitBalanceRequest)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public SetUnitBalanceRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new SetUnitBalanceRequest(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface SetUnitBalanceMetadataOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.SetUnitBalanceMetadata)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the project which unit balance is set.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the project which unit balance is set.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.SetUnitBalanceMetadata}
   */
  public static final class SetUnitBalanceMetadata extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.SetUnitBalanceMetadata)
      SetUnitBalanceMetadataOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use SetUnitBalanceMetadata.newBuilder() to construct.
    private SetUnitBalanceMetadata(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private SetUnitBalanceMetadata() {
      projectId_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new SetUnitBalanceMetadata();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private SetUnitBalanceMetadata(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceMetadata_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceMetadata_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata.Builder.class);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the project which unit balance is set.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the project which unit balance is set.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.SetUnitBalanceMetadata}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.SetUnitBalanceMetadata)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadataOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceMetadata_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceMetadata_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceMetadata_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata(this);
        result.projectId_ = projectId_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the project which unit balance is set.
       * 
       *
       * string project_id = 1;
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the project which unit balance is set.
       * 
       *
       * string project_id = 1;
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the project which unit balance is set.
       * 
       *
       * string project_id = 1;
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project which unit balance is set.
       * 
       *
       * string project_id = 1;
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project which unit balance is set.
       * 
       *
       * string project_id = 1;
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.SetUnitBalanceMetadata)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.SetUnitBalanceMetadata)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public SetUnitBalanceMetadata parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new SetUnitBalanceMetadata(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetUnitBalanceMetadata getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface ProjectExecutionRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.ProjectExecutionRequest)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the project to execute notebook/cell in.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the project to execute notebook/cell in.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
    /**
     * 
     * ID of the notebook to execute.
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
     * @return Whether the notebookId field is set.
     */
    boolean hasNotebookId();
    /**
     * 
     * ID of the notebook to execute.
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
     * @return The notebookId.
     */
    java.lang.String getNotebookId();
    /**
     * 
     * ID of the notebook to execute.
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
     * @return The bytes for notebookId.
     */
    com.google.protobuf.ByteString
        getNotebookIdBytes();
    /**
     * 
     * ID of the cell to execute.
     * 
     *
     * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
     * @return Whether the cellId field is set.
     */
    boolean hasCellId();
    /**
     * 
     * ID of the cell to execute.
     * 
     *
     * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
     * @return The cellId.
     */
    java.lang.String getCellId();
    /**
     * 
     * ID of the cell to execute.
     * 
     *
     * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
     * @return The bytes for cellId.
     */
    com.google.protobuf.ByteString
        getCellIdBytes();
    /**
     * 
     * Values of input variables.
     * 
     *
     * .google.protobuf.Struct input_variables = 4;
     * @return Whether the inputVariables field is set.
     */
    boolean hasInputVariables();
    /**
     * 
     * Values of input variables.
     * 
     *
     * .google.protobuf.Struct input_variables = 4;
     * @return The inputVariables.
     */
    com.google.protobuf.Struct getInputVariables();
    /**
     * 
     * Values of input variables.
     * 
     *
     * .google.protobuf.Struct input_variables = 4;
     */
    com.google.protobuf.StructOrBuilder getInputVariablesOrBuilder();
    /**
     * 
     * Names of output variables.
     * 
     *
     * repeated string output_variable_names = 5;
     * @return A list containing the outputVariableNames.
     */
    java.util.List
        getOutputVariableNamesList();
    /**
     * 
     * Names of output variables.
     * 
     *
     * repeated string output_variable_names = 5;
     * @return The count of outputVariableNames.
     */
    int getOutputVariableNamesCount();
    /**
     * 
     * Names of output variables.
     * 
     *
     * repeated string output_variable_names = 5;
     * @param index The index of the element to return.
     * @return The outputVariableNames at the given index.
     */
    java.lang.String getOutputVariableNames(int index);
    /**
     * 
     * Names of output variables.
     * 
     *
     * repeated string output_variable_names = 5;
     * @param index The index of the value to return.
     * @return The bytes of the outputVariableNames at the given index.
     */
    com.google.protobuf.ByteString
        getOutputVariableNamesBytes(int index);
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest.TargetCase getTargetCase();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.ProjectExecutionRequest}
   */
  public static final class ProjectExecutionRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.ProjectExecutionRequest)
      ProjectExecutionRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ProjectExecutionRequest.newBuilder() to construct.
    private ProjectExecutionRequest(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private ProjectExecutionRequest() {
      projectId_ = "";
      outputVariableNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new ProjectExecutionRequest();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ProjectExecutionRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();
              targetCase_ = 2;
              target_ = s;
              break;
            }
            case 26: {
              java.lang.String s = input.readStringRequireUtf8();
              targetCase_ = 3;
              target_ = s;
              break;
            }
            case 34: {
              com.google.protobuf.Struct.Builder subBuilder = null;
              if (inputVariables_ != null) {
                subBuilder = inputVariables_.toBuilder();
              }
              inputVariables_ = input.readMessage(com.google.protobuf.Struct.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(inputVariables_);
                inputVariables_ = subBuilder.buildPartial();
              }
              break;
            }
            case 42: {
              java.lang.String s = input.readStringRequireUtf8();
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                outputVariableNames_ = new com.google.protobuf.LazyStringArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              outputVariableNames_.add(s);
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          outputVariableNames_ = outputVariableNames_.getUnmodifiableView();
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ProjectExecutionRequest_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ProjectExecutionRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest.Builder.class);
    }
    private int targetCase_ = 0;
    private java.lang.Object target_;
    public enum TargetCase
        implements com.google.protobuf.Internal.EnumLite,
            com.google.protobuf.AbstractMessage.InternalOneOfEnum {
      NOTEBOOK_ID(2),
      CELL_ID(3),
      TARGET_NOT_SET(0);
      private final int value;
      private TargetCase(int value) {
        this.value = value;
      }
      /**
       * @param value The number of the enum to look for.
       * @return The enum associated with the given number.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static TargetCase valueOf(int value) {
        return forNumber(value);
      }
      public static TargetCase forNumber(int value) {
        switch (value) {
          case 2: return NOTEBOOK_ID;
          case 3: return CELL_ID;
          case 0: return TARGET_NOT_SET;
          default: return null;
        }
      }
      public int getNumber() {
        return this.value;
      }
    };
    public TargetCase
    getTargetCase() {
      return TargetCase.forNumber(
          targetCase_);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the project to execute notebook/cell in.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the project to execute notebook/cell in.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int NOTEBOOK_ID_FIELD_NUMBER = 2;
    /**
     * 
     * ID of the notebook to execute.
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
     * @return Whether the notebookId field is set.
     */
    public boolean hasNotebookId() {
      return targetCase_ == 2;
    }
    /**
     * 
     * ID of the notebook to execute.
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
     * @return The notebookId.
     */
    public java.lang.String getNotebookId() {
      java.lang.Object ref = "";
      if (targetCase_ == 2) {
        ref = target_;
      }
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (targetCase_ == 2) {
          target_ = s;
        }
        return s;
      }
    }
    /**
     * 
     * ID of the notebook to execute.
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
     * @return The bytes for notebookId.
     */
    public com.google.protobuf.ByteString
        getNotebookIdBytes() {
      java.lang.Object ref = "";
      if (targetCase_ == 2) {
        ref = target_;
      }
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        if (targetCase_ == 2) {
          target_ = b;
        }
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int CELL_ID_FIELD_NUMBER = 3;
    /**
     * 
     * ID of the cell to execute.
     * 
     *
     * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
     * @return Whether the cellId field is set.
     */
    public boolean hasCellId() {
      return targetCase_ == 3;
    }
    /**
     * 
     * ID of the cell to execute.
     * 
     *
     * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
     * @return The cellId.
     */
    public java.lang.String getCellId() {
      java.lang.Object ref = "";
      if (targetCase_ == 3) {
        ref = target_;
      }
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (targetCase_ == 3) {
          target_ = s;
        }
        return s;
      }
    }
    /**
     * 
     * ID of the cell to execute.
     * 
     *
     * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
     * @return The bytes for cellId.
     */
    public com.google.protobuf.ByteString
        getCellIdBytes() {
      java.lang.Object ref = "";
      if (targetCase_ == 3) {
        ref = target_;
      }
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        if (targetCase_ == 3) {
          target_ = b;
        }
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int INPUT_VARIABLES_FIELD_NUMBER = 4;
    private com.google.protobuf.Struct inputVariables_;
    /**
     * 
     * Values of input variables.
     * 
     *
     * .google.protobuf.Struct input_variables = 4;
     * @return Whether the inputVariables field is set.
     */
    @java.lang.Override
    public boolean hasInputVariables() {
      return inputVariables_ != null;
    }
    /**
     * 
     * Values of input variables.
     * 
     *
     * .google.protobuf.Struct input_variables = 4;
     * @return The inputVariables.
     */
    @java.lang.Override
    public com.google.protobuf.Struct getInputVariables() {
      return inputVariables_ == null ? com.google.protobuf.Struct.getDefaultInstance() : inputVariables_;
    }
    /**
     * 
     * Values of input variables.
     * 
     *
     * .google.protobuf.Struct input_variables = 4;
     */
    @java.lang.Override
    public com.google.protobuf.StructOrBuilder getInputVariablesOrBuilder() {
      return getInputVariables();
    }
    public static final int OUTPUT_VARIABLE_NAMES_FIELD_NUMBER = 5;
    private com.google.protobuf.LazyStringList outputVariableNames_;
    /**
     * 
     * Names of output variables.
     * 
     *
     * repeated string output_variable_names = 5;
     * @return A list containing the outputVariableNames.
     */
    public com.google.protobuf.ProtocolStringList
        getOutputVariableNamesList() {
      return outputVariableNames_;
    }
    /**
     * 
     * Names of output variables.
     * 
     *
     * repeated string output_variable_names = 5;
     * @return The count of outputVariableNames.
     */
    public int getOutputVariableNamesCount() {
      return outputVariableNames_.size();
    }
    /**
     * 
     * Names of output variables.
     * 
     *
     * repeated string output_variable_names = 5;
     * @param index The index of the element to return.
     * @return The outputVariableNames at the given index.
     */
    public java.lang.String getOutputVariableNames(int index) {
      return outputVariableNames_.get(index);
    }
    /**
     * 
     * Names of output variables.
     * 
     *
     * repeated string output_variable_names = 5;
     * @param index The index of the value to return.
     * @return The bytes of the outputVariableNames at the given index.
     */
    public com.google.protobuf.ByteString
        getOutputVariableNamesBytes(int index) {
      return outputVariableNames_.getByteString(index);
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      if (targetCase_ == 2) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, target_);
      }
      if (targetCase_ == 3) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, target_);
      }
      if (inputVariables_ != null) {
        output.writeMessage(4, getInputVariables());
      }
      for (int i = 0; i < outputVariableNames_.size(); i++) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, outputVariableNames_.getRaw(i));
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      if (targetCase_ == 2) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, target_);
      }
      if (targetCase_ == 3) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, target_);
      }
      if (inputVariables_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, getInputVariables());
      }
      {
        int dataSize = 0;
        for (int i = 0; i < outputVariableNames_.size(); i++) {
          dataSize += computeStringSizeNoTag(outputVariableNames_.getRaw(i));
        }
        size += dataSize;
        size += 1 * getOutputVariableNamesList().size();
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (hasInputVariables() != other.hasInputVariables()) return false;
      if (hasInputVariables()) {
        if (!getInputVariables()
            .equals(other.getInputVariables())) return false;
      }
      if (!getOutputVariableNamesList()
          .equals(other.getOutputVariableNamesList())) return false;
      if (!getTargetCase().equals(other.getTargetCase())) return false;
      switch (targetCase_) {
        case 2:
          if (!getNotebookId()
              .equals(other.getNotebookId())) return false;
          break;
        case 3:
          if (!getCellId()
              .equals(other.getCellId())) return false;
          break;
        case 0:
        default:
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      if (hasInputVariables()) {
        hash = (37 * hash) + INPUT_VARIABLES_FIELD_NUMBER;
        hash = (53 * hash) + getInputVariables().hashCode();
      }
      if (getOutputVariableNamesCount() > 0) {
        hash = (37 * hash) + OUTPUT_VARIABLE_NAMES_FIELD_NUMBER;
        hash = (53 * hash) + getOutputVariableNamesList().hashCode();
      }
      switch (targetCase_) {
        case 2:
          hash = (37 * hash) + NOTEBOOK_ID_FIELD_NUMBER;
          hash = (53 * hash) + getNotebookId().hashCode();
          break;
        case 3:
          hash = (37 * hash) + CELL_ID_FIELD_NUMBER;
          hash = (53 * hash) + getCellId().hashCode();
          break;
        case 0:
        default:
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.ProjectExecutionRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.ProjectExecutionRequest)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ProjectExecutionRequest_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ProjectExecutionRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        if (inputVariablesBuilder_ == null) {
          inputVariables_ = null;
        } else {
          inputVariables_ = null;
          inputVariablesBuilder_ = null;
        }
        outputVariableNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        targetCase_ = 0;
        target_ = null;
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ProjectExecutionRequest_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest(this);
        int from_bitField0_ = bitField0_;
        result.projectId_ = projectId_;
        if (targetCase_ == 2) {
          result.target_ = target_;
        }
        if (targetCase_ == 3) {
          result.target_ = target_;
        }
        if (inputVariablesBuilder_ == null) {
          result.inputVariables_ = inputVariables_;
        } else {
          result.inputVariables_ = inputVariablesBuilder_.build();
        }
        if (((bitField0_ & 0x00000001) != 0)) {
          outputVariableNames_ = outputVariableNames_.getUnmodifiableView();
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.outputVariableNames_ = outputVariableNames_;
        result.targetCase_ = targetCase_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        if (other.hasInputVariables()) {
          mergeInputVariables(other.getInputVariables());
        }
        if (!other.outputVariableNames_.isEmpty()) {
          if (outputVariableNames_.isEmpty()) {
            outputVariableNames_ = other.outputVariableNames_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureOutputVariableNamesIsMutable();
            outputVariableNames_.addAll(other.outputVariableNames_);
          }
          onChanged();
        }
        switch (other.getTargetCase()) {
          case NOTEBOOK_ID: {
            targetCase_ = 2;
            target_ = other.target_;
            onChanged();
            break;
          }
          case CELL_ID: {
            targetCase_ = 3;
            target_ = other.target_;
            onChanged();
            break;
          }
          case TARGET_NOT_SET: {
            break;
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int targetCase_ = 0;
      private java.lang.Object target_;
      public TargetCase
          getTargetCase() {
        return TargetCase.forNumber(
            targetCase_);
      }
      public Builder clearTarget() {
        targetCase_ = 0;
        target_ = null;
        onChanged();
        return this;
      }
      private int bitField0_;
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the project to execute notebook/cell in.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the project to execute notebook/cell in.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the project to execute notebook/cell in.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project to execute notebook/cell in.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project to execute notebook/cell in.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the notebook to execute.
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
       * @return Whether the notebookId field is set.
       */
      @java.lang.Override
      public boolean hasNotebookId() {
        return targetCase_ == 2;
      }
      /**
       * 
       * ID of the notebook to execute.
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
       * @return The notebookId.
       */
      @java.lang.Override
      public java.lang.String getNotebookId() {
        java.lang.Object ref = "";
        if (targetCase_ == 2) {
          ref = target_;
        }
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (targetCase_ == 2) {
            target_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the notebook to execute.
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
       * @return The bytes for notebookId.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getNotebookIdBytes() {
        java.lang.Object ref = "";
        if (targetCase_ == 2) {
          ref = target_;
        }
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          if (targetCase_ == 2) {
            target_ = b;
          }
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the notebook to execute.
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
       * @param value The notebookId to set.
       * @return This builder for chaining.
       */
      public Builder setNotebookId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  targetCase_ = 2;
        target_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the notebook to execute.
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
       * @return This builder for chaining.
       */
      public Builder clearNotebookId() {
        if (targetCase_ == 2) {
          targetCase_ = 0;
          target_ = null;
          onChanged();
        }
        return this;
      }
      /**
       * 
       * ID of the notebook to execute.
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
       * @param value The bytes for notebookId to set.
       * @return This builder for chaining.
       */
      public Builder setNotebookIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        targetCase_ = 2;
        target_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the cell to execute.
       * 
       *
       * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
       * @return Whether the cellId field is set.
       */
      @java.lang.Override
      public boolean hasCellId() {
        return targetCase_ == 3;
      }
      /**
       * 
       * ID of the cell to execute.
       * 
       *
       * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
       * @return The cellId.
       */
      @java.lang.Override
      public java.lang.String getCellId() {
        java.lang.Object ref = "";
        if (targetCase_ == 3) {
          ref = target_;
        }
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (targetCase_ == 3) {
            target_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the cell to execute.
       * 
       *
       * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
       * @return The bytes for cellId.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getCellIdBytes() {
        java.lang.Object ref = "";
        if (targetCase_ == 3) {
          ref = target_;
        }
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          if (targetCase_ == 3) {
            target_ = b;
          }
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the cell to execute.
       * 
       *
       * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
       * @param value The cellId to set.
       * @return This builder for chaining.
       */
      public Builder setCellId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  targetCase_ = 3;
        target_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the cell to execute.
       * 
       *
       * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
       * @return This builder for chaining.
       */
      public Builder clearCellId() {
        if (targetCase_ == 3) {
          targetCase_ = 0;
          target_ = null;
          onChanged();
        }
        return this;
      }
      /**
       * 
       * ID of the cell to execute.
       * 
       *
       * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
       * @param value The bytes for cellId to set.
       * @return This builder for chaining.
       */
      public Builder setCellIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        targetCase_ = 3;
        target_ = value;
        onChanged();
        return this;
      }
      private com.google.protobuf.Struct inputVariables_;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Struct, com.google.protobuf.Struct.Builder, com.google.protobuf.StructOrBuilder> inputVariablesBuilder_;
      /**
       * 
       * Values of input variables.
       * 
       *
       * .google.protobuf.Struct input_variables = 4;
       * @return Whether the inputVariables field is set.
       */
      public boolean hasInputVariables() {
        return inputVariablesBuilder_ != null || inputVariables_ != null;
      }
      /**
       * 
       * Values of input variables.
       * 
       *
       * .google.protobuf.Struct input_variables = 4;
       * @return The inputVariables.
       */
      public com.google.protobuf.Struct getInputVariables() {
        if (inputVariablesBuilder_ == null) {
          return inputVariables_ == null ? com.google.protobuf.Struct.getDefaultInstance() : inputVariables_;
        } else {
          return inputVariablesBuilder_.getMessage();
        }
      }
      /**
       * 
       * Values of input variables.
       * 
       *
       * .google.protobuf.Struct input_variables = 4;
       */
      public Builder setInputVariables(com.google.protobuf.Struct value) {
        if (inputVariablesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          inputVariables_ = value;
          onChanged();
        } else {
          inputVariablesBuilder_.setMessage(value);
        }
        return this;
      }
      /**
       * 
       * Values of input variables.
       * 
       *
       * .google.protobuf.Struct input_variables = 4;
       */
      public Builder setInputVariables(
          com.google.protobuf.Struct.Builder builderForValue) {
        if (inputVariablesBuilder_ == null) {
          inputVariables_ = builderForValue.build();
          onChanged();
        } else {
          inputVariablesBuilder_.setMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * Values of input variables.
       * 
       *
       * .google.protobuf.Struct input_variables = 4;
       */
      public Builder mergeInputVariables(com.google.protobuf.Struct value) {
        if (inputVariablesBuilder_ == null) {
          if (inputVariables_ != null) {
            inputVariables_ =
              com.google.protobuf.Struct.newBuilder(inputVariables_).mergeFrom(value).buildPartial();
          } else {
            inputVariables_ = value;
          }
          onChanged();
        } else {
          inputVariablesBuilder_.mergeFrom(value);
        }
        return this;
      }
      /**
       * 
       * Values of input variables.
       * 
       *
       * .google.protobuf.Struct input_variables = 4;
       */
      public Builder clearInputVariables() {
        if (inputVariablesBuilder_ == null) {
          inputVariables_ = null;
          onChanged();
        } else {
          inputVariables_ = null;
          inputVariablesBuilder_ = null;
        }
        return this;
      }
      /**
       * 
       * Values of input variables.
       * 
       *
       * .google.protobuf.Struct input_variables = 4;
       */
      public com.google.protobuf.Struct.Builder getInputVariablesBuilder() {
        
        onChanged();
        return getInputVariablesFieldBuilder().getBuilder();
      }
      /**
       * 
       * Values of input variables.
       * 
       *
       * .google.protobuf.Struct input_variables = 4;
       */
      public com.google.protobuf.StructOrBuilder getInputVariablesOrBuilder() {
        if (inputVariablesBuilder_ != null) {
          return inputVariablesBuilder_.getMessageOrBuilder();
        } else {
          return inputVariables_ == null ?
              com.google.protobuf.Struct.getDefaultInstance() : inputVariables_;
        }
      }
      /**
       * 
       * Values of input variables.
       * 
       *
       * .google.protobuf.Struct input_variables = 4;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Struct, com.google.protobuf.Struct.Builder, com.google.protobuf.StructOrBuilder> 
          getInputVariablesFieldBuilder() {
        if (inputVariablesBuilder_ == null) {
          inputVariablesBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.google.protobuf.Struct, com.google.protobuf.Struct.Builder, com.google.protobuf.StructOrBuilder>(
                  getInputVariables(),
                  getParentForChildren(),
                  isClean());
          inputVariables_ = null;
        }
        return inputVariablesBuilder_;
      }
      private com.google.protobuf.LazyStringList outputVariableNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      private void ensureOutputVariableNamesIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          outputVariableNames_ = new com.google.protobuf.LazyStringArrayList(outputVariableNames_);
          bitField0_ |= 0x00000001;
         }
      }
      /**
       * 
       * Names of output variables.
       * 
       *
       * repeated string output_variable_names = 5;
       * @return A list containing the outputVariableNames.
       */
      public com.google.protobuf.ProtocolStringList
          getOutputVariableNamesList() {
        return outputVariableNames_.getUnmodifiableView();
      }
      /**
       * 
       * Names of output variables.
       * 
       *
       * repeated string output_variable_names = 5;
       * @return The count of outputVariableNames.
       */
      public int getOutputVariableNamesCount() {
        return outputVariableNames_.size();
      }
      /**
       * 
       * Names of output variables.
       * 
       *
       * repeated string output_variable_names = 5;
       * @param index The index of the element to return.
       * @return The outputVariableNames at the given index.
       */
      public java.lang.String getOutputVariableNames(int index) {
        return outputVariableNames_.get(index);
      }
      /**
       * 
       * Names of output variables.
       * 
       *
       * repeated string output_variable_names = 5;
       * @param index The index of the value to return.
       * @return The bytes of the outputVariableNames at the given index.
       */
      public com.google.protobuf.ByteString
          getOutputVariableNamesBytes(int index) {
        return outputVariableNames_.getByteString(index);
      }
      /**
       * 
       * Names of output variables.
       * 
       *
       * repeated string output_variable_names = 5;
       * @param index The index to set the value at.
       * @param value The outputVariableNames to set.
       * @return This builder for chaining.
       */
      public Builder setOutputVariableNames(
          int index, java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureOutputVariableNamesIsMutable();
        outputVariableNames_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * 
       * Names of output variables.
       * 
       *
       * repeated string output_variable_names = 5;
       * @param value The outputVariableNames to add.
       * @return This builder for chaining.
       */
      public Builder addOutputVariableNames(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureOutputVariableNamesIsMutable();
        outputVariableNames_.add(value);
        onChanged();
        return this;
      }
      /**
       * 
       * Names of output variables.
       * 
       *
       * repeated string output_variable_names = 5;
       * @param values The outputVariableNames to add.
       * @return This builder for chaining.
       */
      public Builder addAllOutputVariableNames(
          java.lang.Iterable values) {
        ensureOutputVariableNamesIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, outputVariableNames_);
        onChanged();
        return this;
      }
      /**
       * 
       * Names of output variables.
       * 
       *
       * repeated string output_variable_names = 5;
       * @return This builder for chaining.
       */
      public Builder clearOutputVariableNames() {
        outputVariableNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }
      /**
       * 
       * Names of output variables.
       * 
       *
       * repeated string output_variable_names = 5;
       * @param value The bytes of the outputVariableNames to add.
       * @return This builder for chaining.
       */
      public Builder addOutputVariableNamesBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        ensureOutputVariableNamesIsMutable();
        outputVariableNames_.add(value);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.ProjectExecutionRequest)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.ProjectExecutionRequest)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public ProjectExecutionRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ProjectExecutionRequest(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface ProjectExecutionMetadataOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.ProjectExecutionMetadata)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the project in which notebook is being executed.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the project in which notebook is being executed.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
    /**
     * 
     * ID of the notebook that is being executed
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
     * @return Whether the notebookId field is set.
     */
    boolean hasNotebookId();
    /**
     * 
     * ID of the notebook that is being executed
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
     * @return The notebookId.
     */
    java.lang.String getNotebookId();
    /**
     * 
     * ID of the notebook that is being executed
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
     * @return The bytes for notebookId.
     */
    com.google.protobuf.ByteString
        getNotebookIdBytes();
    /**
     * 
     * ID of the cell that is being executed
     * 
     *
     * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
     * @return Whether the cellId field is set.
     */
    boolean hasCellId();
    /**
     * 
     * ID of the cell that is being executed
     * 
     *
     * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
     * @return The cellId.
     */
    java.lang.String getCellId();
    /**
     * 
     * ID of the cell that is being executed
     * 
     *
     * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
     * @return The bytes for cellId.
     */
    com.google.protobuf.ByteString
        getCellIdBytes();
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata.TargetCase getTargetCase();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.ProjectExecutionMetadata}
   */
  public static final class ProjectExecutionMetadata extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.ProjectExecutionMetadata)
      ProjectExecutionMetadataOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ProjectExecutionMetadata.newBuilder() to construct.
    private ProjectExecutionMetadata(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private ProjectExecutionMetadata() {
      projectId_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new ProjectExecutionMetadata();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ProjectExecutionMetadata(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();
              targetCase_ = 2;
              target_ = s;
              break;
            }
            case 26: {
              java.lang.String s = input.readStringRequireUtf8();
              targetCase_ = 3;
              target_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ProjectExecutionMetadata_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ProjectExecutionMetadata_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata.Builder.class);
    }
    private int targetCase_ = 0;
    private java.lang.Object target_;
    public enum TargetCase
        implements com.google.protobuf.Internal.EnumLite,
            com.google.protobuf.AbstractMessage.InternalOneOfEnum {
      NOTEBOOK_ID(2),
      CELL_ID(3),
      TARGET_NOT_SET(0);
      private final int value;
      private TargetCase(int value) {
        this.value = value;
      }
      /**
       * @param value The number of the enum to look for.
       * @return The enum associated with the given number.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static TargetCase valueOf(int value) {
        return forNumber(value);
      }
      public static TargetCase forNumber(int value) {
        switch (value) {
          case 2: return NOTEBOOK_ID;
          case 3: return CELL_ID;
          case 0: return TARGET_NOT_SET;
          default: return null;
        }
      }
      public int getNumber() {
        return this.value;
      }
    };
    public TargetCase
    getTargetCase() {
      return TargetCase.forNumber(
          targetCase_);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the project in which notebook is being executed.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the project in which notebook is being executed.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int NOTEBOOK_ID_FIELD_NUMBER = 2;
    /**
     * 
     * ID of the notebook that is being executed
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
     * @return Whether the notebookId field is set.
     */
    public boolean hasNotebookId() {
      return targetCase_ == 2;
    }
    /**
     * 
     * ID of the notebook that is being executed
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
     * @return The notebookId.
     */
    public java.lang.String getNotebookId() {
      java.lang.Object ref = "";
      if (targetCase_ == 2) {
        ref = target_;
      }
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (targetCase_ == 2) {
          target_ = s;
        }
        return s;
      }
    }
    /**
     * 
     * ID of the notebook that is being executed
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
     * @return The bytes for notebookId.
     */
    public com.google.protobuf.ByteString
        getNotebookIdBytes() {
      java.lang.Object ref = "";
      if (targetCase_ == 2) {
        ref = target_;
      }
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        if (targetCase_ == 2) {
          target_ = b;
        }
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int CELL_ID_FIELD_NUMBER = 3;
    /**
     * 
     * ID of the cell that is being executed
     * 
     *
     * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
     * @return Whether the cellId field is set.
     */
    public boolean hasCellId() {
      return targetCase_ == 3;
    }
    /**
     * 
     * ID of the cell that is being executed
     * 
     *
     * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
     * @return The cellId.
     */
    public java.lang.String getCellId() {
      java.lang.Object ref = "";
      if (targetCase_ == 3) {
        ref = target_;
      }
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (targetCase_ == 3) {
          target_ = s;
        }
        return s;
      }
    }
    /**
     * 
     * ID of the cell that is being executed
     * 
     *
     * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
     * @return The bytes for cellId.
     */
    public com.google.protobuf.ByteString
        getCellIdBytes() {
      java.lang.Object ref = "";
      if (targetCase_ == 3) {
        ref = target_;
      }
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        if (targetCase_ == 3) {
          target_ = b;
        }
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      if (targetCase_ == 2) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, target_);
      }
      if (targetCase_ == 3) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, target_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      if (targetCase_ == 2) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, target_);
      }
      if (targetCase_ == 3) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, target_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (!getTargetCase().equals(other.getTargetCase())) return false;
      switch (targetCase_) {
        case 2:
          if (!getNotebookId()
              .equals(other.getNotebookId())) return false;
          break;
        case 3:
          if (!getCellId()
              .equals(other.getCellId())) return false;
          break;
        case 0:
        default:
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      switch (targetCase_) {
        case 2:
          hash = (37 * hash) + NOTEBOOK_ID_FIELD_NUMBER;
          hash = (53 * hash) + getNotebookId().hashCode();
          break;
        case 3:
          hash = (37 * hash) + CELL_ID_FIELD_NUMBER;
          hash = (53 * hash) + getCellId().hashCode();
          break;
        case 0:
        default:
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.ProjectExecutionMetadata}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.ProjectExecutionMetadata)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadataOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ProjectExecutionMetadata_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ProjectExecutionMetadata_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        targetCase_ = 0;
        target_ = null;
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ProjectExecutionMetadata_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata(this);
        result.projectId_ = projectId_;
        if (targetCase_ == 2) {
          result.target_ = target_;
        }
        if (targetCase_ == 3) {
          result.target_ = target_;
        }
        result.targetCase_ = targetCase_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        switch (other.getTargetCase()) {
          case NOTEBOOK_ID: {
            targetCase_ = 2;
            target_ = other.target_;
            onChanged();
            break;
          }
          case CELL_ID: {
            targetCase_ = 3;
            target_ = other.target_;
            onChanged();
            break;
          }
          case TARGET_NOT_SET: {
            break;
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int targetCase_ = 0;
      private java.lang.Object target_;
      public TargetCase
          getTargetCase() {
        return TargetCase.forNumber(
            targetCase_);
      }
      public Builder clearTarget() {
        targetCase_ = 0;
        target_ = null;
        onChanged();
        return this;
      }
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the project in which notebook is being executed.
       * 
       *
       * string project_id = 1;
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the project in which notebook is being executed.
       * 
       *
       * string project_id = 1;
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the project in which notebook is being executed.
       * 
       *
       * string project_id = 1;
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project in which notebook is being executed.
       * 
       *
       * string project_id = 1;
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project in which notebook is being executed.
       * 
       *
       * string project_id = 1;
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the notebook that is being executed
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
       * @return Whether the notebookId field is set.
       */
      @java.lang.Override
      public boolean hasNotebookId() {
        return targetCase_ == 2;
      }
      /**
       * 
       * ID of the notebook that is being executed
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
       * @return The notebookId.
       */
      @java.lang.Override
      public java.lang.String getNotebookId() {
        java.lang.Object ref = "";
        if (targetCase_ == 2) {
          ref = target_;
        }
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (targetCase_ == 2) {
            target_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the notebook that is being executed
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
       * @return The bytes for notebookId.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getNotebookIdBytes() {
        java.lang.Object ref = "";
        if (targetCase_ == 2) {
          ref = target_;
        }
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          if (targetCase_ == 2) {
            target_ = b;
          }
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the notebook that is being executed
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
       * @param value The notebookId to set.
       * @return This builder for chaining.
       */
      public Builder setNotebookId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  targetCase_ = 2;
        target_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the notebook that is being executed
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
       * @return This builder for chaining.
       */
      public Builder clearNotebookId() {
        if (targetCase_ == 2) {
          targetCase_ = 0;
          target_ = null;
          onChanged();
        }
        return this;
      }
      /**
       * 
       * ID of the notebook that is being executed
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.length) = "<=200"];
       * @param value The bytes for notebookId to set.
       * @return This builder for chaining.
       */
      public Builder setNotebookIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        targetCase_ = 2;
        target_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the cell that is being executed
       * 
       *
       * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
       * @return Whether the cellId field is set.
       */
      @java.lang.Override
      public boolean hasCellId() {
        return targetCase_ == 3;
      }
      /**
       * 
       * ID of the cell that is being executed
       * 
       *
       * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
       * @return The cellId.
       */
      @java.lang.Override
      public java.lang.String getCellId() {
        java.lang.Object ref = "";
        if (targetCase_ == 3) {
          ref = target_;
        }
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (targetCase_ == 3) {
            target_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the cell that is being executed
       * 
       *
       * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
       * @return The bytes for cellId.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getCellIdBytes() {
        java.lang.Object ref = "";
        if (targetCase_ == 3) {
          ref = target_;
        }
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          if (targetCase_ == 3) {
            target_ = b;
          }
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the cell that is being executed
       * 
       *
       * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
       * @param value The cellId to set.
       * @return This builder for chaining.
       */
      public Builder setCellId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  targetCase_ = 3;
        target_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the cell that is being executed
       * 
       *
       * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
       * @return This builder for chaining.
       */
      public Builder clearCellId() {
        if (targetCase_ == 3) {
          targetCase_ = 0;
          target_ = null;
          onChanged();
        }
        return this;
      }
      /**
       * 
       * ID of the cell that is being executed
       * 
       *
       * string cell_id = 3 [(.yandex.cloud.length) = "<=200"];
       * @param value The bytes for cellId to set.
       * @return This builder for chaining.
       */
      public Builder setCellIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        targetCase_ = 3;
        target_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.ProjectExecutionMetadata)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.ProjectExecutionMetadata)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public ProjectExecutionMetadata parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ProjectExecutionMetadata(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionMetadata getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface ProjectExecutionResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.ProjectExecutionResponse)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the checkpoint resulting from the execution.
     * 
     *
     * string checkpoint_id = 1;
     * @return The checkpointId.
     */
    java.lang.String getCheckpointId();
    /**
     * 
     * ID of the checkpoint resulting from the execution.
     * 
     *
     * string checkpoint_id = 1;
     * @return The bytes for checkpointId.
     */
    com.google.protobuf.ByteString
        getCheckpointIdBytes();
    /**
     * 
     * Values of output variables resulting from the execution.
     * 
     *
     * .google.protobuf.Struct output_variables = 2;
     * @return Whether the outputVariables field is set.
     */
    boolean hasOutputVariables();
    /**
     * 
     * Values of output variables resulting from the execution.
     * 
     *
     * .google.protobuf.Struct output_variables = 2;
     * @return The outputVariables.
     */
    com.google.protobuf.Struct getOutputVariables();
    /**
     * 
     * Values of output variables resulting from the execution.
     * 
     *
     * .google.protobuf.Struct output_variables = 2;
     */
    com.google.protobuf.StructOrBuilder getOutputVariablesOrBuilder();
    /**
     * 
     * Execution final status.
     * 
     *
     * .yandex.cloud.datasphere.v2.ExecutionStatus execution_status = 3;
     * @return The enum numeric value on the wire for executionStatus.
     */
    int getExecutionStatusValue();
    /**
     * 
     * Execution final status.
     * 
     *
     * .yandex.cloud.datasphere.v2.ExecutionStatus execution_status = 3;
     * @return The executionStatus.
     */
    yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ExecutionStatus getExecutionStatus();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.ProjectExecutionResponse}
   */
  public static final class ProjectExecutionResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.ProjectExecutionResponse)
      ProjectExecutionResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ProjectExecutionResponse.newBuilder() to construct.
    private ProjectExecutionResponse(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private ProjectExecutionResponse() {
      checkpointId_ = "";
      executionStatus_ = 0;
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new ProjectExecutionResponse();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ProjectExecutionResponse(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              checkpointId_ = s;
              break;
            }
            case 18: {
              com.google.protobuf.Struct.Builder subBuilder = null;
              if (outputVariables_ != null) {
                subBuilder = outputVariables_.toBuilder();
              }
              outputVariables_ = input.readMessage(com.google.protobuf.Struct.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(outputVariables_);
                outputVariables_ = subBuilder.buildPartial();
              }
              break;
            }
            case 24: {
              int rawValue = input.readEnum();
              executionStatus_ = rawValue;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ProjectExecutionResponse_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ProjectExecutionResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse.Builder.class);
    }
    public static final int CHECKPOINT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object checkpointId_;
    /**
     * 
     * ID of the checkpoint resulting from the execution.
     * 
     *
     * string checkpoint_id = 1;
     * @return The checkpointId.
     */
    @java.lang.Override
    public java.lang.String getCheckpointId() {
      java.lang.Object ref = checkpointId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        checkpointId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the checkpoint resulting from the execution.
     * 
     *
     * string checkpoint_id = 1;
     * @return The bytes for checkpointId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getCheckpointIdBytes() {
      java.lang.Object ref = checkpointId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        checkpointId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int OUTPUT_VARIABLES_FIELD_NUMBER = 2;
    private com.google.protobuf.Struct outputVariables_;
    /**
     * 
     * Values of output variables resulting from the execution.
     * 
     *
     * .google.protobuf.Struct output_variables = 2;
     * @return Whether the outputVariables field is set.
     */
    @java.lang.Override
    public boolean hasOutputVariables() {
      return outputVariables_ != null;
    }
    /**
     * 
     * Values of output variables resulting from the execution.
     * 
     *
     * .google.protobuf.Struct output_variables = 2;
     * @return The outputVariables.
     */
    @java.lang.Override
    public com.google.protobuf.Struct getOutputVariables() {
      return outputVariables_ == null ? com.google.protobuf.Struct.getDefaultInstance() : outputVariables_;
    }
    /**
     * 
     * Values of output variables resulting from the execution.
     * 
     *
     * .google.protobuf.Struct output_variables = 2;
     */
    @java.lang.Override
    public com.google.protobuf.StructOrBuilder getOutputVariablesOrBuilder() {
      return getOutputVariables();
    }
    public static final int EXECUTION_STATUS_FIELD_NUMBER = 3;
    private int executionStatus_;
    /**
     * 
     * Execution final status.
     * 
     *
     * .yandex.cloud.datasphere.v2.ExecutionStatus execution_status = 3;
     * @return The enum numeric value on the wire for executionStatus.
     */
    @java.lang.Override public int getExecutionStatusValue() {
      return executionStatus_;
    }
    /**
     * 
     * Execution final status.
     * 
     *
     * .yandex.cloud.datasphere.v2.ExecutionStatus execution_status = 3;
     * @return The executionStatus.
     */
    @java.lang.Override public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ExecutionStatus getExecutionStatus() {
      @SuppressWarnings("deprecation")
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ExecutionStatus result = yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ExecutionStatus.valueOf(executionStatus_);
      return result == null ? yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ExecutionStatus.UNRECOGNIZED : result;
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(checkpointId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, checkpointId_);
      }
      if (outputVariables_ != null) {
        output.writeMessage(2, getOutputVariables());
      }
      if (executionStatus_ != yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ExecutionStatus.EXECUTION_STATUS_UNSPECIFIED.getNumber()) {
        output.writeEnum(3, executionStatus_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(checkpointId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, checkpointId_);
      }
      if (outputVariables_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getOutputVariables());
      }
      if (executionStatus_ != yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ExecutionStatus.EXECUTION_STATUS_UNSPECIFIED.getNumber()) {
        size += com.google.protobuf.CodedOutputStream
          .computeEnumSize(3, executionStatus_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse) obj;
      if (!getCheckpointId()
          .equals(other.getCheckpointId())) return false;
      if (hasOutputVariables() != other.hasOutputVariables()) return false;
      if (hasOutputVariables()) {
        if (!getOutputVariables()
            .equals(other.getOutputVariables())) return false;
      }
      if (executionStatus_ != other.executionStatus_) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + CHECKPOINT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getCheckpointId().hashCode();
      if (hasOutputVariables()) {
        hash = (37 * hash) + OUTPUT_VARIABLES_FIELD_NUMBER;
        hash = (53 * hash) + getOutputVariables().hashCode();
      }
      hash = (37 * hash) + EXECUTION_STATUS_FIELD_NUMBER;
      hash = (53 * hash) + executionStatus_;
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.ProjectExecutionResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.ProjectExecutionResponse)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ProjectExecutionResponse_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ProjectExecutionResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        checkpointId_ = "";
        if (outputVariablesBuilder_ == null) {
          outputVariables_ = null;
        } else {
          outputVariables_ = null;
          outputVariablesBuilder_ = null;
        }
        executionStatus_ = 0;
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_ProjectExecutionResponse_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse(this);
        result.checkpointId_ = checkpointId_;
        if (outputVariablesBuilder_ == null) {
          result.outputVariables_ = outputVariables_;
        } else {
          result.outputVariables_ = outputVariablesBuilder_.build();
        }
        result.executionStatus_ = executionStatus_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse.getDefaultInstance()) return this;
        if (!other.getCheckpointId().isEmpty()) {
          checkpointId_ = other.checkpointId_;
          onChanged();
        }
        if (other.hasOutputVariables()) {
          mergeOutputVariables(other.getOutputVariables());
        }
        if (other.executionStatus_ != 0) {
          setExecutionStatusValue(other.getExecutionStatusValue());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object checkpointId_ = "";
      /**
       * 
       * ID of the checkpoint resulting from the execution.
       * 
       *
       * string checkpoint_id = 1;
       * @return The checkpointId.
       */
      public java.lang.String getCheckpointId() {
        java.lang.Object ref = checkpointId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          checkpointId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the checkpoint resulting from the execution.
       * 
       *
       * string checkpoint_id = 1;
       * @return The bytes for checkpointId.
       */
      public com.google.protobuf.ByteString
          getCheckpointIdBytes() {
        java.lang.Object ref = checkpointId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          checkpointId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the checkpoint resulting from the execution.
       * 
       *
       * string checkpoint_id = 1;
       * @param value The checkpointId to set.
       * @return This builder for chaining.
       */
      public Builder setCheckpointId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        checkpointId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the checkpoint resulting from the execution.
       * 
       *
       * string checkpoint_id = 1;
       * @return This builder for chaining.
       */
      public Builder clearCheckpointId() {
        
        checkpointId_ = getDefaultInstance().getCheckpointId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the checkpoint resulting from the execution.
       * 
       *
       * string checkpoint_id = 1;
       * @param value The bytes for checkpointId to set.
       * @return This builder for chaining.
       */
      public Builder setCheckpointIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        checkpointId_ = value;
        onChanged();
        return this;
      }
      private com.google.protobuf.Struct outputVariables_;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Struct, com.google.protobuf.Struct.Builder, com.google.protobuf.StructOrBuilder> outputVariablesBuilder_;
      /**
       * 
       * Values of output variables resulting from the execution.
       * 
       *
       * .google.protobuf.Struct output_variables = 2;
       * @return Whether the outputVariables field is set.
       */
      public boolean hasOutputVariables() {
        return outputVariablesBuilder_ != null || outputVariables_ != null;
      }
      /**
       * 
       * Values of output variables resulting from the execution.
       * 
       *
       * .google.protobuf.Struct output_variables = 2;
       * @return The outputVariables.
       */
      public com.google.protobuf.Struct getOutputVariables() {
        if (outputVariablesBuilder_ == null) {
          return outputVariables_ == null ? com.google.protobuf.Struct.getDefaultInstance() : outputVariables_;
        } else {
          return outputVariablesBuilder_.getMessage();
        }
      }
      /**
       * 
       * Values of output variables resulting from the execution.
       * 
       *
       * .google.protobuf.Struct output_variables = 2;
       */
      public Builder setOutputVariables(com.google.protobuf.Struct value) {
        if (outputVariablesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          outputVariables_ = value;
          onChanged();
        } else {
          outputVariablesBuilder_.setMessage(value);
        }
        return this;
      }
      /**
       * 
       * Values of output variables resulting from the execution.
       * 
       *
       * .google.protobuf.Struct output_variables = 2;
       */
      public Builder setOutputVariables(
          com.google.protobuf.Struct.Builder builderForValue) {
        if (outputVariablesBuilder_ == null) {
          outputVariables_ = builderForValue.build();
          onChanged();
        } else {
          outputVariablesBuilder_.setMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * Values of output variables resulting from the execution.
       * 
       *
       * .google.protobuf.Struct output_variables = 2;
       */
      public Builder mergeOutputVariables(com.google.protobuf.Struct value) {
        if (outputVariablesBuilder_ == null) {
          if (outputVariables_ != null) {
            outputVariables_ =
              com.google.protobuf.Struct.newBuilder(outputVariables_).mergeFrom(value).buildPartial();
          } else {
            outputVariables_ = value;
          }
          onChanged();
        } else {
          outputVariablesBuilder_.mergeFrom(value);
        }
        return this;
      }
      /**
       * 
       * Values of output variables resulting from the execution.
       * 
       *
       * .google.protobuf.Struct output_variables = 2;
       */
      public Builder clearOutputVariables() {
        if (outputVariablesBuilder_ == null) {
          outputVariables_ = null;
          onChanged();
        } else {
          outputVariables_ = null;
          outputVariablesBuilder_ = null;
        }
        return this;
      }
      /**
       * 
       * Values of output variables resulting from the execution.
       * 
       *
       * .google.protobuf.Struct output_variables = 2;
       */
      public com.google.protobuf.Struct.Builder getOutputVariablesBuilder() {
        
        onChanged();
        return getOutputVariablesFieldBuilder().getBuilder();
      }
      /**
       * 
       * Values of output variables resulting from the execution.
       * 
       *
       * .google.protobuf.Struct output_variables = 2;
       */
      public com.google.protobuf.StructOrBuilder getOutputVariablesOrBuilder() {
        if (outputVariablesBuilder_ != null) {
          return outputVariablesBuilder_.getMessageOrBuilder();
        } else {
          return outputVariables_ == null ?
              com.google.protobuf.Struct.getDefaultInstance() : outputVariables_;
        }
      }
      /**
       * 
       * Values of output variables resulting from the execution.
       * 
       *
       * .google.protobuf.Struct output_variables = 2;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Struct, com.google.protobuf.Struct.Builder, com.google.protobuf.StructOrBuilder> 
          getOutputVariablesFieldBuilder() {
        if (outputVariablesBuilder_ == null) {
          outputVariablesBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.google.protobuf.Struct, com.google.protobuf.Struct.Builder, com.google.protobuf.StructOrBuilder>(
                  getOutputVariables(),
                  getParentForChildren(),
                  isClean());
          outputVariables_ = null;
        }
        return outputVariablesBuilder_;
      }
      private int executionStatus_ = 0;
      /**
       * 
       * Execution final status.
       * 
       *
       * .yandex.cloud.datasphere.v2.ExecutionStatus execution_status = 3;
       * @return The enum numeric value on the wire for executionStatus.
       */
      @java.lang.Override public int getExecutionStatusValue() {
        return executionStatus_;
      }
      /**
       * 
       * Execution final status.
       * 
       *
       * .yandex.cloud.datasphere.v2.ExecutionStatus execution_status = 3;
       * @param value The enum numeric value on the wire for executionStatus to set.
       * @return This builder for chaining.
       */
      public Builder setExecutionStatusValue(int value) {
        
        executionStatus_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Execution final status.
       * 
       *
       * .yandex.cloud.datasphere.v2.ExecutionStatus execution_status = 3;
       * @return The executionStatus.
       */
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ExecutionStatus getExecutionStatus() {
        @SuppressWarnings("deprecation")
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ExecutionStatus result = yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ExecutionStatus.valueOf(executionStatus_);
        return result == null ? yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ExecutionStatus.UNRECOGNIZED : result;
      }
      /**
       * 
       * Execution final status.
       * 
       *
       * .yandex.cloud.datasphere.v2.ExecutionStatus execution_status = 3;
       * @param value The executionStatus to set.
       * @return This builder for chaining.
       */
      public Builder setExecutionStatus(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ExecutionStatus value) {
        if (value == null) {
          throw new NullPointerException();
        }
        
        executionStatus_ = value.getNumber();
        onChanged();
        return this;
      }
      /**
       * 
       * Execution final status.
       * 
       *
       * .yandex.cloud.datasphere.v2.ExecutionStatus execution_status = 3;
       * @return This builder for chaining.
       */
      public Builder clearExecutionStatus() {
        
        executionStatus_ = 0;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.ProjectExecutionResponse)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.ProjectExecutionResponse)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public ProjectExecutionResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ProjectExecutionResponse(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.ProjectExecutionResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface CellOutputsRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.CellOutputsRequest)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the project to return cell outputs for.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the project to return cell outputs for.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
    /**
     * 
     * ID of the cell to return outputs for.
     * 
     *
     * string cell_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
     * @return The cellId.
     */
    java.lang.String getCellId();
    /**
     * 
     * ID of the cell to return outputs for.
     * 
     *
     * string cell_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
     * @return The bytes for cellId.
     */
    com.google.protobuf.ByteString
        getCellIdBytes();
    /**
     * 
     * ID of the checkpoint to return cell outputs for.
     * 
     *
     * string checkpoint_id = 3;
     * @return The checkpointId.
     */
    java.lang.String getCheckpointId();
    /**
     * 
     * ID of the checkpoint to return cell outputs for.
     * 
     *
     * string checkpoint_id = 3;
     * @return The bytes for checkpointId.
     */
    com.google.protobuf.ByteString
        getCheckpointIdBytes();
    /**
     * 
     * Timestamp from which to return outputs.
     * 
     *
     * .google.protobuf.Timestamp start_at = 4;
     * @return Whether the startAt field is set.
     */
    boolean hasStartAt();
    /**
     * 
     * Timestamp from which to return outputs.
     * 
     *
     * .google.protobuf.Timestamp start_at = 4;
     * @return The startAt.
     */
    com.google.protobuf.Timestamp getStartAt();
    /**
     * 
     * Timestamp from which to return outputs.
     * 
     *
     * .google.protobuf.Timestamp start_at = 4;
     */
    com.google.protobuf.TimestampOrBuilder getStartAtOrBuilder();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.CellOutputsRequest}
   */
  public static final class CellOutputsRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.CellOutputsRequest)
      CellOutputsRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use CellOutputsRequest.newBuilder() to construct.
    private CellOutputsRequest(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private CellOutputsRequest() {
      projectId_ = "";
      cellId_ = "";
      checkpointId_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new CellOutputsRequest();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private CellOutputsRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();
              cellId_ = s;
              break;
            }
            case 26: {
              java.lang.String s = input.readStringRequireUtf8();
              checkpointId_ = s;
              break;
            }
            case 34: {
              com.google.protobuf.Timestamp.Builder subBuilder = null;
              if (startAt_ != null) {
                subBuilder = startAt_.toBuilder();
              }
              startAt_ = input.readMessage(com.google.protobuf.Timestamp.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(startAt_);
                startAt_ = subBuilder.buildPartial();
              }
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CellOutputsRequest_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CellOutputsRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest.Builder.class);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the project to return cell outputs for.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the project to return cell outputs for.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int CELL_ID_FIELD_NUMBER = 2;
    private volatile java.lang.Object cellId_;
    /**
     * 
     * ID of the cell to return outputs for.
     * 
     *
     * string cell_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
     * @return The cellId.
     */
    @java.lang.Override
    public java.lang.String getCellId() {
      java.lang.Object ref = cellId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        cellId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the cell to return outputs for.
     * 
     *
     * string cell_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
     * @return The bytes for cellId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getCellIdBytes() {
      java.lang.Object ref = cellId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        cellId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int CHECKPOINT_ID_FIELD_NUMBER = 3;
    private volatile java.lang.Object checkpointId_;
    /**
     * 
     * ID of the checkpoint to return cell outputs for.
     * 
     *
     * string checkpoint_id = 3;
     * @return The checkpointId.
     */
    @java.lang.Override
    public java.lang.String getCheckpointId() {
      java.lang.Object ref = checkpointId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        checkpointId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the checkpoint to return cell outputs for.
     * 
     *
     * string checkpoint_id = 3;
     * @return The bytes for checkpointId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getCheckpointIdBytes() {
      java.lang.Object ref = checkpointId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        checkpointId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int START_AT_FIELD_NUMBER = 4;
    private com.google.protobuf.Timestamp startAt_;
    /**
     * 
     * Timestamp from which to return outputs.
     * 
     *
     * .google.protobuf.Timestamp start_at = 4;
     * @return Whether the startAt field is set.
     */
    @java.lang.Override
    public boolean hasStartAt() {
      return startAt_ != null;
    }
    /**
     * 
     * Timestamp from which to return outputs.
     * 
     *
     * .google.protobuf.Timestamp start_at = 4;
     * @return The startAt.
     */
    @java.lang.Override
    public com.google.protobuf.Timestamp getStartAt() {
      return startAt_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startAt_;
    }
    /**
     * 
     * Timestamp from which to return outputs.
     * 
     *
     * .google.protobuf.Timestamp start_at = 4;
     */
    @java.lang.Override
    public com.google.protobuf.TimestampOrBuilder getStartAtOrBuilder() {
      return getStartAt();
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cellId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, cellId_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(checkpointId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, checkpointId_);
      }
      if (startAt_ != null) {
        output.writeMessage(4, getStartAt());
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cellId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, cellId_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(checkpointId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, checkpointId_);
      }
      if (startAt_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, getStartAt());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (!getCellId()
          .equals(other.getCellId())) return false;
      if (!getCheckpointId()
          .equals(other.getCheckpointId())) return false;
      if (hasStartAt() != other.hasStartAt()) return false;
      if (hasStartAt()) {
        if (!getStartAt()
            .equals(other.getStartAt())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      hash = (37 * hash) + CELL_ID_FIELD_NUMBER;
      hash = (53 * hash) + getCellId().hashCode();
      hash = (37 * hash) + CHECKPOINT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getCheckpointId().hashCode();
      if (hasStartAt()) {
        hash = (37 * hash) + START_AT_FIELD_NUMBER;
        hash = (53 * hash) + getStartAt().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.CellOutputsRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.CellOutputsRequest)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CellOutputsRequest_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CellOutputsRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        cellId_ = "";
        checkpointId_ = "";
        if (startAtBuilder_ == null) {
          startAt_ = null;
        } else {
          startAt_ = null;
          startAtBuilder_ = null;
        }
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CellOutputsRequest_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest(this);
        result.projectId_ = projectId_;
        result.cellId_ = cellId_;
        result.checkpointId_ = checkpointId_;
        if (startAtBuilder_ == null) {
          result.startAt_ = startAt_;
        } else {
          result.startAt_ = startAtBuilder_.build();
        }
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        if (!other.getCellId().isEmpty()) {
          cellId_ = other.cellId_;
          onChanged();
        }
        if (!other.getCheckpointId().isEmpty()) {
          checkpointId_ = other.checkpointId_;
          onChanged();
        }
        if (other.hasStartAt()) {
          mergeStartAt(other.getStartAt());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the project to return cell outputs for.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the project to return cell outputs for.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the project to return cell outputs for.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project to return cell outputs for.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project to return cell outputs for.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      private java.lang.Object cellId_ = "";
      /**
       * 
       * ID of the cell to return outputs for.
       * 
       *
       * string cell_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
       * @return The cellId.
       */
      public java.lang.String getCellId() {
        java.lang.Object ref = cellId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          cellId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the cell to return outputs for.
       * 
       *
       * string cell_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
       * @return The bytes for cellId.
       */
      public com.google.protobuf.ByteString
          getCellIdBytes() {
        java.lang.Object ref = cellId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          cellId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the cell to return outputs for.
       * 
       *
       * string cell_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
       * @param value The cellId to set.
       * @return This builder for chaining.
       */
      public Builder setCellId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        cellId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the cell to return outputs for.
       * 
       *
       * string cell_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
       * @return This builder for chaining.
       */
      public Builder clearCellId() {
        
        cellId_ = getDefaultInstance().getCellId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the cell to return outputs for.
       * 
       *
       * string cell_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
       * @param value The bytes for cellId to set.
       * @return This builder for chaining.
       */
      public Builder setCellIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        cellId_ = value;
        onChanged();
        return this;
      }
      private java.lang.Object checkpointId_ = "";
      /**
       * 
       * ID of the checkpoint to return cell outputs for.
       * 
       *
       * string checkpoint_id = 3;
       * @return The checkpointId.
       */
      public java.lang.String getCheckpointId() {
        java.lang.Object ref = checkpointId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          checkpointId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the checkpoint to return cell outputs for.
       * 
       *
       * string checkpoint_id = 3;
       * @return The bytes for checkpointId.
       */
      public com.google.protobuf.ByteString
          getCheckpointIdBytes() {
        java.lang.Object ref = checkpointId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          checkpointId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the checkpoint to return cell outputs for.
       * 
       *
       * string checkpoint_id = 3;
       * @param value The checkpointId to set.
       * @return This builder for chaining.
       */
      public Builder setCheckpointId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        checkpointId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the checkpoint to return cell outputs for.
       * 
       *
       * string checkpoint_id = 3;
       * @return This builder for chaining.
       */
      public Builder clearCheckpointId() {
        
        checkpointId_ = getDefaultInstance().getCheckpointId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the checkpoint to return cell outputs for.
       * 
       *
       * string checkpoint_id = 3;
       * @param value The bytes for checkpointId to set.
       * @return This builder for chaining.
       */
      public Builder setCheckpointIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        checkpointId_ = value;
        onChanged();
        return this;
      }
      private com.google.protobuf.Timestamp startAt_;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> startAtBuilder_;
      /**
       * 
       * Timestamp from which to return outputs.
       * 
       *
       * .google.protobuf.Timestamp start_at = 4;
       * @return Whether the startAt field is set.
       */
      public boolean hasStartAt() {
        return startAtBuilder_ != null || startAt_ != null;
      }
      /**
       * 
       * Timestamp from which to return outputs.
       * 
       *
       * .google.protobuf.Timestamp start_at = 4;
       * @return The startAt.
       */
      public com.google.protobuf.Timestamp getStartAt() {
        if (startAtBuilder_ == null) {
          return startAt_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startAt_;
        } else {
          return startAtBuilder_.getMessage();
        }
      }
      /**
       * 
       * Timestamp from which to return outputs.
       * 
       *
       * .google.protobuf.Timestamp start_at = 4;
       */
      public Builder setStartAt(com.google.protobuf.Timestamp value) {
        if (startAtBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          startAt_ = value;
          onChanged();
        } else {
          startAtBuilder_.setMessage(value);
        }
        return this;
      }
      /**
       * 
       * Timestamp from which to return outputs.
       * 
       *
       * .google.protobuf.Timestamp start_at = 4;
       */
      public Builder setStartAt(
          com.google.protobuf.Timestamp.Builder builderForValue) {
        if (startAtBuilder_ == null) {
          startAt_ = builderForValue.build();
          onChanged();
        } else {
          startAtBuilder_.setMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * Timestamp from which to return outputs.
       * 
       *
       * .google.protobuf.Timestamp start_at = 4;
       */
      public Builder mergeStartAt(com.google.protobuf.Timestamp value) {
        if (startAtBuilder_ == null) {
          if (startAt_ != null) {
            startAt_ =
              com.google.protobuf.Timestamp.newBuilder(startAt_).mergeFrom(value).buildPartial();
          } else {
            startAt_ = value;
          }
          onChanged();
        } else {
          startAtBuilder_.mergeFrom(value);
        }
        return this;
      }
      /**
       * 
       * Timestamp from which to return outputs.
       * 
       *
       * .google.protobuf.Timestamp start_at = 4;
       */
      public Builder clearStartAt() {
        if (startAtBuilder_ == null) {
          startAt_ = null;
          onChanged();
        } else {
          startAt_ = null;
          startAtBuilder_ = null;
        }
        return this;
      }
      /**
       * 
       * Timestamp from which to return outputs.
       * 
       *
       * .google.protobuf.Timestamp start_at = 4;
       */
      public com.google.protobuf.Timestamp.Builder getStartAtBuilder() {
        
        onChanged();
        return getStartAtFieldBuilder().getBuilder();
      }
      /**
       * 
       * Timestamp from which to return outputs.
       * 
       *
       * .google.protobuf.Timestamp start_at = 4;
       */
      public com.google.protobuf.TimestampOrBuilder getStartAtOrBuilder() {
        if (startAtBuilder_ != null) {
          return startAtBuilder_.getMessageOrBuilder();
        } else {
          return startAt_ == null ?
              com.google.protobuf.Timestamp.getDefaultInstance() : startAt_;
        }
      }
      /**
       * 
       * Timestamp from which to return outputs.
       * 
       *
       * .google.protobuf.Timestamp start_at = 4;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> 
          getStartAtFieldBuilder() {
        if (startAtBuilder_ == null) {
          startAtBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder>(
                  getStartAt(),
                  getParentForChildren(),
                  isClean());
          startAt_ = null;
        }
        return startAtBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.CellOutputsRequest)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.CellOutputsRequest)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public CellOutputsRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new CellOutputsRequest(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface CellOutputsResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.CellOutputsResponse)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * List of outputs.
     * 
     *
     * repeated string outputs = 1;
     * @return A list containing the outputs.
     */
    java.util.List
        getOutputsList();
    /**
     * 
     * List of outputs.
     * 
     *
     * repeated string outputs = 1;
     * @return The count of outputs.
     */
    int getOutputsCount();
    /**
     * 
     * List of outputs.
     * 
     *
     * repeated string outputs = 1;
     * @param index The index of the element to return.
     * @return The outputs at the given index.
     */
    java.lang.String getOutputs(int index);
    /**
     * 
     * List of outputs.
     * 
     *
     * repeated string outputs = 1;
     * @param index The index of the value to return.
     * @return The bytes of the outputs at the given index.
     */
    com.google.protobuf.ByteString
        getOutputsBytes(int index);
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.CellOutputsResponse}
   */
  public static final class CellOutputsResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.CellOutputsResponse)
      CellOutputsResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use CellOutputsResponse.newBuilder() to construct.
    private CellOutputsResponse(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private CellOutputsResponse() {
      outputs_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new CellOutputsResponse();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private CellOutputsResponse(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                outputs_ = new com.google.protobuf.LazyStringArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              outputs_.add(s);
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          outputs_ = outputs_.getUnmodifiableView();
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CellOutputsResponse_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CellOutputsResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse.Builder.class);
    }
    public static final int OUTPUTS_FIELD_NUMBER = 1;
    private com.google.protobuf.LazyStringList outputs_;
    /**
     * 
     * List of outputs.
     * 
     *
     * repeated string outputs = 1;
     * @return A list containing the outputs.
     */
    public com.google.protobuf.ProtocolStringList
        getOutputsList() {
      return outputs_;
    }
    /**
     * 
     * List of outputs.
     * 
     *
     * repeated string outputs = 1;
     * @return The count of outputs.
     */
    public int getOutputsCount() {
      return outputs_.size();
    }
    /**
     * 
     * List of outputs.
     * 
     *
     * repeated string outputs = 1;
     * @param index The index of the element to return.
     * @return The outputs at the given index.
     */
    public java.lang.String getOutputs(int index) {
      return outputs_.get(index);
    }
    /**
     * 
     * List of outputs.
     * 
     *
     * repeated string outputs = 1;
     * @param index The index of the value to return.
     * @return The bytes of the outputs at the given index.
     */
    public com.google.protobuf.ByteString
        getOutputsBytes(int index) {
      return outputs_.getByteString(index);
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      for (int i = 0; i < outputs_.size(); i++) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, outputs_.getRaw(i));
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      {
        int dataSize = 0;
        for (int i = 0; i < outputs_.size(); i++) {
          dataSize += computeStringSizeNoTag(outputs_.getRaw(i));
        }
        size += dataSize;
        size += 1 * getOutputsList().size();
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse) obj;
      if (!getOutputsList()
          .equals(other.getOutputsList())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getOutputsCount() > 0) {
        hash = (37 * hash) + OUTPUTS_FIELD_NUMBER;
        hash = (53 * hash) + getOutputsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.CellOutputsResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.CellOutputsResponse)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CellOutputsResponse_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CellOutputsResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        outputs_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_CellOutputsResponse_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse(this);
        int from_bitField0_ = bitField0_;
        if (((bitField0_ & 0x00000001) != 0)) {
          outputs_ = outputs_.getUnmodifiableView();
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.outputs_ = outputs_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse.getDefaultInstance()) return this;
        if (!other.outputs_.isEmpty()) {
          if (outputs_.isEmpty()) {
            outputs_ = other.outputs_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureOutputsIsMutable();
            outputs_.addAll(other.outputs_);
          }
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;
      private com.google.protobuf.LazyStringList outputs_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      private void ensureOutputsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          outputs_ = new com.google.protobuf.LazyStringArrayList(outputs_);
          bitField0_ |= 0x00000001;
         }
      }
      /**
       * 
       * List of outputs.
       * 
       *
       * repeated string outputs = 1;
       * @return A list containing the outputs.
       */
      public com.google.protobuf.ProtocolStringList
          getOutputsList() {
        return outputs_.getUnmodifiableView();
      }
      /**
       * 
       * List of outputs.
       * 
       *
       * repeated string outputs = 1;
       * @return The count of outputs.
       */
      public int getOutputsCount() {
        return outputs_.size();
      }
      /**
       * 
       * List of outputs.
       * 
       *
       * repeated string outputs = 1;
       * @param index The index of the element to return.
       * @return The outputs at the given index.
       */
      public java.lang.String getOutputs(int index) {
        return outputs_.get(index);
      }
      /**
       * 
       * List of outputs.
       * 
       *
       * repeated string outputs = 1;
       * @param index The index of the value to return.
       * @return The bytes of the outputs at the given index.
       */
      public com.google.protobuf.ByteString
          getOutputsBytes(int index) {
        return outputs_.getByteString(index);
      }
      /**
       * 
       * List of outputs.
       * 
       *
       * repeated string outputs = 1;
       * @param index The index to set the value at.
       * @param value The outputs to set.
       * @return This builder for chaining.
       */
      public Builder setOutputs(
          int index, java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureOutputsIsMutable();
        outputs_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * 
       * List of outputs.
       * 
       *
       * repeated string outputs = 1;
       * @param value The outputs to add.
       * @return This builder for chaining.
       */
      public Builder addOutputs(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureOutputsIsMutable();
        outputs_.add(value);
        onChanged();
        return this;
      }
      /**
       * 
       * List of outputs.
       * 
       *
       * repeated string outputs = 1;
       * @param values The outputs to add.
       * @return This builder for chaining.
       */
      public Builder addAllOutputs(
          java.lang.Iterable values) {
        ensureOutputsIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, outputs_);
        onChanged();
        return this;
      }
      /**
       * 
       * List of outputs.
       * 
       *
       * repeated string outputs = 1;
       * @return This builder for chaining.
       */
      public Builder clearOutputs() {
        outputs_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }
      /**
       * 
       * List of outputs.
       * 
       *
       * repeated string outputs = 1;
       * @param value The bytes of the outputs to add.
       * @return This builder for chaining.
       */
      public Builder addOutputsBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        ensureOutputsIsMutable();
        outputs_.add(value);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.CellOutputsResponse)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.CellOutputsResponse)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public CellOutputsResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new CellOutputsResponse(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.CellOutputsResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface GetStateVariablesRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.GetStateVariablesRequest)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the project, for which to return state variables.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the project, for which to return state variables.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
    /**
     * 
     * ID of the notebook, for which to return state variables.
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
     * @return The notebookId.
     */
    java.lang.String getNotebookId();
    /**
     * 
     * ID of the notebook, for which to return state variables.
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
     * @return The bytes for notebookId.
     */
    com.google.protobuf.ByteString
        getNotebookIdBytes();
    /**
     * 
     * Names of variables to return.
     * 
     *
     * repeated string variable_names = 3;
     * @return A list containing the variableNames.
     */
    java.util.List
        getVariableNamesList();
    /**
     * 
     * Names of variables to return.
     * 
     *
     * repeated string variable_names = 3;
     * @return The count of variableNames.
     */
    int getVariableNamesCount();
    /**
     * 
     * Names of variables to return.
     * 
     *
     * repeated string variable_names = 3;
     * @param index The index of the element to return.
     * @return The variableNames at the given index.
     */
    java.lang.String getVariableNames(int index);
    /**
     * 
     * Names of variables to return.
     * 
     *
     * repeated string variable_names = 3;
     * @param index The index of the value to return.
     * @return The bytes of the variableNames at the given index.
     */
    com.google.protobuf.ByteString
        getVariableNamesBytes(int index);
    /**
     * 
     * ID of the checkpoint, for which to return state variables.
     * 
     *
     * string checkpoint_id = 4;
     * @return The checkpointId.
     */
    java.lang.String getCheckpointId();
    /**
     * 
     * ID of the checkpoint, for which to return state variables.
     * 
     *
     * string checkpoint_id = 4;
     * @return The bytes for checkpointId.
     */
    com.google.protobuf.ByteString
        getCheckpointIdBytes();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.GetStateVariablesRequest}
   */
  public static final class GetStateVariablesRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.GetStateVariablesRequest)
      GetStateVariablesRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use GetStateVariablesRequest.newBuilder() to construct.
    private GetStateVariablesRequest(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private GetStateVariablesRequest() {
      projectId_ = "";
      notebookId_ = "";
      variableNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      checkpointId_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new GetStateVariablesRequest();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private GetStateVariablesRequest(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();
              notebookId_ = s;
              break;
            }
            case 26: {
              java.lang.String s = input.readStringRequireUtf8();
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                variableNames_ = new com.google.protobuf.LazyStringArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              variableNames_.add(s);
              break;
            }
            case 34: {
              java.lang.String s = input.readStringRequireUtf8();
              checkpointId_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) != 0)) {
          variableNames_ = variableNames_.getUnmodifiableView();
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetStateVariablesRequest_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetStateVariablesRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest.Builder.class);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the project, for which to return state variables.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the project, for which to return state variables.
     * 
     *
     * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int NOTEBOOK_ID_FIELD_NUMBER = 2;
    private volatile java.lang.Object notebookId_;
    /**
     * 
     * ID of the notebook, for which to return state variables.
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
     * @return The notebookId.
     */
    @java.lang.Override
    public java.lang.String getNotebookId() {
      java.lang.Object ref = notebookId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        notebookId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the notebook, for which to return state variables.
     * 
     *
     * string notebook_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
     * @return The bytes for notebookId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getNotebookIdBytes() {
      java.lang.Object ref = notebookId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        notebookId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int VARIABLE_NAMES_FIELD_NUMBER = 3;
    private com.google.protobuf.LazyStringList variableNames_;
    /**
     * 
     * Names of variables to return.
     * 
     *
     * repeated string variable_names = 3;
     * @return A list containing the variableNames.
     */
    public com.google.protobuf.ProtocolStringList
        getVariableNamesList() {
      return variableNames_;
    }
    /**
     * 
     * Names of variables to return.
     * 
     *
     * repeated string variable_names = 3;
     * @return The count of variableNames.
     */
    public int getVariableNamesCount() {
      return variableNames_.size();
    }
    /**
     * 
     * Names of variables to return.
     * 
     *
     * repeated string variable_names = 3;
     * @param index The index of the element to return.
     * @return The variableNames at the given index.
     */
    public java.lang.String getVariableNames(int index) {
      return variableNames_.get(index);
    }
    /**
     * 
     * Names of variables to return.
     * 
     *
     * repeated string variable_names = 3;
     * @param index The index of the value to return.
     * @return The bytes of the variableNames at the given index.
     */
    public com.google.protobuf.ByteString
        getVariableNamesBytes(int index) {
      return variableNames_.getByteString(index);
    }
    public static final int CHECKPOINT_ID_FIELD_NUMBER = 4;
    private volatile java.lang.Object checkpointId_;
    /**
     * 
     * ID of the checkpoint, for which to return state variables.
     * 
     *
     * string checkpoint_id = 4;
     * @return The checkpointId.
     */
    @java.lang.Override
    public java.lang.String getCheckpointId() {
      java.lang.Object ref = checkpointId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        checkpointId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the checkpoint, for which to return state variables.
     * 
     *
     * string checkpoint_id = 4;
     * @return The bytes for checkpointId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getCheckpointIdBytes() {
      java.lang.Object ref = checkpointId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        checkpointId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(notebookId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, notebookId_);
      }
      for (int i = 0; i < variableNames_.size(); i++) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, variableNames_.getRaw(i));
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(checkpointId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, checkpointId_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(notebookId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, notebookId_);
      }
      {
        int dataSize = 0;
        for (int i = 0; i < variableNames_.size(); i++) {
          dataSize += computeStringSizeNoTag(variableNames_.getRaw(i));
        }
        size += dataSize;
        size += 1 * getVariableNamesList().size();
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(checkpointId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, checkpointId_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (!getNotebookId()
          .equals(other.getNotebookId())) return false;
      if (!getVariableNamesList()
          .equals(other.getVariableNamesList())) return false;
      if (!getCheckpointId()
          .equals(other.getCheckpointId())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      hash = (37 * hash) + NOTEBOOK_ID_FIELD_NUMBER;
      hash = (53 * hash) + getNotebookId().hashCode();
      if (getVariableNamesCount() > 0) {
        hash = (37 * hash) + VARIABLE_NAMES_FIELD_NUMBER;
        hash = (53 * hash) + getVariableNamesList().hashCode();
      }
      hash = (37 * hash) + CHECKPOINT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getCheckpointId().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.GetStateVariablesRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.GetStateVariablesRequest)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetStateVariablesRequest_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetStateVariablesRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        notebookId_ = "";
        variableNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        checkpointId_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetStateVariablesRequest_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest(this);
        int from_bitField0_ = bitField0_;
        result.projectId_ = projectId_;
        result.notebookId_ = notebookId_;
        if (((bitField0_ & 0x00000001) != 0)) {
          variableNames_ = variableNames_.getUnmodifiableView();
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.variableNames_ = variableNames_;
        result.checkpointId_ = checkpointId_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        if (!other.getNotebookId().isEmpty()) {
          notebookId_ = other.notebookId_;
          onChanged();
        }
        if (!other.variableNames_.isEmpty()) {
          if (variableNames_.isEmpty()) {
            variableNames_ = other.variableNames_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureVariableNamesIsMutable();
            variableNames_.addAll(other.variableNames_);
          }
          onChanged();
        }
        if (!other.getCheckpointId().isEmpty()) {
          checkpointId_ = other.checkpointId_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the project, for which to return state variables.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the project, for which to return state variables.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the project, for which to return state variables.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project, for which to return state variables.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project, for which to return state variables.
       * 
       *
       * string project_id = 1 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=50"];
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      private java.lang.Object notebookId_ = "";
      /**
       * 
       * ID of the notebook, for which to return state variables.
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
       * @return The notebookId.
       */
      public java.lang.String getNotebookId() {
        java.lang.Object ref = notebookId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          notebookId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the notebook, for which to return state variables.
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
       * @return The bytes for notebookId.
       */
      public com.google.protobuf.ByteString
          getNotebookIdBytes() {
        java.lang.Object ref = notebookId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          notebookId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the notebook, for which to return state variables.
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
       * @param value The notebookId to set.
       * @return This builder for chaining.
       */
      public Builder setNotebookId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        notebookId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the notebook, for which to return state variables.
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
       * @return This builder for chaining.
       */
      public Builder clearNotebookId() {
        
        notebookId_ = getDefaultInstance().getNotebookId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the notebook, for which to return state variables.
       * 
       *
       * string notebook_id = 2 [(.yandex.cloud.required) = true, (.yandex.cloud.length) = "<=200"];
       * @param value The bytes for notebookId to set.
       * @return This builder for chaining.
       */
      public Builder setNotebookIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        notebookId_ = value;
        onChanged();
        return this;
      }
      private com.google.protobuf.LazyStringList variableNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      private void ensureVariableNamesIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          variableNames_ = new com.google.protobuf.LazyStringArrayList(variableNames_);
          bitField0_ |= 0x00000001;
         }
      }
      /**
       * 
       * Names of variables to return.
       * 
       *
       * repeated string variable_names = 3;
       * @return A list containing the variableNames.
       */
      public com.google.protobuf.ProtocolStringList
          getVariableNamesList() {
        return variableNames_.getUnmodifiableView();
      }
      /**
       * 
       * Names of variables to return.
       * 
       *
       * repeated string variable_names = 3;
       * @return The count of variableNames.
       */
      public int getVariableNamesCount() {
        return variableNames_.size();
      }
      /**
       * 
       * Names of variables to return.
       * 
       *
       * repeated string variable_names = 3;
       * @param index The index of the element to return.
       * @return The variableNames at the given index.
       */
      public java.lang.String getVariableNames(int index) {
        return variableNames_.get(index);
      }
      /**
       * 
       * Names of variables to return.
       * 
       *
       * repeated string variable_names = 3;
       * @param index The index of the value to return.
       * @return The bytes of the variableNames at the given index.
       */
      public com.google.protobuf.ByteString
          getVariableNamesBytes(int index) {
        return variableNames_.getByteString(index);
      }
      /**
       * 
       * Names of variables to return.
       * 
       *
       * repeated string variable_names = 3;
       * @param index The index to set the value at.
       * @param value The variableNames to set.
       * @return This builder for chaining.
       */
      public Builder setVariableNames(
          int index, java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureVariableNamesIsMutable();
        variableNames_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * 
       * Names of variables to return.
       * 
       *
       * repeated string variable_names = 3;
       * @param value The variableNames to add.
       * @return This builder for chaining.
       */
      public Builder addVariableNames(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureVariableNamesIsMutable();
        variableNames_.add(value);
        onChanged();
        return this;
      }
      /**
       * 
       * Names of variables to return.
       * 
       *
       * repeated string variable_names = 3;
       * @param values The variableNames to add.
       * @return This builder for chaining.
       */
      public Builder addAllVariableNames(
          java.lang.Iterable values) {
        ensureVariableNamesIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, variableNames_);
        onChanged();
        return this;
      }
      /**
       * 
       * Names of variables to return.
       * 
       *
       * repeated string variable_names = 3;
       * @return This builder for chaining.
       */
      public Builder clearVariableNames() {
        variableNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }
      /**
       * 
       * Names of variables to return.
       * 
       *
       * repeated string variable_names = 3;
       * @param value The bytes of the variableNames to add.
       * @return This builder for chaining.
       */
      public Builder addVariableNamesBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        ensureVariableNamesIsMutable();
        variableNames_.add(value);
        onChanged();
        return this;
      }
      private java.lang.Object checkpointId_ = "";
      /**
       * 
       * ID of the checkpoint, for which to return state variables.
       * 
       *
       * string checkpoint_id = 4;
       * @return The checkpointId.
       */
      public java.lang.String getCheckpointId() {
        java.lang.Object ref = checkpointId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          checkpointId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the checkpoint, for which to return state variables.
       * 
       *
       * string checkpoint_id = 4;
       * @return The bytes for checkpointId.
       */
      public com.google.protobuf.ByteString
          getCheckpointIdBytes() {
        java.lang.Object ref = checkpointId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          checkpointId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the checkpoint, for which to return state variables.
       * 
       *
       * string checkpoint_id = 4;
       * @param value The checkpointId to set.
       * @return This builder for chaining.
       */
      public Builder setCheckpointId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        checkpointId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the checkpoint, for which to return state variables.
       * 
       *
       * string checkpoint_id = 4;
       * @return This builder for chaining.
       */
      public Builder clearCheckpointId() {
        
        checkpointId_ = getDefaultInstance().getCheckpointId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the checkpoint, for which to return state variables.
       * 
       *
       * string checkpoint_id = 4;
       * @param value The bytes for checkpointId to set.
       * @return This builder for chaining.
       */
      public Builder setCheckpointIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        checkpointId_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.GetStateVariablesRequest)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.GetStateVariablesRequest)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public GetStateVariablesRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new GetStateVariablesRequest(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface GetStateVariablesResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.GetStateVariablesResponse)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * Values of the specified variables.
     * 
     *
     * .google.protobuf.Struct variables = 1;
     * @return Whether the variables field is set.
     */
    boolean hasVariables();
    /**
     * 
     * Values of the specified variables.
     * 
     *
     * .google.protobuf.Struct variables = 1;
     * @return The variables.
     */
    com.google.protobuf.Struct getVariables();
    /**
     * 
     * Values of the specified variables.
     * 
     *
     * .google.protobuf.Struct variables = 1;
     */
    com.google.protobuf.StructOrBuilder getVariablesOrBuilder();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.GetStateVariablesResponse}
   */
  public static final class GetStateVariablesResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.GetStateVariablesResponse)
      GetStateVariablesResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use GetStateVariablesResponse.newBuilder() to construct.
    private GetStateVariablesResponse(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private GetStateVariablesResponse() {
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new GetStateVariablesResponse();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private GetStateVariablesResponse(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              com.google.protobuf.Struct.Builder subBuilder = null;
              if (variables_ != null) {
                subBuilder = variables_.toBuilder();
              }
              variables_ = input.readMessage(com.google.protobuf.Struct.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(variables_);
                variables_ = subBuilder.buildPartial();
              }
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetStateVariablesResponse_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetStateVariablesResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse.Builder.class);
    }
    public static final int VARIABLES_FIELD_NUMBER = 1;
    private com.google.protobuf.Struct variables_;
    /**
     * 
     * Values of the specified variables.
     * 
     *
     * .google.protobuf.Struct variables = 1;
     * @return Whether the variables field is set.
     */
    @java.lang.Override
    public boolean hasVariables() {
      return variables_ != null;
    }
    /**
     * 
     * Values of the specified variables.
     * 
     *
     * .google.protobuf.Struct variables = 1;
     * @return The variables.
     */
    @java.lang.Override
    public com.google.protobuf.Struct getVariables() {
      return variables_ == null ? com.google.protobuf.Struct.getDefaultInstance() : variables_;
    }
    /**
     * 
     * Values of the specified variables.
     * 
     *
     * .google.protobuf.Struct variables = 1;
     */
    @java.lang.Override
    public com.google.protobuf.StructOrBuilder getVariablesOrBuilder() {
      return getVariables();
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (variables_ != null) {
        output.writeMessage(1, getVariables());
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (variables_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getVariables());
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse) obj;
      if (hasVariables() != other.hasVariables()) return false;
      if (hasVariables()) {
        if (!getVariables()
            .equals(other.getVariables())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasVariables()) {
        hash = (37 * hash) + VARIABLES_FIELD_NUMBER;
        hash = (53 * hash) + getVariables().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.GetStateVariablesResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.GetStateVariablesResponse)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetStateVariablesResponse_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetStateVariablesResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (variablesBuilder_ == null) {
          variables_ = null;
        } else {
          variables_ = null;
          variablesBuilder_ = null;
        }
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_GetStateVariablesResponse_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse(this);
        if (variablesBuilder_ == null) {
          result.variables_ = variables_;
        } else {
          result.variables_ = variablesBuilder_.build();
        }
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse.getDefaultInstance()) return this;
        if (other.hasVariables()) {
          mergeVariables(other.getVariables());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private com.google.protobuf.Struct variables_;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Struct, com.google.protobuf.Struct.Builder, com.google.protobuf.StructOrBuilder> variablesBuilder_;
      /**
       * 
       * Values of the specified variables.
       * 
       *
       * .google.protobuf.Struct variables = 1;
       * @return Whether the variables field is set.
       */
      public boolean hasVariables() {
        return variablesBuilder_ != null || variables_ != null;
      }
      /**
       * 
       * Values of the specified variables.
       * 
       *
       * .google.protobuf.Struct variables = 1;
       * @return The variables.
       */
      public com.google.protobuf.Struct getVariables() {
        if (variablesBuilder_ == null) {
          return variables_ == null ? com.google.protobuf.Struct.getDefaultInstance() : variables_;
        } else {
          return variablesBuilder_.getMessage();
        }
      }
      /**
       * 
       * Values of the specified variables.
       * 
       *
       * .google.protobuf.Struct variables = 1;
       */
      public Builder setVariables(com.google.protobuf.Struct value) {
        if (variablesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          variables_ = value;
          onChanged();
        } else {
          variablesBuilder_.setMessage(value);
        }
        return this;
      }
      /**
       * 
       * Values of the specified variables.
       * 
       *
       * .google.protobuf.Struct variables = 1;
       */
      public Builder setVariables(
          com.google.protobuf.Struct.Builder builderForValue) {
        if (variablesBuilder_ == null) {
          variables_ = builderForValue.build();
          onChanged();
        } else {
          variablesBuilder_.setMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * Values of the specified variables.
       * 
       *
       * .google.protobuf.Struct variables = 1;
       */
      public Builder mergeVariables(com.google.protobuf.Struct value) {
        if (variablesBuilder_ == null) {
          if (variables_ != null) {
            variables_ =
              com.google.protobuf.Struct.newBuilder(variables_).mergeFrom(value).buildPartial();
          } else {
            variables_ = value;
          }
          onChanged();
        } else {
          variablesBuilder_.mergeFrom(value);
        }
        return this;
      }
      /**
       * 
       * Values of the specified variables.
       * 
       *
       * .google.protobuf.Struct variables = 1;
       */
      public Builder clearVariables() {
        if (variablesBuilder_ == null) {
          variables_ = null;
          onChanged();
        } else {
          variables_ = null;
          variablesBuilder_ = null;
        }
        return this;
      }
      /**
       * 
       * Values of the specified variables.
       * 
       *
       * .google.protobuf.Struct variables = 1;
       */
      public com.google.protobuf.Struct.Builder getVariablesBuilder() {
        
        onChanged();
        return getVariablesFieldBuilder().getBuilder();
      }
      /**
       * 
       * Values of the specified variables.
       * 
       *
       * .google.protobuf.Struct variables = 1;
       */
      public com.google.protobuf.StructOrBuilder getVariablesOrBuilder() {
        if (variablesBuilder_ != null) {
          return variablesBuilder_.getMessageOrBuilder();
        } else {
          return variables_ == null ?
              com.google.protobuf.Struct.getDefaultInstance() : variables_;
        }
      }
      /**
       * 
       * Values of the specified variables.
       * 
       *
       * .google.protobuf.Struct variables = 1;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.google.protobuf.Struct, com.google.protobuf.Struct.Builder, com.google.protobuf.StructOrBuilder> 
          getVariablesFieldBuilder() {
        if (variablesBuilder_ == null) {
          variablesBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.google.protobuf.Struct, com.google.protobuf.Struct.Builder, com.google.protobuf.StructOrBuilder>(
                  getVariables(),
                  getParentForChildren(),
                  isClean());
          variables_ = null;
        }
        return variablesBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.GetStateVariablesResponse)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.GetStateVariablesResponse)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public GetStateVariablesResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new GetStateVariablesResponse(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.GetStateVariablesResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface SetProjectAccessBindingsMetadataOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.SetProjectAccessBindingsMetadata)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the project which access bindings are set.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the project which access bindings are set.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.SetProjectAccessBindingsMetadata}
   */
  public static final class SetProjectAccessBindingsMetadata extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.SetProjectAccessBindingsMetadata)
      SetProjectAccessBindingsMetadataOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use SetProjectAccessBindingsMetadata.newBuilder() to construct.
    private SetProjectAccessBindingsMetadata(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private SetProjectAccessBindingsMetadata() {
      projectId_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new SetProjectAccessBindingsMetadata();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private SetProjectAccessBindingsMetadata(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_SetProjectAccessBindingsMetadata_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_SetProjectAccessBindingsMetadata_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata.Builder.class);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the project which access bindings are set.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the project which access bindings are set.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.SetProjectAccessBindingsMetadata}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.SetProjectAccessBindingsMetadata)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadataOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_SetProjectAccessBindingsMetadata_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_SetProjectAccessBindingsMetadata_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_SetProjectAccessBindingsMetadata_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata(this);
        result.projectId_ = projectId_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the project which access bindings are set.
       * 
       *
       * string project_id = 1;
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the project which access bindings are set.
       * 
       *
       * string project_id = 1;
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the project which access bindings are set.
       * 
       *
       * string project_id = 1;
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project which access bindings are set.
       * 
       *
       * string project_id = 1;
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project which access bindings are set.
       * 
       *
       * string project_id = 1;
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.SetProjectAccessBindingsMetadata)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.SetProjectAccessBindingsMetadata)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public SetProjectAccessBindingsMetadata parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new SetProjectAccessBindingsMetadata(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.SetProjectAccessBindingsMetadata getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface UpdateProjectAccessBindingsMetadataOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.datasphere.v2.UpdateProjectAccessBindingsMetadata)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * ID of the project which access bindings are updated.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    java.lang.String getProjectId();
    /**
     * 
     * ID of the project which access bindings are updated.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    com.google.protobuf.ByteString
        getProjectIdBytes();
  }
  /**
   * Protobuf type {@code yandex.cloud.datasphere.v2.UpdateProjectAccessBindingsMetadata}
   */
  public static final class UpdateProjectAccessBindingsMetadata extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.datasphere.v2.UpdateProjectAccessBindingsMetadata)
      UpdateProjectAccessBindingsMetadataOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use UpdateProjectAccessBindingsMetadata.newBuilder() to construct.
    private UpdateProjectAccessBindingsMetadata(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private UpdateProjectAccessBindingsMetadata() {
      projectId_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new UpdateProjectAccessBindingsMetadata();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private UpdateProjectAccessBindingsMetadata(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();
              projectId_ = s;
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectAccessBindingsMetadata_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectAccessBindingsMetadata_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata.Builder.class);
    }
    public static final int PROJECT_ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object projectId_;
    /**
     * 
     * ID of the project which access bindings are updated.
     * 
     *
     * string project_id = 1;
     * @return The projectId.
     */
    @java.lang.Override
    public java.lang.String getProjectId() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectId_ = s;
        return s;
      }
    }
    /**
     * 
     * ID of the project which access bindings are updated.
     * 
     *
     * string project_id = 1;
     * @return The bytes for projectId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getProjectIdBytes() {
      java.lang.Object ref = projectId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;
      memoizedIsInitialized = 1;
      return true;
    }
    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }
    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata)) {
        return super.equals(obj);
      }
      yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata other = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata) obj;
      if (!getProjectId()
          .equals(other.getProjectId())) return false;
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }
    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
      hash = (53 * hash) + getProjectId().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }
    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code yandex.cloud.datasphere.v2.UpdateProjectAccessBindingsMetadata}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.datasphere.v2.UpdateProjectAccessBindingsMetadata)
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadataOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectAccessBindingsMetadata_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectAccessBindingsMetadata_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata.class, yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata.Builder.class);
      }
      // Construct using yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        projectId_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.internal_static_yandex_cloud_datasphere_v2_UpdateProjectAccessBindingsMetadata_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata getDefaultInstanceForType() {
        return yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata build() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata buildPartial() {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata result = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata(this);
        result.projectId_ = projectId_;
        onBuilt();
        return result;
      }
      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata) {
          return mergeFrom((yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata other) {
        if (other == yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata.getDefaultInstance()) return this;
        if (!other.getProjectId().isEmpty()) {
          projectId_ = other.projectId_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }
      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }
      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object projectId_ = "";
      /**
       * 
       * ID of the project which access bindings are updated.
       * 
       *
       * string project_id = 1;
       * @return The projectId.
       */
      public java.lang.String getProjectId() {
        java.lang.Object ref = projectId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          projectId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * ID of the project which access bindings are updated.
       * 
       *
       * string project_id = 1;
       * @return The bytes for projectId.
       */
      public com.google.protobuf.ByteString
          getProjectIdBytes() {
        java.lang.Object ref = projectId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          projectId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * ID of the project which access bindings are updated.
       * 
       *
       * string project_id = 1;
       * @param value The projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        projectId_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project which access bindings are updated.
       * 
       *
       * string project_id = 1;
       * @return This builder for chaining.
       */
      public Builder clearProjectId() {
        
        projectId_ = getDefaultInstance().getProjectId();
        onChanged();
        return this;
      }
      /**
       * 
       * ID of the project which access bindings are updated.
       * 
       *
       * string project_id = 1;
       * @param value The bytes for projectId to set.
       * @return This builder for chaining.
       */
      public Builder setProjectIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        projectId_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }
      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }
      // @@protoc_insertion_point(builder_scope:yandex.cloud.datasphere.v2.UpdateProjectAccessBindingsMetadata)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.datasphere.v2.UpdateProjectAccessBindingsMetadata)
    private static final yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata();
    }
    public static yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public UpdateProjectAccessBindingsMetadata parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new UpdateProjectAccessBindingsMetadata(input, extensionRegistry);
      }
    };
    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }
    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }
    @java.lang.Override
    public yandex.cloud.api.datasphere.v2.ProjectServiceOuterClass.UpdateProjectAccessBindingsMetadata getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_LabelsEntry_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_LabelsEntry_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_CreateProjectMetadata_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_CreateProjectMetadata_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_LabelsEntry_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_LabelsEntry_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_UpdateProjectMetadata_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_UpdateProjectMetadata_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_DeleteProjectRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_DeleteProjectRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_DeleteProjectMetadata_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_DeleteProjectMetadata_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_OpenProjectRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_OpenProjectRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_OpenProjectMetadata_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_OpenProjectMetadata_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_OpenProjectResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_OpenProjectResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_GetProjectRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_GetProjectRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_ListProjectsRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_ListProjectsRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_ListProjectsResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_ListProjectsResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceMetadata_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceMetadata_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_ProjectExecutionRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_ProjectExecutionRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_ProjectExecutionMetadata_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_ProjectExecutionMetadata_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_ProjectExecutionResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_ProjectExecutionResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_CellOutputsRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_CellOutputsRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_CellOutputsResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_CellOutputsResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_GetStateVariablesRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_GetStateVariablesRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_GetStateVariablesResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_GetStateVariablesResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_SetProjectAccessBindingsMetadata_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_SetProjectAccessBindingsMetadata_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_datasphere_v2_UpdateProjectAccessBindingsMetadata_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_datasphere_v2_UpdateProjectAccessBindingsMetadata_fieldAccessorTable;
  public static com.google.protobuf.Descriptors.FileDescriptor
      getDescriptor() {
    return descriptor;
  }
  private static  com.google.protobuf.Descriptors.FileDescriptor
      descriptor;
  static {
    java.lang.String[] descriptorData = {
      "\n0yandex/cloud/datasphere/v2/project_ser" +
      "vice.proto\022\032yandex.cloud.datasphere.v2\032\034" +
      "google/api/annotations.proto\032 google/pro" +
      "tobuf/field_mask.proto\032\034google/protobuf/" +
      "struct.proto\032\037google/protobuf/timestamp." +
      "proto\032\036google/protobuf/wrappers.proto\032 y" +
      "andex/cloud/api/operation.proto\032 yandex/" +
      "cloud/access/access.proto\032(yandex/cloud/" +
      "datasphere/v2/project.proto\032&yandex/clou" +
      "d/operation/operation.proto\032\035yandex/clou" +
      "d/validation.proto\"\326\003\n\024CreateProjectRequ" +
      "est\022\"\n\014community_id\030\001 \001(\tB\014\212\3101\004<=50\350\3071\001\022" +
      "9\n\004name\030\002 \001(\tB+\212\3101\004<=63\362\3071\037[a-z]([-a-z0-" +
      "9]{0,61}[a-z0-9])?\022\036\n\013description\030\003 \001(\tB" +
      "\t\212\3101\005<=256\022\215\001\n\006labels\030\004 \003(\0132<.yandex.clo" +
      "ud.datasphere.v2.CreateProjectRequest.La" +
      "belsEntryB?\202\3101\004<=64\212\3101\004<=63\362\3071\013[-_0-9a-z" +
      "]*\262\3101\006\032\0041-63\262\3101\022\022\020[a-z][-_0-9a-z]*\022>\n\010se" +
      "ttings\030\005 \001(\0132,.yandex.cloud.datasphere.v" +
      "2.Project.Settings\022:\n\006limits\030\006 \001(\0132*.yan" +
      "dex.cloud.datasphere.v2.Project.Limits\032-" +
      "\n\013LabelsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(" +
      "\t:\0028\001J\004\010\007\020\010\"+\n\025CreateProjectMetadata\022\022\n\n" +
      "project_id\030\001 \001(\t\"\377\003\n\024UpdateProjectReques" +
      "t\022 \n\nproject_id\030\001 \001(\tB\014\350\3071\001\212\3101\004<=50\022/\n\013u" +
      "pdate_mask\030\002 \001(\0132\032.google.protobuf.Field" +
      "Mask\0229\n\004name\030\003 \001(\tB+\212\3101\004<=63\362\3071\037[a-z]([-" +
      "a-z0-9]{0,61}[a-z0-9])?\022\036\n\013description\030\004" +
      " \001(\tB\t\212\3101\005<=256\022\215\001\n\006labels\030\005 \003(\0132<.yande" +
      "x.cloud.datasphere.v2.UpdateProjectReque" +
      "st.LabelsEntryB?\202\3101\004<=64\212\3101\004<=63\362\3071\013[-_0" +
      "-9a-z]*\262\3101\006\032\0041-63\262\3101\022\022\020[a-z][-_0-9a-z]*\022" +
      ">\n\010settings\030\006 \001(\0132,.yandex.cloud.datasph" +
      "ere.v2.Project.Settings\022:\n\006limits\030\007 \001(\0132" +
      "*.yandex.cloud.datasphere.v2.Project.Lim" +
      "its\032-\n\013LabelsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value" +
      "\030\002 \001(\t:\0028\001\"+\n\025UpdateProjectMetadata\022\022\n\np" +
      "roject_id\030\001 \001(\t\"8\n\024DeleteProjectRequest\022" +
      " \n\nproject_id\030\001 \001(\tB\014\350\3071\001\212\3101\004<=50\"+\n\025Del" +
      "eteProjectMetadata\022\022\n\nproject_id\030\001 \001(\t\"6" +
      "\n\022OpenProjectRequest\022 \n\nproject_id\030\001 \001(\t" +
      "B\014\350\3071\001\212\3101\004<=50\"\320\003\n\023OpenProjectMetadata\022\022" +
      "\n\nproject_id\030\001 \001(\t\022Q\n\006status\030\002 \001(\0162A.yan" +
      "dex.cloud.datasphere.v2.OpenProjectMetad" +
      "ata.OpenProjectStatus\"\321\002\n\021OpenProjectSta" +
      "tus\022#\n\037OPEN_PROJECT_STATUS_UNSPECIFIED\020\000" +
      "\022#\n\037OPEN_PROJECT_STATUS_CLOSING_IDE\020\001\022)\n" +
      "%OPEN_PROJECT_STATUS_UNZIPPING_PROJECT\020\002" +
      "\022%\n!OPEN_PROJECT_STATUS_ALLOCATING_VM\020\003\022" +
      ",\n(OPEN_PROJECT_STATUS_ALLOCATING_RESOUR" +
      "CES\020\004\022$\n OPEN_PROJECT_STATUS_STARTING_ID" +
      "E\020\005\022+\n\'OPEN_PROJECT_STATUS_APPLYING_CHEC" +
      "KPOINT\020\006\022\037\n\033OPEN_PROJECT_STATUS_UNKNOWN\020" +
      "\007\"A\n\023OpenProjectResponse\022\023\n\013project_url\030" +
      "\001 \001(\t\022\025\n\rsession_token\030\002 \001(\t\"5\n\021GetProje" +
      "ctRequest\022 \n\nproject_id\030\001 \001(\tB\014\350\3071\001\212\3101\004<" +
      "=50\"\242\001\n\023ListProjectsRequest\022\032\n\014community" +
      "_id\030\001 \001(\tB\004\350\3071\001\022\035\n\tpage_size\030\002 \001(\003B\n\372\3071\006" +
      "0-1000\022\035\n\npage_token\030\003 \001(\tB\t\212\3101\005<=100\022\034\n" +
      "\024project_name_pattern\030\004 \001(\t\022\023\n\013owned_by_" +
      "id\030\005 \001(\t\"f\n\024ListProjectsResponse\0225\n\010proj" +
      "ects\030\001 \003(\0132#.yandex.cloud.datasphere.v2." +
      "Project\022\027\n\017next_page_token\030\002 \001(\t\"9\n\025GetU" +
      "nitBalanceRequest\022 \n\nproject_id\030\001 \001(\tB\014\350" +
      "\3071\001\212\3101\004<=50\"K\n\026GetUnitBalanceResponse\0221\n" +
      "\014unit_balance\030\001 \001(\0132\033.google.protobuf.In" +
      "t64Value\"l\n\025SetUnitBalanceRequest\022 \n\npro" +
      "ject_id\030\001 \001(\tB\014\350\3071\001\212\3101\004<=50\0221\n\014unit_bala" +
      "nce\030\002 \001(\0132\033.google.protobuf.Int64Value\"," +
      "\n\026SetUnitBalanceMetadata\022\022\n\nproject_id\030\001" +
      " \001(\t\"\334\001\n\027ProjectExecutionRequest\022 \n\nproj" +
      "ect_id\030\001 \001(\tB\014\350\3071\001\212\3101\004<=50\022 \n\013notebook_i" +
      "d\030\002 \001(\tB\t\212\3101\005<=200H\000\022\034\n\007cell_id\030\003 \001(\tB\t\212" +
      "\3101\005<=200H\000\0220\n\017input_variables\030\004 \001(\0132\027.go" +
      "ogle.protobuf.Struct\022\035\n\025output_variable_" +
      "names\030\005 \003(\tB\016\n\006target\022\004\300\3011\001\"~\n\030ProjectEx" +
      "ecutionMetadata\022\022\n\nproject_id\030\001 \001(\t\022 \n\013n" +
      "otebook_id\030\002 \001(\tB\t\212\3101\005<=200H\000\022\034\n\007cell_id" +
      "\030\003 \001(\tB\t\212\3101\005<=200H\000B\016\n\006target\022\004\300\3011\001\"\253\001\n\030" +
      "ProjectExecutionResponse\022\025\n\rcheckpoint_i" +
      "d\030\001 \001(\t\0221\n\020output_variables\030\002 \001(\0132\027.goog" +
      "le.protobuf.Struct\022E\n\020execution_status\030\003" +
      " \001(\0162+.yandex.cloud.datasphere.v2.Execut" +
      "ionStatus\"\233\001\n\022CellOutputsRequest\022 \n\nproj" +
      "ect_id\030\001 \001(\tB\014\350\3071\001\212\3101\004<=50\022\036\n\007cell_id\030\002 " +
      "\001(\tB\r\350\3071\001\212\3101\005<=200\022\025\n\rcheckpoint_id\030\003 \001(" +
      "\t\022,\n\010start_at\030\004 \001(\0132\032.google.protobuf.Ti" +
      "mestamp\"&\n\023CellOutputsResponse\022\017\n\007output" +
      "s\030\001 \003(\t\"\217\001\n\030GetStateVariablesRequest\022 \n\n" +
      "project_id\030\001 \001(\tB\014\350\3071\001\212\3101\004<=50\022\"\n\013notebo" +
      "ok_id\030\002 \001(\tB\r\350\3071\001\212\3101\005<=200\022\026\n\016variable_n" +
      "ames\030\003 \003(\t\022\025\n\rcheckpoint_id\030\004 \001(\t\"G\n\031Get" +
      "StateVariablesResponse\022*\n\tvariables\030\001 \001(" +
      "\0132\027.google.protobuf.Struct\"6\n SetProject" +
      "AccessBindingsMetadata\022\022\n\nproject_id\030\001 \001" +
      "(\t\"9\n#UpdateProjectAccessBindingsMetadat" +
      "a\022\022\n\nproject_id\030\001 \001(\t*S\n\017ExecutionStatus" +
      "\022 \n\034EXECUTION_STATUS_UNSPECIFIED\020\000\022\006\n\002OK" +
      "\020\001\022\t\n\005ERROR\020\002\022\013\n\007ABORTED\020\0032\351\024\n\016ProjectSe" +
      "rvice\022\245\001\n\006Create\0220.yandex.cloud.datasphe" +
      "re.v2.CreateProjectRequest\032!.yandex.clou" +
      "d.operation.Operation\"F\202\323\344\223\002\034\"\027/datasphe" +
      "re/v2/projects:\001*\262\322* \n\025CreateProjectMeta" +
      "data\022\007Project\022\262\001\n\006Update\0220.yandex.cloud." +
      "datasphere.v2.UpdateProjectRequest\032!.yan" +
      "dex.cloud.operation.Operation\"S\202\323\344\223\002)2$/" +
      "datasphere/v2/projects/{project_id}:\001*\262\322" +
      "* \n\025UpdateProjectMetadata\022\007Project\022\275\001\n\006D" +
      "elete\0220.yandex.cloud.datasphere.v2.Delet" +
      "eProjectRequest\032!.yandex.cloud.operation" +
      ".Operation\"^\202\323\344\223\002&*$/datasphere/v2/proje" +
      "cts/{project_id}\262\322*.\n\025DeleteProjectMetad" +
      "ata\022\025google.protobuf.Empty\022\275\001\n\004Open\022..ya" +
      "ndex.cloud.datasphere.v2.OpenProjectRequ" +
      "est\032!.yandex.cloud.operation.Operation\"b" +
      "\202\323\344\223\002.\")/datasphere/v2/projects/{project" +
      "_id}:open:\001*\262\322**\n\023OpenProjectMetadata\022\023O" +
      "penProjectResponse\022\207\001\n\003Get\022-.yandex.clou" +
      "d.datasphere.v2.GetProjectRequest\032#.yand" +
      "ex.cloud.datasphere.v2.Project\",\202\323\344\223\002&\022$" +
      "/datasphere/v2/projects/{project_id}\022\212\001\n" +
      "\004List\022/.yandex.cloud.datasphere.v2.ListP" +
      "rojectsRequest\0320.yandex.cloud.datasphere" +
      ".v2.ListProjectsResponse\"\037\202\323\344\223\002\031\022\027/datas" +
      "phere/v2/projects\022\261\001\n\016GetUnitBalance\0221.y" +
      "andex.cloud.datasphere.v2.GetUnitBalance" +
      "Request\0322.yandex.cloud.datasphere.v2.Get" +
      "UnitBalanceResponse\"8\202\323\344\223\0022\0220/datasphere" +
      "/v2/projects/{project_id}:unitBalance\022\326\001" +
      "\n\016SetUnitBalance\0221.yandex.cloud.datasphe" +
      "re.v2.SetUnitBalanceRequest\032!.yandex.clo" +
      "ud.operation.Operation\"n\202\323\344\223\0025\"0/datasph" +
      "ere/v2/projects/{project_id}:unitBalance" +
      ":\001*\262\322*/\n\026SetUnitBalanceMetadata\022\025google." +
      "protobuf.Empty\022\322\001\n\007Execute\0223.yandex.clou" +
      "d.datasphere.v2.ProjectExecutionRequest\032" +
      "!.yandex.cloud.operation.Operation\"o\202\323\344\223" +
      "\0021\",/datasphere/v2/projects/{project_id}" +
      ":execute:\001*\262\322*4\n\030ProjectExecutionMetadat" +
      "a\022\030ProjectExecutionResponse\022\253\001\n\016GetCellO" +
      "utputs\022..yandex.cloud.datasphere.v2.Cell" +
      "OutputsRequest\032/.yandex.cloud.datasphere" +
      ".v2.CellOutputsResponse\"8\202\323\344\223\0022\0220/datasp" +
      "here/v2/projects/{project_id}:cellOutput" +
      "s\022\275\001\n\021GetStateVariables\0224.yandex.cloud.d" +
      "atasphere.v2.GetStateVariablesRequest\0325." +
      "yandex.cloud.datasphere.v2.GetStateVaria" +
      "blesResponse\";\202\323\344\223\0025\0223/datasphere/v2/pro" +
      "jects/{project_id}:stateVariables\022\263\001\n\022Li" +
      "stAccessBindings\022..yandex.cloud.access.L" +
      "istAccessBindingsRequest\032/.yandex.cloud." +
      "access.ListAccessBindingsResponse\"<\202\323\344\223\002" +
      "6\0224/datasphere/v2/projects/{resource_id}" +
      ":accessBindings\022\346\001\n\021SetAccessBindings\022-." +
      "yandex.cloud.access.SetAccessBindingsReq" +
      "uest\032!.yandex.cloud.operation.Operation\"" +
      "\177\202\323\344\223\002<\"7/datasphere/v2/projects/{resour" +
      "ce_id}:setAccessBindings:\001*\262\322*9\n SetProj" +
      "ectAccessBindingsMetadata\022\025google.protob" +
      "uf.Empty\022\363\001\n\024UpdateAccessBindings\0220.yand" +
      "ex.cloud.access.UpdateAccessBindingsRequ" +
      "est\032!.yandex.cloud.operation.Operation\"\205" +
      "\001\202\323\344\223\002?2:/datasphere/v2/projects/{resour" +
      "ce_id}:updateAccessBindings:\001*\262\322*<\n#Upda" +
      "teProjectAccessBindingsMetadata\022\025google." +
      "protobuf.EmptyBk\n\036yandex.cloud.api.datas" +
      "phere.v2ZIgithub.com/yandex-cloud/go-gen" +
      "proto/yandex/cloud/datasphere/v2;datasph" +
      "ereb\006proto3"
    };
    descriptor = com.google.protobuf.Descriptors.FileDescriptor
      .internalBuildGeneratedFileFrom(descriptorData,
        new com.google.protobuf.Descriptors.FileDescriptor[] {
          com.google.api.AnnotationsProto.getDescriptor(),
          com.google.protobuf.FieldMaskProto.getDescriptor(),
          com.google.protobuf.StructProto.getDescriptor(),
          com.google.protobuf.TimestampProto.getDescriptor(),
          com.google.protobuf.WrappersProto.getDescriptor(),
          yandex.cloud.api.OperationOuterClass.getDescriptor(),
          yandex.cloud.api.access.Access.getDescriptor(),
          yandex.cloud.api.datasphere.v2.ProjectOuterClass.getDescriptor(),
          yandex.cloud.api.operation.OperationOuterClass.getDescriptor(),
          yandex.cloud.api.Validation.getDescriptor(),
        });
    internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_descriptor =
      getDescriptor().getMessageTypes().get(0);
    internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_descriptor,
        new java.lang.String[] { "CommunityId", "Name", "Description", "Labels", "Settings", "Limits", });
    internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_LabelsEntry_descriptor =
      internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_descriptor.getNestedTypes().get(0);
    internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_LabelsEntry_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_CreateProjectRequest_LabelsEntry_descriptor,
        new java.lang.String[] { "Key", "Value", });
    internal_static_yandex_cloud_datasphere_v2_CreateProjectMetadata_descriptor =
      getDescriptor().getMessageTypes().get(1);
    internal_static_yandex_cloud_datasphere_v2_CreateProjectMetadata_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_CreateProjectMetadata_descriptor,
        new java.lang.String[] { "ProjectId", });
    internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_descriptor =
      getDescriptor().getMessageTypes().get(2);
    internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_descriptor,
        new java.lang.String[] { "ProjectId", "UpdateMask", "Name", "Description", "Labels", "Settings", "Limits", });
    internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_LabelsEntry_descriptor =
      internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_descriptor.getNestedTypes().get(0);
    internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_LabelsEntry_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_UpdateProjectRequest_LabelsEntry_descriptor,
        new java.lang.String[] { "Key", "Value", });
    internal_static_yandex_cloud_datasphere_v2_UpdateProjectMetadata_descriptor =
      getDescriptor().getMessageTypes().get(3);
    internal_static_yandex_cloud_datasphere_v2_UpdateProjectMetadata_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_UpdateProjectMetadata_descriptor,
        new java.lang.String[] { "ProjectId", });
    internal_static_yandex_cloud_datasphere_v2_DeleteProjectRequest_descriptor =
      getDescriptor().getMessageTypes().get(4);
    internal_static_yandex_cloud_datasphere_v2_DeleteProjectRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_DeleteProjectRequest_descriptor,
        new java.lang.String[] { "ProjectId", });
    internal_static_yandex_cloud_datasphere_v2_DeleteProjectMetadata_descriptor =
      getDescriptor().getMessageTypes().get(5);
    internal_static_yandex_cloud_datasphere_v2_DeleteProjectMetadata_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_DeleteProjectMetadata_descriptor,
        new java.lang.String[] { "ProjectId", });
    internal_static_yandex_cloud_datasphere_v2_OpenProjectRequest_descriptor =
      getDescriptor().getMessageTypes().get(6);
    internal_static_yandex_cloud_datasphere_v2_OpenProjectRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_OpenProjectRequest_descriptor,
        new java.lang.String[] { "ProjectId", });
    internal_static_yandex_cloud_datasphere_v2_OpenProjectMetadata_descriptor =
      getDescriptor().getMessageTypes().get(7);
    internal_static_yandex_cloud_datasphere_v2_OpenProjectMetadata_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_OpenProjectMetadata_descriptor,
        new java.lang.String[] { "ProjectId", "Status", });
    internal_static_yandex_cloud_datasphere_v2_OpenProjectResponse_descriptor =
      getDescriptor().getMessageTypes().get(8);
    internal_static_yandex_cloud_datasphere_v2_OpenProjectResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_OpenProjectResponse_descriptor,
        new java.lang.String[] { "ProjectUrl", "SessionToken", });
    internal_static_yandex_cloud_datasphere_v2_GetProjectRequest_descriptor =
      getDescriptor().getMessageTypes().get(9);
    internal_static_yandex_cloud_datasphere_v2_GetProjectRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_GetProjectRequest_descriptor,
        new java.lang.String[] { "ProjectId", });
    internal_static_yandex_cloud_datasphere_v2_ListProjectsRequest_descriptor =
      getDescriptor().getMessageTypes().get(10);
    internal_static_yandex_cloud_datasphere_v2_ListProjectsRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_ListProjectsRequest_descriptor,
        new java.lang.String[] { "CommunityId", "PageSize", "PageToken", "ProjectNamePattern", "OwnedById", });
    internal_static_yandex_cloud_datasphere_v2_ListProjectsResponse_descriptor =
      getDescriptor().getMessageTypes().get(11);
    internal_static_yandex_cloud_datasphere_v2_ListProjectsResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_ListProjectsResponse_descriptor,
        new java.lang.String[] { "Projects", "NextPageToken", });
    internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceRequest_descriptor =
      getDescriptor().getMessageTypes().get(12);
    internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceRequest_descriptor,
        new java.lang.String[] { "ProjectId", });
    internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceResponse_descriptor =
      getDescriptor().getMessageTypes().get(13);
    internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_GetUnitBalanceResponse_descriptor,
        new java.lang.String[] { "UnitBalance", });
    internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceRequest_descriptor =
      getDescriptor().getMessageTypes().get(14);
    internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceRequest_descriptor,
        new java.lang.String[] { "ProjectId", "UnitBalance", });
    internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceMetadata_descriptor =
      getDescriptor().getMessageTypes().get(15);
    internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceMetadata_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_SetUnitBalanceMetadata_descriptor,
        new java.lang.String[] { "ProjectId", });
    internal_static_yandex_cloud_datasphere_v2_ProjectExecutionRequest_descriptor =
      getDescriptor().getMessageTypes().get(16);
    internal_static_yandex_cloud_datasphere_v2_ProjectExecutionRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_ProjectExecutionRequest_descriptor,
        new java.lang.String[] { "ProjectId", "NotebookId", "CellId", "InputVariables", "OutputVariableNames", "Target", });
    internal_static_yandex_cloud_datasphere_v2_ProjectExecutionMetadata_descriptor =
      getDescriptor().getMessageTypes().get(17);
    internal_static_yandex_cloud_datasphere_v2_ProjectExecutionMetadata_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_ProjectExecutionMetadata_descriptor,
        new java.lang.String[] { "ProjectId", "NotebookId", "CellId", "Target", });
    internal_static_yandex_cloud_datasphere_v2_ProjectExecutionResponse_descriptor =
      getDescriptor().getMessageTypes().get(18);
    internal_static_yandex_cloud_datasphere_v2_ProjectExecutionResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_ProjectExecutionResponse_descriptor,
        new java.lang.String[] { "CheckpointId", "OutputVariables", "ExecutionStatus", });
    internal_static_yandex_cloud_datasphere_v2_CellOutputsRequest_descriptor =
      getDescriptor().getMessageTypes().get(19);
    internal_static_yandex_cloud_datasphere_v2_CellOutputsRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_CellOutputsRequest_descriptor,
        new java.lang.String[] { "ProjectId", "CellId", "CheckpointId", "StartAt", });
    internal_static_yandex_cloud_datasphere_v2_CellOutputsResponse_descriptor =
      getDescriptor().getMessageTypes().get(20);
    internal_static_yandex_cloud_datasphere_v2_CellOutputsResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_CellOutputsResponse_descriptor,
        new java.lang.String[] { "Outputs", });
    internal_static_yandex_cloud_datasphere_v2_GetStateVariablesRequest_descriptor =
      getDescriptor().getMessageTypes().get(21);
    internal_static_yandex_cloud_datasphere_v2_GetStateVariablesRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_GetStateVariablesRequest_descriptor,
        new java.lang.String[] { "ProjectId", "NotebookId", "VariableNames", "CheckpointId", });
    internal_static_yandex_cloud_datasphere_v2_GetStateVariablesResponse_descriptor =
      getDescriptor().getMessageTypes().get(22);
    internal_static_yandex_cloud_datasphere_v2_GetStateVariablesResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_GetStateVariablesResponse_descriptor,
        new java.lang.String[] { "Variables", });
    internal_static_yandex_cloud_datasphere_v2_SetProjectAccessBindingsMetadata_descriptor =
      getDescriptor().getMessageTypes().get(23);
    internal_static_yandex_cloud_datasphere_v2_SetProjectAccessBindingsMetadata_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_SetProjectAccessBindingsMetadata_descriptor,
        new java.lang.String[] { "ProjectId", });
    internal_static_yandex_cloud_datasphere_v2_UpdateProjectAccessBindingsMetadata_descriptor =
      getDescriptor().getMessageTypes().get(24);
    internal_static_yandex_cloud_datasphere_v2_UpdateProjectAccessBindingsMetadata_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_datasphere_v2_UpdateProjectAccessBindingsMetadata_descriptor,
        new java.lang.String[] { "ProjectId", });
    com.google.protobuf.ExtensionRegistry registry =
        com.google.protobuf.ExtensionRegistry.newInstance();
    registry.add(com.google.api.AnnotationsProto.http);
    registry.add(yandex.cloud.api.OperationOuterClass.operation);
    registry.add(yandex.cloud.api.Validation.exactlyOne);
    registry.add(yandex.cloud.api.Validation.length);
    registry.add(yandex.cloud.api.Validation.mapKey);
    registry.add(yandex.cloud.api.Validation.pattern);
    registry.add(yandex.cloud.api.Validation.required);
    registry.add(yandex.cloud.api.Validation.size);
    registry.add(yandex.cloud.api.Validation.value);
    com.google.protobuf.Descriptors.FileDescriptor
        .internalUpdateFileDescriptor(descriptor, registry);
    com.google.api.AnnotationsProto.getDescriptor();
    com.google.protobuf.FieldMaskProto.getDescriptor();
    com.google.protobuf.StructProto.getDescriptor();
    com.google.protobuf.TimestampProto.getDescriptor();
    com.google.protobuf.WrappersProto.getDescriptor();
    yandex.cloud.api.OperationOuterClass.getDescriptor();
    yandex.cloud.api.access.Access.getDescriptor();
    yandex.cloud.api.datasphere.v2.ProjectOuterClass.getDescriptor();
    yandex.cloud.api.operation.OperationOuterClass.getDescriptor();
    yandex.cloud.api.Validation.getDescriptor();
  }
  // @@protoc_insertion_point(outer_class_scope)
}
                                                                                                                                                                                         © 2015 - 2025 Weber Informatics LLC | Privacy Policy