yandex.cloud.api.monitoring.v3.ParametrizationOuterClass Maven / Gradle / Ivy
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: yandex/cloud/monitoring/v3/parametrization.proto
package yandex.cloud.api.monitoring.v3;
public final class ParametrizationOuterClass {
  private ParametrizationOuterClass() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistryLite registry) {
  }
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistry registry) {
    registerAllExtensions(
        (com.google.protobuf.ExtensionRegistryLite) registry);
  }
  public interface LabelValuesParameterOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.monitoring.v3.LabelValuesParameter)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * Required. Folder ID.
     * 
     *
     * string folder_id = 2;
     * @return Whether the folderId field is set.
     */
    boolean hasFolderId();
    /**
     * 
     * Required. Folder ID.
     * 
     *
     * string folder_id = 2;
     * @return The folderId.
     */
    java.lang.String getFolderId();
    /**
     * 
     * Required. Folder ID.
     * 
     *
     * string folder_id = 2;
     * @return The bytes for folderId.
     */
    com.google.protobuf.ByteString
        getFolderIdBytes();
    /**
     * 
     * Required. Selectors to select metric label values.
     * 
     *
     * string selectors = 19;
     * @return The selectors.
     */
    java.lang.String getSelectors();
    /**
     * 
     * Required. Selectors to select metric label values.
     * 
     *
     * string selectors = 19;
     * @return The bytes for selectors.
     */
    com.google.protobuf.ByteString
        getSelectorsBytes();
    /**
     * 
     * Required. Label key to list label values.
     * 
     *
     * string label_key = 20;
     * @return The labelKey.
     */
    java.lang.String getLabelKey();
    /**
     * 
     * Required. Label key to list label values.
     * 
     *
     * string label_key = 20;
     * @return The bytes for labelKey.
     */
    com.google.protobuf.ByteString
        getLabelKeyBytes();
    /**
     * 
     * Specifies the multiselectable values of parameter.
     * 
     *
     * bool multiselectable = 21;
     * @return The multiselectable.
     */
    boolean getMultiselectable();
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 22;
     * @return A list containing the defaultValues.
     */
    java.util.List
        getDefaultValuesList();
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 22;
     * @return The count of defaultValues.
     */
    int getDefaultValuesCount();
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 22;
     * @param index The index of the element to return.
     * @return The defaultValues at the given index.
     */
    java.lang.String getDefaultValues(int index);
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 22;
     * @param index The index of the value to return.
     * @return The bytes of the defaultValues at the given index.
     */
    com.google.protobuf.ByteString
        getDefaultValuesBytes(int index);
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.ContainerCase getContainerCase();
  }
  /**
   * 
   * Label values parameter.
   * 
   *
   * Protobuf type {@code yandex.cloud.monitoring.v3.LabelValuesParameter}
   */
  public static final class LabelValuesParameter extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.monitoring.v3.LabelValuesParameter)
      LabelValuesParameterOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use LabelValuesParameter.newBuilder() to construct.
    private LabelValuesParameter(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private LabelValuesParameter() {
      selectors_ = "";
      labelKey_ = "";
      defaultValues_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new LabelValuesParameter();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private LabelValuesParameter(
        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 18: {
              java.lang.String s = input.readStringRequireUtf8();
              containerCase_ = 2;
              container_ = s;
              break;
            }
            case 154: {
              java.lang.String s = input.readStringRequireUtf8();
              selectors_ = s;
              break;
            }
            case 162: {
              java.lang.String s = input.readStringRequireUtf8();
              labelKey_ = s;
              break;
            }
            case 168: {
              multiselectable_ = input.readBool();
              break;
            }
            case 178: {
              java.lang.String s = input.readStringRequireUtf8();
              if (!((mutable_bitField0_ & 0x00000001) != 0)) {
                defaultValues_ = new com.google.protobuf.LazyStringArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              defaultValues_.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)) {
          defaultValues_ = defaultValues_.getUnmodifiableView();
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_LabelValuesParameter_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_LabelValuesParameter_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.Builder.class);
    }
    private int containerCase_ = 0;
    private java.lang.Object container_;
    public enum ContainerCase
        implements com.google.protobuf.Internal.EnumLite,
            com.google.protobuf.AbstractMessage.InternalOneOfEnum {
      FOLDER_ID(2),
      CONTAINER_NOT_SET(0);
      private final int value;
      private ContainerCase(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 ContainerCase valueOf(int value) {
        return forNumber(value);
      }
      public static ContainerCase forNumber(int value) {
        switch (value) {
          case 2: return FOLDER_ID;
          case 0: return CONTAINER_NOT_SET;
          default: return null;
        }
      }
      public int getNumber() {
        return this.value;
      }
    };
    public ContainerCase
    getContainerCase() {
      return ContainerCase.forNumber(
          containerCase_);
    }
    public static final int FOLDER_ID_FIELD_NUMBER = 2;
    /**
     * 
     * Required. Folder ID.
     * 
     *
     * string folder_id = 2;
     * @return Whether the folderId field is set.
     */
    public boolean hasFolderId() {
      return containerCase_ == 2;
    }
    /**
     * 
     * Required. Folder ID.
     * 
     *
     * string folder_id = 2;
     * @return The folderId.
     */
    public java.lang.String getFolderId() {
      java.lang.Object ref = "";
      if (containerCase_ == 2) {
        ref = container_;
      }
      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 (containerCase_ == 2) {
          container_ = s;
        }
        return s;
      }
    }
    /**
     * 
     * Required. Folder ID.
     * 
     *
     * string folder_id = 2;
     * @return The bytes for folderId.
     */
    public com.google.protobuf.ByteString
        getFolderIdBytes() {
      java.lang.Object ref = "";
      if (containerCase_ == 2) {
        ref = container_;
      }
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        if (containerCase_ == 2) {
          container_ = b;
        }
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int SELECTORS_FIELD_NUMBER = 19;
    private volatile java.lang.Object selectors_;
    /**
     * 
     * Required. Selectors to select metric label values.
     * 
     *
     * string selectors = 19;
     * @return The selectors.
     */
    @java.lang.Override
    public java.lang.String getSelectors() {
      java.lang.Object ref = selectors_;
      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();
        selectors_ = s;
        return s;
      }
    }
    /**
     * 
     * Required. Selectors to select metric label values.
     * 
     *
     * string selectors = 19;
     * @return The bytes for selectors.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getSelectorsBytes() {
      java.lang.Object ref = selectors_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        selectors_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int LABEL_KEY_FIELD_NUMBER = 20;
    private volatile java.lang.Object labelKey_;
    /**
     * 
     * Required. Label key to list label values.
     * 
     *
     * string label_key = 20;
     * @return The labelKey.
     */
    @java.lang.Override
    public java.lang.String getLabelKey() {
      java.lang.Object ref = labelKey_;
      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();
        labelKey_ = s;
        return s;
      }
    }
    /**
     * 
     * Required. Label key to list label values.
     * 
     *
     * string label_key = 20;
     * @return The bytes for labelKey.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getLabelKeyBytes() {
      java.lang.Object ref = labelKey_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        labelKey_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int MULTISELECTABLE_FIELD_NUMBER = 21;
    private boolean multiselectable_;
    /**
     * 
     * Specifies the multiselectable values of parameter.
     * 
     *
     * bool multiselectable = 21;
     * @return The multiselectable.
     */
    @java.lang.Override
    public boolean getMultiselectable() {
      return multiselectable_;
    }
    public static final int DEFAULT_VALUES_FIELD_NUMBER = 22;
    private com.google.protobuf.LazyStringList defaultValues_;
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 22;
     * @return A list containing the defaultValues.
     */
    public com.google.protobuf.ProtocolStringList
        getDefaultValuesList() {
      return defaultValues_;
    }
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 22;
     * @return The count of defaultValues.
     */
    public int getDefaultValuesCount() {
      return defaultValues_.size();
    }
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 22;
     * @param index The index of the element to return.
     * @return The defaultValues at the given index.
     */
    public java.lang.String getDefaultValues(int index) {
      return defaultValues_.get(index);
    }
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 22;
     * @param index The index of the value to return.
     * @return The bytes of the defaultValues at the given index.
     */
    public com.google.protobuf.ByteString
        getDefaultValuesBytes(int index) {
      return defaultValues_.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 (containerCase_ == 2) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, container_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(selectors_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 19, selectors_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(labelKey_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 20, labelKey_);
      }
      if (multiselectable_ != false) {
        output.writeBool(21, multiselectable_);
      }
      for (int i = 0; i < defaultValues_.size(); i++) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 22, defaultValues_.getRaw(i));
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (containerCase_ == 2) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, container_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(selectors_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(19, selectors_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(labelKey_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(20, labelKey_);
      }
      if (multiselectable_ != false) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(21, multiselectable_);
      }
      {
        int dataSize = 0;
        for (int i = 0; i < defaultValues_.size(); i++) {
          dataSize += computeStringSizeNoTag(defaultValues_.getRaw(i));
        }
        size += dataSize;
        size += 2 * getDefaultValuesList().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.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter)) {
        return super.equals(obj);
      }
      yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter other = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter) obj;
      if (!getSelectors()
          .equals(other.getSelectors())) return false;
      if (!getLabelKey()
          .equals(other.getLabelKey())) return false;
      if (getMultiselectable()
          != other.getMultiselectable()) return false;
      if (!getDefaultValuesList()
          .equals(other.getDefaultValuesList())) return false;
      if (!getContainerCase().equals(other.getContainerCase())) return false;
      switch (containerCase_) {
        case 2:
          if (!getFolderId()
              .equals(other.getFolderId())) 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) + SELECTORS_FIELD_NUMBER;
      hash = (53 * hash) + getSelectors().hashCode();
      hash = (37 * hash) + LABEL_KEY_FIELD_NUMBER;
      hash = (53 * hash) + getLabelKey().hashCode();
      hash = (37 * hash) + MULTISELECTABLE_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
          getMultiselectable());
      if (getDefaultValuesCount() > 0) {
        hash = (37 * hash) + DEFAULT_VALUES_FIELD_NUMBER;
        hash = (53 * hash) + getDefaultValuesList().hashCode();
      }
      switch (containerCase_) {
        case 2:
          hash = (37 * hash) + FOLDER_ID_FIELD_NUMBER;
          hash = (53 * hash) + getFolderId().hashCode();
          break;
        case 0:
        default:
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter 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.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter 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.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter 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.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter 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.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter 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.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter 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;
    }
    /**
     * 
     * Label values parameter.
     * 
     *
     * Protobuf type {@code yandex.cloud.monitoring.v3.LabelValuesParameter}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.monitoring.v3.LabelValuesParameter)
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameterOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_LabelValuesParameter_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_LabelValuesParameter_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.Builder.class);
      }
      // Construct using yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.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();
        selectors_ = "";
        labelKey_ = "";
        multiselectable_ = false;
        defaultValues_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        containerCase_ = 0;
        container_ = null;
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_LabelValuesParameter_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter getDefaultInstanceForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter build() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter buildPartial() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter result = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter(this);
        int from_bitField0_ = bitField0_;
        if (containerCase_ == 2) {
          result.container_ = container_;
        }
        result.selectors_ = selectors_;
        result.labelKey_ = labelKey_;
        result.multiselectable_ = multiselectable_;
        if (((bitField0_ & 0x00000001) != 0)) {
          defaultValues_ = defaultValues_.getUnmodifiableView();
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.defaultValues_ = defaultValues_;
        result.containerCase_ = containerCase_;
        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.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter) {
          return mergeFrom((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter other) {
        if (other == yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.getDefaultInstance()) return this;
        if (!other.getSelectors().isEmpty()) {
          selectors_ = other.selectors_;
          onChanged();
        }
        if (!other.getLabelKey().isEmpty()) {
          labelKey_ = other.labelKey_;
          onChanged();
        }
        if (other.getMultiselectable() != false) {
          setMultiselectable(other.getMultiselectable());
        }
        if (!other.defaultValues_.isEmpty()) {
          if (defaultValues_.isEmpty()) {
            defaultValues_ = other.defaultValues_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureDefaultValuesIsMutable();
            defaultValues_.addAll(other.defaultValues_);
          }
          onChanged();
        }
        switch (other.getContainerCase()) {
          case FOLDER_ID: {
            containerCase_ = 2;
            container_ = other.container_;
            onChanged();
            break;
          }
          case CONTAINER_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.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int containerCase_ = 0;
      private java.lang.Object container_;
      public ContainerCase
          getContainerCase() {
        return ContainerCase.forNumber(
            containerCase_);
      }
      public Builder clearContainer() {
        containerCase_ = 0;
        container_ = null;
        onChanged();
        return this;
      }
      private int bitField0_;
      /**
       * 
       * Required. Folder ID.
       * 
       *
       * string folder_id = 2;
       * @return Whether the folderId field is set.
       */
      @java.lang.Override
      public boolean hasFolderId() {
        return containerCase_ == 2;
      }
      /**
       * 
       * Required. Folder ID.
       * 
       *
       * string folder_id = 2;
       * @return The folderId.
       */
      @java.lang.Override
      public java.lang.String getFolderId() {
        java.lang.Object ref = "";
        if (containerCase_ == 2) {
          ref = container_;
        }
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (containerCase_ == 2) {
            container_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * Required. Folder ID.
       * 
       *
       * string folder_id = 2;
       * @return The bytes for folderId.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getFolderIdBytes() {
        java.lang.Object ref = "";
        if (containerCase_ == 2) {
          ref = container_;
        }
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          if (containerCase_ == 2) {
            container_ = b;
          }
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * Required. Folder ID.
       * 
       *
       * string folder_id = 2;
       * @param value The folderId to set.
       * @return This builder for chaining.
       */
      public Builder setFolderId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  containerCase_ = 2;
        container_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Required. Folder ID.
       * 
       *
       * string folder_id = 2;
       * @return This builder for chaining.
       */
      public Builder clearFolderId() {
        if (containerCase_ == 2) {
          containerCase_ = 0;
          container_ = null;
          onChanged();
        }
        return this;
      }
      /**
       * 
       * Required. Folder ID.
       * 
       *
       * string folder_id = 2;
       * @param value The bytes for folderId to set.
       * @return This builder for chaining.
       */
      public Builder setFolderIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        containerCase_ = 2;
        container_ = value;
        onChanged();
        return this;
      }
      private java.lang.Object selectors_ = "";
      /**
       * 
       * Required. Selectors to select metric label values.
       * 
       *
       * string selectors = 19;
       * @return The selectors.
       */
      public java.lang.String getSelectors() {
        java.lang.Object ref = selectors_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          selectors_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * Required. Selectors to select metric label values.
       * 
       *
       * string selectors = 19;
       * @return The bytes for selectors.
       */
      public com.google.protobuf.ByteString
          getSelectorsBytes() {
        java.lang.Object ref = selectors_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          selectors_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * Required. Selectors to select metric label values.
       * 
       *
       * string selectors = 19;
       * @param value The selectors to set.
       * @return This builder for chaining.
       */
      public Builder setSelectors(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        selectors_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Required. Selectors to select metric label values.
       * 
       *
       * string selectors = 19;
       * @return This builder for chaining.
       */
      public Builder clearSelectors() {
        
        selectors_ = getDefaultInstance().getSelectors();
        onChanged();
        return this;
      }
      /**
       * 
       * Required. Selectors to select metric label values.
       * 
       *
       * string selectors = 19;
       * @param value The bytes for selectors to set.
       * @return This builder for chaining.
       */
      public Builder setSelectorsBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        selectors_ = value;
        onChanged();
        return this;
      }
      private java.lang.Object labelKey_ = "";
      /**
       * 
       * Required. Label key to list label values.
       * 
       *
       * string label_key = 20;
       * @return The labelKey.
       */
      public java.lang.String getLabelKey() {
        java.lang.Object ref = labelKey_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          labelKey_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * Required. Label key to list label values.
       * 
       *
       * string label_key = 20;
       * @return The bytes for labelKey.
       */
      public com.google.protobuf.ByteString
          getLabelKeyBytes() {
        java.lang.Object ref = labelKey_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          labelKey_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * Required. Label key to list label values.
       * 
       *
       * string label_key = 20;
       * @param value The labelKey to set.
       * @return This builder for chaining.
       */
      public Builder setLabelKey(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        labelKey_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Required. Label key to list label values.
       * 
       *
       * string label_key = 20;
       * @return This builder for chaining.
       */
      public Builder clearLabelKey() {
        
        labelKey_ = getDefaultInstance().getLabelKey();
        onChanged();
        return this;
      }
      /**
       * 
       * Required. Label key to list label values.
       * 
       *
       * string label_key = 20;
       * @param value The bytes for labelKey to set.
       * @return This builder for chaining.
       */
      public Builder setLabelKeyBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        labelKey_ = value;
        onChanged();
        return this;
      }
      private boolean multiselectable_ ;
      /**
       * 
       * Specifies the multiselectable values of parameter.
       * 
       *
       * bool multiselectable = 21;
       * @return The multiselectable.
       */
      @java.lang.Override
      public boolean getMultiselectable() {
        return multiselectable_;
      }
      /**
       * 
       * Specifies the multiselectable values of parameter.
       * 
       *
       * bool multiselectable = 21;
       * @param value The multiselectable to set.
       * @return This builder for chaining.
       */
      public Builder setMultiselectable(boolean value) {
        
        multiselectable_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Specifies the multiselectable values of parameter.
       * 
       *
       * bool multiselectable = 21;
       * @return This builder for chaining.
       */
      public Builder clearMultiselectable() {
        
        multiselectable_ = false;
        onChanged();
        return this;
      }
      private com.google.protobuf.LazyStringList defaultValues_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      private void ensureDefaultValuesIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          defaultValues_ = new com.google.protobuf.LazyStringArrayList(defaultValues_);
          bitField0_ |= 0x00000001;
         }
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 22;
       * @return A list containing the defaultValues.
       */
      public com.google.protobuf.ProtocolStringList
          getDefaultValuesList() {
        return defaultValues_.getUnmodifiableView();
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 22;
       * @return The count of defaultValues.
       */
      public int getDefaultValuesCount() {
        return defaultValues_.size();
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 22;
       * @param index The index of the element to return.
       * @return The defaultValues at the given index.
       */
      public java.lang.String getDefaultValues(int index) {
        return defaultValues_.get(index);
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 22;
       * @param index The index of the value to return.
       * @return The bytes of the defaultValues at the given index.
       */
      public com.google.protobuf.ByteString
          getDefaultValuesBytes(int index) {
        return defaultValues_.getByteString(index);
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 22;
       * @param index The index to set the value at.
       * @param value The defaultValues to set.
       * @return This builder for chaining.
       */
      public Builder setDefaultValues(
          int index, java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureDefaultValuesIsMutable();
        defaultValues_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 22;
       * @param value The defaultValues to add.
       * @return This builder for chaining.
       */
      public Builder addDefaultValues(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureDefaultValuesIsMutable();
        defaultValues_.add(value);
        onChanged();
        return this;
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 22;
       * @param values The defaultValues to add.
       * @return This builder for chaining.
       */
      public Builder addAllDefaultValues(
          java.lang.Iterable values) {
        ensureDefaultValuesIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, defaultValues_);
        onChanged();
        return this;
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 22;
       * @return This builder for chaining.
       */
      public Builder clearDefaultValues() {
        defaultValues_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 22;
       * @param value The bytes of the defaultValues to add.
       * @return This builder for chaining.
       */
      public Builder addDefaultValuesBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        ensureDefaultValuesIsMutable();
        defaultValues_.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.monitoring.v3.LabelValuesParameter)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.monitoring.v3.LabelValuesParameter)
    private static final yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter();
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public LabelValuesParameter parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new LabelValuesParameter(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.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface CustomParameterOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.monitoring.v3.CustomParameter)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * Required. List of parameter values.
     * 
     *
     * repeated string values = 1;
     * @return A list containing the values.
     */
    java.util.List
        getValuesList();
    /**
     * 
     * Required. List of parameter values.
     * 
     *
     * repeated string values = 1;
     * @return The count of values.
     */
    int getValuesCount();
    /**
     * 
     * Required. List of parameter values.
     * 
     *
     * repeated string values = 1;
     * @param index The index of the element to return.
     * @return The values at the given index.
     */
    java.lang.String getValues(int index);
    /**
     * 
     * Required. List of parameter values.
     * 
     *
     * repeated string values = 1;
     * @param index The index of the value to return.
     * @return The bytes of the values at the given index.
     */
    com.google.protobuf.ByteString
        getValuesBytes(int index);
    /**
     * 
     * Specifies the multiselectable values of parameter.
     * 
     *
     * bool multiselectable = 2;
     * @return The multiselectable.
     */
    boolean getMultiselectable();
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 3;
     * @return A list containing the defaultValues.
     */
    java.util.List
        getDefaultValuesList();
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 3;
     * @return The count of defaultValues.
     */
    int getDefaultValuesCount();
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 3;
     * @param index The index of the element to return.
     * @return The defaultValues at the given index.
     */
    java.lang.String getDefaultValues(int index);
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 3;
     * @param index The index of the value to return.
     * @return The bytes of the defaultValues at the given index.
     */
    com.google.protobuf.ByteString
        getDefaultValuesBytes(int index);
  }
  /**
   * 
   * Custom parameter.
   * 
   *
   * Protobuf type {@code yandex.cloud.monitoring.v3.CustomParameter}
   */
  public static final class CustomParameter extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.monitoring.v3.CustomParameter)
      CustomParameterOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use CustomParameter.newBuilder() to construct.
    private CustomParameter(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private CustomParameter() {
      values_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      defaultValues_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new CustomParameter();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private CustomParameter(
        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)) {
                values_ = new com.google.protobuf.LazyStringArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              values_.add(s);
              break;
            }
            case 16: {
              multiselectable_ = input.readBool();
              break;
            }
            case 26: {
              java.lang.String s = input.readStringRequireUtf8();
              if (!((mutable_bitField0_ & 0x00000002) != 0)) {
                defaultValues_ = new com.google.protobuf.LazyStringArrayList();
                mutable_bitField0_ |= 0x00000002;
              }
              defaultValues_.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)) {
          values_ = values_.getUnmodifiableView();
        }
        if (((mutable_bitField0_ & 0x00000002) != 0)) {
          defaultValues_ = defaultValues_.getUnmodifiableView();
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_CustomParameter_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_CustomParameter_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.Builder.class);
    }
    public static final int VALUES_FIELD_NUMBER = 1;
    private com.google.protobuf.LazyStringList values_;
    /**
     * 
     * Required. List of parameter values.
     * 
     *
     * repeated string values = 1;
     * @return A list containing the values.
     */
    public com.google.protobuf.ProtocolStringList
        getValuesList() {
      return values_;
    }
    /**
     * 
     * Required. List of parameter values.
     * 
     *
     * repeated string values = 1;
     * @return The count of values.
     */
    public int getValuesCount() {
      return values_.size();
    }
    /**
     * 
     * Required. List of parameter values.
     * 
     *
     * repeated string values = 1;
     * @param index The index of the element to return.
     * @return The values at the given index.
     */
    public java.lang.String getValues(int index) {
      return values_.get(index);
    }
    /**
     * 
     * Required. List of parameter values.
     * 
     *
     * repeated string values = 1;
     * @param index The index of the value to return.
     * @return The bytes of the values at the given index.
     */
    public com.google.protobuf.ByteString
        getValuesBytes(int index) {
      return values_.getByteString(index);
    }
    public static final int MULTISELECTABLE_FIELD_NUMBER = 2;
    private boolean multiselectable_;
    /**
     * 
     * Specifies the multiselectable values of parameter.
     * 
     *
     * bool multiselectable = 2;
     * @return The multiselectable.
     */
    @java.lang.Override
    public boolean getMultiselectable() {
      return multiselectable_;
    }
    public static final int DEFAULT_VALUES_FIELD_NUMBER = 3;
    private com.google.protobuf.LazyStringList defaultValues_;
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 3;
     * @return A list containing the defaultValues.
     */
    public com.google.protobuf.ProtocolStringList
        getDefaultValuesList() {
      return defaultValues_;
    }
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 3;
     * @return The count of defaultValues.
     */
    public int getDefaultValuesCount() {
      return defaultValues_.size();
    }
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 3;
     * @param index The index of the element to return.
     * @return The defaultValues at the given index.
     */
    public java.lang.String getDefaultValues(int index) {
      return defaultValues_.get(index);
    }
    /**
     * 
     * Default values.
     * 
     *
     * repeated string default_values = 3;
     * @param index The index of the value to return.
     * @return The bytes of the defaultValues at the given index.
     */
    public com.google.protobuf.ByteString
        getDefaultValuesBytes(int index) {
      return defaultValues_.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 < values_.size(); i++) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, values_.getRaw(i));
      }
      if (multiselectable_ != false) {
        output.writeBool(2, multiselectable_);
      }
      for (int i = 0; i < defaultValues_.size(); i++) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, defaultValues_.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 < values_.size(); i++) {
          dataSize += computeStringSizeNoTag(values_.getRaw(i));
        }
        size += dataSize;
        size += 1 * getValuesList().size();
      }
      if (multiselectable_ != false) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(2, multiselectable_);
      }
      {
        int dataSize = 0;
        for (int i = 0; i < defaultValues_.size(); i++) {
          dataSize += computeStringSizeNoTag(defaultValues_.getRaw(i));
        }
        size += dataSize;
        size += 1 * getDefaultValuesList().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.monitoring.v3.ParametrizationOuterClass.CustomParameter)) {
        return super.equals(obj);
      }
      yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter other = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter) obj;
      if (!getValuesList()
          .equals(other.getValuesList())) return false;
      if (getMultiselectable()
          != other.getMultiselectable()) return false;
      if (!getDefaultValuesList()
          .equals(other.getDefaultValuesList())) 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 (getValuesCount() > 0) {
        hash = (37 * hash) + VALUES_FIELD_NUMBER;
        hash = (53 * hash) + getValuesList().hashCode();
      }
      hash = (37 * hash) + MULTISELECTABLE_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
          getMultiselectable());
      if (getDefaultValuesCount() > 0) {
        hash = (37 * hash) + DEFAULT_VALUES_FIELD_NUMBER;
        hash = (53 * hash) + getDefaultValuesList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter 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.monitoring.v3.ParametrizationOuterClass.CustomParameter parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter 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.monitoring.v3.ParametrizationOuterClass.CustomParameter parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter 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.monitoring.v3.ParametrizationOuterClass.CustomParameter parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter 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.monitoring.v3.ParametrizationOuterClass.CustomParameter parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter 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.monitoring.v3.ParametrizationOuterClass.CustomParameter 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;
    }
    /**
     * 
     * Custom parameter.
     * 
     *
     * Protobuf type {@code yandex.cloud.monitoring.v3.CustomParameter}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.monitoring.v3.CustomParameter)
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameterOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_CustomParameter_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_CustomParameter_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.Builder.class);
      }
      // Construct using yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.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();
        values_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        multiselectable_ = false;
        defaultValues_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000002);
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_CustomParameter_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter getDefaultInstanceForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter build() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter buildPartial() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter result = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter(this);
        int from_bitField0_ = bitField0_;
        if (((bitField0_ & 0x00000001) != 0)) {
          values_ = values_.getUnmodifiableView();
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.values_ = values_;
        result.multiselectable_ = multiselectable_;
        if (((bitField0_ & 0x00000002) != 0)) {
          defaultValues_ = defaultValues_.getUnmodifiableView();
          bitField0_ = (bitField0_ & ~0x00000002);
        }
        result.defaultValues_ = defaultValues_;
        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.monitoring.v3.ParametrizationOuterClass.CustomParameter) {
          return mergeFrom((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter other) {
        if (other == yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.getDefaultInstance()) return this;
        if (!other.values_.isEmpty()) {
          if (values_.isEmpty()) {
            values_ = other.values_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureValuesIsMutable();
            values_.addAll(other.values_);
          }
          onChanged();
        }
        if (other.getMultiselectable() != false) {
          setMultiselectable(other.getMultiselectable());
        }
        if (!other.defaultValues_.isEmpty()) {
          if (defaultValues_.isEmpty()) {
            defaultValues_ = other.defaultValues_;
            bitField0_ = (bitField0_ & ~0x00000002);
          } else {
            ensureDefaultValuesIsMutable();
            defaultValues_.addAll(other.defaultValues_);
          }
          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.monitoring.v3.ParametrizationOuterClass.CustomParameter parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;
      private com.google.protobuf.LazyStringList values_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      private void ensureValuesIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          values_ = new com.google.protobuf.LazyStringArrayList(values_);
          bitField0_ |= 0x00000001;
         }
      }
      /**
       * 
       * Required. List of parameter values.
       * 
       *
       * repeated string values = 1;
       * @return A list containing the values.
       */
      public com.google.protobuf.ProtocolStringList
          getValuesList() {
        return values_.getUnmodifiableView();
      }
      /**
       * 
       * Required. List of parameter values.
       * 
       *
       * repeated string values = 1;
       * @return The count of values.
       */
      public int getValuesCount() {
        return values_.size();
      }
      /**
       * 
       * Required. List of parameter values.
       * 
       *
       * repeated string values = 1;
       * @param index The index of the element to return.
       * @return The values at the given index.
       */
      public java.lang.String getValues(int index) {
        return values_.get(index);
      }
      /**
       * 
       * Required. List of parameter values.
       * 
       *
       * repeated string values = 1;
       * @param index The index of the value to return.
       * @return The bytes of the values at the given index.
       */
      public com.google.protobuf.ByteString
          getValuesBytes(int index) {
        return values_.getByteString(index);
      }
      /**
       * 
       * Required. List of parameter values.
       * 
       *
       * repeated string values = 1;
       * @param index The index to set the value at.
       * @param value The values to set.
       * @return This builder for chaining.
       */
      public Builder setValues(
          int index, java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureValuesIsMutable();
        values_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * 
       * Required. List of parameter values.
       * 
       *
       * repeated string values = 1;
       * @param value The values to add.
       * @return This builder for chaining.
       */
      public Builder addValues(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureValuesIsMutable();
        values_.add(value);
        onChanged();
        return this;
      }
      /**
       * 
       * Required. List of parameter values.
       * 
       *
       * repeated string values = 1;
       * @param values The values to add.
       * @return This builder for chaining.
       */
      public Builder addAllValues(
          java.lang.Iterable values) {
        ensureValuesIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, values_);
        onChanged();
        return this;
      }
      /**
       * 
       * Required. List of parameter values.
       * 
       *
       * repeated string values = 1;
       * @return This builder for chaining.
       */
      public Builder clearValues() {
        values_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }
      /**
       * 
       * Required. List of parameter values.
       * 
       *
       * repeated string values = 1;
       * @param value The bytes of the values to add.
       * @return This builder for chaining.
       */
      public Builder addValuesBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        ensureValuesIsMutable();
        values_.add(value);
        onChanged();
        return this;
      }
      private boolean multiselectable_ ;
      /**
       * 
       * Specifies the multiselectable values of parameter.
       * 
       *
       * bool multiselectable = 2;
       * @return The multiselectable.
       */
      @java.lang.Override
      public boolean getMultiselectable() {
        return multiselectable_;
      }
      /**
       * 
       * Specifies the multiselectable values of parameter.
       * 
       *
       * bool multiselectable = 2;
       * @param value The multiselectable to set.
       * @return This builder for chaining.
       */
      public Builder setMultiselectable(boolean value) {
        
        multiselectable_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Specifies the multiselectable values of parameter.
       * 
       *
       * bool multiselectable = 2;
       * @return This builder for chaining.
       */
      public Builder clearMultiselectable() {
        
        multiselectable_ = false;
        onChanged();
        return this;
      }
      private com.google.protobuf.LazyStringList defaultValues_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      private void ensureDefaultValuesIsMutable() {
        if (!((bitField0_ & 0x00000002) != 0)) {
          defaultValues_ = new com.google.protobuf.LazyStringArrayList(defaultValues_);
          bitField0_ |= 0x00000002;
         }
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 3;
       * @return A list containing the defaultValues.
       */
      public com.google.protobuf.ProtocolStringList
          getDefaultValuesList() {
        return defaultValues_.getUnmodifiableView();
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 3;
       * @return The count of defaultValues.
       */
      public int getDefaultValuesCount() {
        return defaultValues_.size();
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 3;
       * @param index The index of the element to return.
       * @return The defaultValues at the given index.
       */
      public java.lang.String getDefaultValues(int index) {
        return defaultValues_.get(index);
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 3;
       * @param index The index of the value to return.
       * @return The bytes of the defaultValues at the given index.
       */
      public com.google.protobuf.ByteString
          getDefaultValuesBytes(int index) {
        return defaultValues_.getByteString(index);
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 3;
       * @param index The index to set the value at.
       * @param value The defaultValues to set.
       * @return This builder for chaining.
       */
      public Builder setDefaultValues(
          int index, java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureDefaultValuesIsMutable();
        defaultValues_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 3;
       * @param value The defaultValues to add.
       * @return This builder for chaining.
       */
      public Builder addDefaultValues(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureDefaultValuesIsMutable();
        defaultValues_.add(value);
        onChanged();
        return this;
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 3;
       * @param values The defaultValues to add.
       * @return This builder for chaining.
       */
      public Builder addAllDefaultValues(
          java.lang.Iterable values) {
        ensureDefaultValuesIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, defaultValues_);
        onChanged();
        return this;
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 3;
       * @return This builder for chaining.
       */
      public Builder clearDefaultValues() {
        defaultValues_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000002);
        onChanged();
        return this;
      }
      /**
       * 
       * Default values.
       * 
       *
       * repeated string default_values = 3;
       * @param value The bytes of the defaultValues to add.
       * @return This builder for chaining.
       */
      public Builder addDefaultValuesBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        ensureDefaultValuesIsMutable();
        defaultValues_.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.monitoring.v3.CustomParameter)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.monitoring.v3.CustomParameter)
    private static final yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter();
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public CustomParameter parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new CustomParameter(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.monitoring.v3.ParametrizationOuterClass.CustomParameter getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface TextParameterOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.monitoring.v3.TextParameter)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * Default value.
     * 
     *
     * string default_value = 1;
     * @return The defaultValue.
     */
    java.lang.String getDefaultValue();
    /**
     * 
     * Default value.
     * 
     *
     * string default_value = 1;
     * @return The bytes for defaultValue.
     */
    com.google.protobuf.ByteString
        getDefaultValueBytes();
  }
  /**
   * 
   * Text parameter.
   * 
   *
   * Protobuf type {@code yandex.cloud.monitoring.v3.TextParameter}
   */
  public static final class TextParameter extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.monitoring.v3.TextParameter)
      TextParameterOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use TextParameter.newBuilder() to construct.
    private TextParameter(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private TextParameter() {
      defaultValue_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new TextParameter();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private TextParameter(
        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();
              defaultValue_ = 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.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_TextParameter_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_TextParameter_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.Builder.class);
    }
    public static final int DEFAULT_VALUE_FIELD_NUMBER = 1;
    private volatile java.lang.Object defaultValue_;
    /**
     * 
     * Default value.
     * 
     *
     * string default_value = 1;
     * @return The defaultValue.
     */
    @java.lang.Override
    public java.lang.String getDefaultValue() {
      java.lang.Object ref = defaultValue_;
      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();
        defaultValue_ = s;
        return s;
      }
    }
    /**
     * 
     * Default value.
     * 
     *
     * string default_value = 1;
     * @return The bytes for defaultValue.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getDefaultValueBytes() {
      java.lang.Object ref = defaultValue_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        defaultValue_ = 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(defaultValue_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, defaultValue_);
      }
      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(defaultValue_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, defaultValue_);
      }
      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.monitoring.v3.ParametrizationOuterClass.TextParameter)) {
        return super.equals(obj);
      }
      yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter other = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter) obj;
      if (!getDefaultValue()
          .equals(other.getDefaultValue())) 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) + DEFAULT_VALUE_FIELD_NUMBER;
      hash = (53 * hash) + getDefaultValue().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter 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.monitoring.v3.ParametrizationOuterClass.TextParameter parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter 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.monitoring.v3.ParametrizationOuterClass.TextParameter parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter 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.monitoring.v3.ParametrizationOuterClass.TextParameter parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter 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.monitoring.v3.ParametrizationOuterClass.TextParameter parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter 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.monitoring.v3.ParametrizationOuterClass.TextParameter 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;
    }
    /**
     * 
     * Text parameter.
     * 
     *
     * Protobuf type {@code yandex.cloud.monitoring.v3.TextParameter}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.monitoring.v3.TextParameter)
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameterOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_TextParameter_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_TextParameter_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.Builder.class);
      }
      // Construct using yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.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();
        defaultValue_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_TextParameter_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter getDefaultInstanceForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter build() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter buildPartial() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter result = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter(this);
        result.defaultValue_ = defaultValue_;
        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.monitoring.v3.ParametrizationOuterClass.TextParameter) {
          return mergeFrom((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter other) {
        if (other == yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.getDefaultInstance()) return this;
        if (!other.getDefaultValue().isEmpty()) {
          defaultValue_ = other.defaultValue_;
          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.monitoring.v3.ParametrizationOuterClass.TextParameter parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private java.lang.Object defaultValue_ = "";
      /**
       * 
       * Default value.
       * 
       *
       * string default_value = 1;
       * @return The defaultValue.
       */
      public java.lang.String getDefaultValue() {
        java.lang.Object ref = defaultValue_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          defaultValue_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * Default value.
       * 
       *
       * string default_value = 1;
       * @return The bytes for defaultValue.
       */
      public com.google.protobuf.ByteString
          getDefaultValueBytes() {
        java.lang.Object ref = defaultValue_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          defaultValue_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * Default value.
       * 
       *
       * string default_value = 1;
       * @param value The defaultValue to set.
       * @return This builder for chaining.
       */
      public Builder setDefaultValue(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        defaultValue_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Default value.
       * 
       *
       * string default_value = 1;
       * @return This builder for chaining.
       */
      public Builder clearDefaultValue() {
        
        defaultValue_ = getDefaultInstance().getDefaultValue();
        onChanged();
        return this;
      }
      /**
       * 
       * Default value.
       * 
       *
       * string default_value = 1;
       * @param value The bytes for defaultValue to set.
       * @return This builder for chaining.
       */
      public Builder setDefaultValueBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        defaultValue_ = 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.monitoring.v3.TextParameter)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.monitoring.v3.TextParameter)
    private static final yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter();
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public TextParameter parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new TextParameter(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.monitoring.v3.ParametrizationOuterClass.TextParameter getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface DoubleParameterOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.monitoring.v3.DoubleParameter)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * Default value.
     * 
     *
     * double default_value = 1;
     * @return The defaultValue.
     */
    double getDefaultValue();
    /**
     * 
     * Parameter unit.
     * 
     *
     * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
     * @return The enum numeric value on the wire for unitFormat.
     */
    int getUnitFormatValue();
    /**
     * 
     * Parameter unit.
     * 
     *
     * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
     * @return The unitFormat.
     */
    yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat getUnitFormat();
  }
  /**
   * 
   * Double parameter.
   * 
   *
   * Protobuf type {@code yandex.cloud.monitoring.v3.DoubleParameter}
   */
  public static final class DoubleParameter extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.monitoring.v3.DoubleParameter)
      DoubleParameterOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use DoubleParameter.newBuilder() to construct.
    private DoubleParameter(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private DoubleParameter() {
      unitFormat_ = 0;
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new DoubleParameter();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private DoubleParameter(
        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 9: {
              defaultValue_ = input.readDouble();
              break;
            }
            case 16: {
              int rawValue = input.readEnum();
              unitFormat_ = 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.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_DoubleParameter_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_DoubleParameter_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.Builder.class);
    }
    public static final int DEFAULT_VALUE_FIELD_NUMBER = 1;
    private double defaultValue_;
    /**
     * 
     * Default value.
     * 
     *
     * double default_value = 1;
     * @return The defaultValue.
     */
    @java.lang.Override
    public double getDefaultValue() {
      return defaultValue_;
    }
    public static final int UNIT_FORMAT_FIELD_NUMBER = 2;
    private int unitFormat_;
    /**
     * 
     * Parameter unit.
     * 
     *
     * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
     * @return The enum numeric value on the wire for unitFormat.
     */
    @java.lang.Override public int getUnitFormatValue() {
      return unitFormat_;
    }
    /**
     * 
     * Parameter unit.
     * 
     *
     * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
     * @return The unitFormat.
     */
    @java.lang.Override public yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat getUnitFormat() {
      @SuppressWarnings("deprecation")
      yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat result = yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat.valueOf(unitFormat_);
      return result == null ? yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat.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 (java.lang.Double.doubleToRawLongBits(defaultValue_) != 0) {
        output.writeDouble(1, defaultValue_);
      }
      if (unitFormat_ != yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat.UNIT_FORMAT_UNSPECIFIED.getNumber()) {
        output.writeEnum(2, unitFormat_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (java.lang.Double.doubleToRawLongBits(defaultValue_) != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeDoubleSize(1, defaultValue_);
      }
      if (unitFormat_ != yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat.UNIT_FORMAT_UNSPECIFIED.getNumber()) {
        size += com.google.protobuf.CodedOutputStream
          .computeEnumSize(2, unitFormat_);
      }
      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.monitoring.v3.ParametrizationOuterClass.DoubleParameter)) {
        return super.equals(obj);
      }
      yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter other = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter) obj;
      if (java.lang.Double.doubleToLongBits(getDefaultValue())
          != java.lang.Double.doubleToLongBits(
              other.getDefaultValue())) return false;
      if (unitFormat_ != other.unitFormat_) 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) + DEFAULT_VALUE_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          java.lang.Double.doubleToLongBits(getDefaultValue()));
      hash = (37 * hash) + UNIT_FORMAT_FIELD_NUMBER;
      hash = (53 * hash) + unitFormat_;
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter 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.monitoring.v3.ParametrizationOuterClass.DoubleParameter parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter 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.monitoring.v3.ParametrizationOuterClass.DoubleParameter parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter 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.monitoring.v3.ParametrizationOuterClass.DoubleParameter parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter 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.monitoring.v3.ParametrizationOuterClass.DoubleParameter parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter 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.monitoring.v3.ParametrizationOuterClass.DoubleParameter 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;
    }
    /**
     * 
     * Double parameter.
     * 
     *
     * Protobuf type {@code yandex.cloud.monitoring.v3.DoubleParameter}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.monitoring.v3.DoubleParameter)
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameterOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_DoubleParameter_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_DoubleParameter_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.Builder.class);
      }
      // Construct using yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.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();
        defaultValue_ = 0D;
        unitFormat_ = 0;
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_DoubleParameter_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter getDefaultInstanceForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter build() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter buildPartial() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter result = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter(this);
        result.defaultValue_ = defaultValue_;
        result.unitFormat_ = unitFormat_;
        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.monitoring.v3.ParametrizationOuterClass.DoubleParameter) {
          return mergeFrom((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter other) {
        if (other == yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.getDefaultInstance()) return this;
        if (other.getDefaultValue() != 0D) {
          setDefaultValue(other.getDefaultValue());
        }
        if (other.unitFormat_ != 0) {
          setUnitFormatValue(other.getUnitFormatValue());
        }
        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.monitoring.v3.ParametrizationOuterClass.DoubleParameter parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private double defaultValue_ ;
      /**
       * 
       * Default value.
       * 
       *
       * double default_value = 1;
       * @return The defaultValue.
       */
      @java.lang.Override
      public double getDefaultValue() {
        return defaultValue_;
      }
      /**
       * 
       * Default value.
       * 
       *
       * double default_value = 1;
       * @param value The defaultValue to set.
       * @return This builder for chaining.
       */
      public Builder setDefaultValue(double value) {
        
        defaultValue_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Default value.
       * 
       *
       * double default_value = 1;
       * @return This builder for chaining.
       */
      public Builder clearDefaultValue() {
        
        defaultValue_ = 0D;
        onChanged();
        return this;
      }
      private int unitFormat_ = 0;
      /**
       * 
       * Parameter unit.
       * 
       *
       * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
       * @return The enum numeric value on the wire for unitFormat.
       */
      @java.lang.Override public int getUnitFormatValue() {
        return unitFormat_;
      }
      /**
       * 
       * Parameter unit.
       * 
       *
       * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
       * @param value The enum numeric value on the wire for unitFormat to set.
       * @return This builder for chaining.
       */
      public Builder setUnitFormatValue(int value) {
        
        unitFormat_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Parameter unit.
       * 
       *
       * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
       * @return The unitFormat.
       */
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat getUnitFormat() {
        @SuppressWarnings("deprecation")
        yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat result = yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat.valueOf(unitFormat_);
        return result == null ? yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat.UNRECOGNIZED : result;
      }
      /**
       * 
       * Parameter unit.
       * 
       *
       * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
       * @param value The unitFormat to set.
       * @return This builder for chaining.
       */
      public Builder setUnitFormat(yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat value) {
        if (value == null) {
          throw new NullPointerException();
        }
        
        unitFormat_ = value.getNumber();
        onChanged();
        return this;
      }
      /**
       * 
       * Parameter unit.
       * 
       *
       * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
       * @return This builder for chaining.
       */
      public Builder clearUnitFormat() {
        
        unitFormat_ = 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.monitoring.v3.DoubleParameter)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.monitoring.v3.DoubleParameter)
    private static final yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter();
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public DoubleParameter parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new DoubleParameter(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.monitoring.v3.ParametrizationOuterClass.DoubleParameter getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface IntegerParameterOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.monitoring.v3.IntegerParameter)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * Default value.
     * 
     *
     * int64 default_value = 1;
     * @return The defaultValue.
     */
    long getDefaultValue();
    /**
     * 
     * Parameter unit.
     * 
     *
     * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
     * @return The enum numeric value on the wire for unitFormat.
     */
    int getUnitFormatValue();
    /**
     * 
     * Parameter unit.
     * 
     *
     * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
     * @return The unitFormat.
     */
    yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat getUnitFormat();
  }
  /**
   * 
   * Integer parameter.
   * 
   *
   * Protobuf type {@code yandex.cloud.monitoring.v3.IntegerParameter}
   */
  public static final class IntegerParameter extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.monitoring.v3.IntegerParameter)
      IntegerParameterOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use IntegerParameter.newBuilder() to construct.
    private IntegerParameter(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private IntegerParameter() {
      unitFormat_ = 0;
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new IntegerParameter();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private IntegerParameter(
        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 8: {
              defaultValue_ = input.readInt64();
              break;
            }
            case 16: {
              int rawValue = input.readEnum();
              unitFormat_ = 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.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_IntegerParameter_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_IntegerParameter_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.Builder.class);
    }
    public static final int DEFAULT_VALUE_FIELD_NUMBER = 1;
    private long defaultValue_;
    /**
     * 
     * Default value.
     * 
     *
     * int64 default_value = 1;
     * @return The defaultValue.
     */
    @java.lang.Override
    public long getDefaultValue() {
      return defaultValue_;
    }
    public static final int UNIT_FORMAT_FIELD_NUMBER = 2;
    private int unitFormat_;
    /**
     * 
     * Parameter unit.
     * 
     *
     * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
     * @return The enum numeric value on the wire for unitFormat.
     */
    @java.lang.Override public int getUnitFormatValue() {
      return unitFormat_;
    }
    /**
     * 
     * Parameter unit.
     * 
     *
     * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
     * @return The unitFormat.
     */
    @java.lang.Override public yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat getUnitFormat() {
      @SuppressWarnings("deprecation")
      yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat result = yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat.valueOf(unitFormat_);
      return result == null ? yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat.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 (defaultValue_ != 0L) {
        output.writeInt64(1, defaultValue_);
      }
      if (unitFormat_ != yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat.UNIT_FORMAT_UNSPECIFIED.getNumber()) {
        output.writeEnum(2, unitFormat_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      if (defaultValue_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(1, defaultValue_);
      }
      if (unitFormat_ != yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat.UNIT_FORMAT_UNSPECIFIED.getNumber()) {
        size += com.google.protobuf.CodedOutputStream
          .computeEnumSize(2, unitFormat_);
      }
      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.monitoring.v3.ParametrizationOuterClass.IntegerParameter)) {
        return super.equals(obj);
      }
      yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter other = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter) obj;
      if (getDefaultValue()
          != other.getDefaultValue()) return false;
      if (unitFormat_ != other.unitFormat_) 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) + DEFAULT_VALUE_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getDefaultValue());
      hash = (37 * hash) + UNIT_FORMAT_FIELD_NUMBER;
      hash = (53 * hash) + unitFormat_;
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter 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.monitoring.v3.ParametrizationOuterClass.IntegerParameter parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter 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.monitoring.v3.ParametrizationOuterClass.IntegerParameter parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter 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.monitoring.v3.ParametrizationOuterClass.IntegerParameter parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter 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.monitoring.v3.ParametrizationOuterClass.IntegerParameter parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter 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.monitoring.v3.ParametrizationOuterClass.IntegerParameter 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;
    }
    /**
     * 
     * Integer parameter.
     * 
     *
     * Protobuf type {@code yandex.cloud.monitoring.v3.IntegerParameter}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.monitoring.v3.IntegerParameter)
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameterOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_IntegerParameter_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_IntegerParameter_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.Builder.class);
      }
      // Construct using yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.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();
        defaultValue_ = 0L;
        unitFormat_ = 0;
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_IntegerParameter_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter getDefaultInstanceForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter build() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter buildPartial() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter result = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter(this);
        result.defaultValue_ = defaultValue_;
        result.unitFormat_ = unitFormat_;
        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.monitoring.v3.ParametrizationOuterClass.IntegerParameter) {
          return mergeFrom((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter other) {
        if (other == yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.getDefaultInstance()) return this;
        if (other.getDefaultValue() != 0L) {
          setDefaultValue(other.getDefaultValue());
        }
        if (other.unitFormat_ != 0) {
          setUnitFormatValue(other.getUnitFormatValue());
        }
        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.monitoring.v3.ParametrizationOuterClass.IntegerParameter parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private long defaultValue_ ;
      /**
       * 
       * Default value.
       * 
       *
       * int64 default_value = 1;
       * @return The defaultValue.
       */
      @java.lang.Override
      public long getDefaultValue() {
        return defaultValue_;
      }
      /**
       * 
       * Default value.
       * 
       *
       * int64 default_value = 1;
       * @param value The defaultValue to set.
       * @return This builder for chaining.
       */
      public Builder setDefaultValue(long value) {
        
        defaultValue_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Default value.
       * 
       *
       * int64 default_value = 1;
       * @return This builder for chaining.
       */
      public Builder clearDefaultValue() {
        
        defaultValue_ = 0L;
        onChanged();
        return this;
      }
      private int unitFormat_ = 0;
      /**
       * 
       * Parameter unit.
       * 
       *
       * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
       * @return The enum numeric value on the wire for unitFormat.
       */
      @java.lang.Override public int getUnitFormatValue() {
        return unitFormat_;
      }
      /**
       * 
       * Parameter unit.
       * 
       *
       * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
       * @param value The enum numeric value on the wire for unitFormat to set.
       * @return This builder for chaining.
       */
      public Builder setUnitFormatValue(int value) {
        
        unitFormat_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Parameter unit.
       * 
       *
       * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
       * @return The unitFormat.
       */
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat getUnitFormat() {
        @SuppressWarnings("deprecation")
        yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat result = yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat.valueOf(unitFormat_);
        return result == null ? yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat.UNRECOGNIZED : result;
      }
      /**
       * 
       * Parameter unit.
       * 
       *
       * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
       * @param value The unitFormat to set.
       * @return This builder for chaining.
       */
      public Builder setUnitFormat(yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.UnitFormat value) {
        if (value == null) {
          throw new NullPointerException();
        }
        
        unitFormat_ = value.getNumber();
        onChanged();
        return this;
      }
      /**
       * 
       * Parameter unit.
       * 
       *
       * .yandex.cloud.monitoring.v3.UnitFormat unit_format = 2;
       * @return This builder for chaining.
       */
      public Builder clearUnitFormat() {
        
        unitFormat_ = 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.monitoring.v3.IntegerParameter)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.monitoring.v3.IntegerParameter)
    private static final yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter();
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public IntegerParameter parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new IntegerParameter(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.monitoring.v3.ParametrizationOuterClass.IntegerParameter getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface TextValuesParameterOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.monitoring.v3.TextValuesParameter)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * Default value.
     * 
     *
     * repeated string default_values = 1;
     * @return A list containing the defaultValues.
     */
    java.util.List
        getDefaultValuesList();
    /**
     * 
     * Default value.
     * 
     *
     * repeated string default_values = 1;
     * @return The count of defaultValues.
     */
    int getDefaultValuesCount();
    /**
     * 
     * Default value.
     * 
     *
     * repeated string default_values = 1;
     * @param index The index of the element to return.
     * @return The defaultValues at the given index.
     */
    java.lang.String getDefaultValues(int index);
    /**
     * 
     * Default value.
     * 
     *
     * repeated string default_values = 1;
     * @param index The index of the value to return.
     * @return The bytes of the defaultValues at the given index.
     */
    com.google.protobuf.ByteString
        getDefaultValuesBytes(int index);
  }
  /**
   * 
   * Text multiple values parameter.
   * 
   *
   * Protobuf type {@code yandex.cloud.monitoring.v3.TextValuesParameter}
   */
  public static final class TextValuesParameter extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.monitoring.v3.TextValuesParameter)
      TextValuesParameterOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use TextValuesParameter.newBuilder() to construct.
    private TextValuesParameter(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private TextValuesParameter() {
      defaultValues_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new TextValuesParameter();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private TextValuesParameter(
        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)) {
                defaultValues_ = new com.google.protobuf.LazyStringArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              defaultValues_.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)) {
          defaultValues_ = defaultValues_.getUnmodifiableView();
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_TextValuesParameter_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_TextValuesParameter_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.Builder.class);
    }
    public static final int DEFAULT_VALUES_FIELD_NUMBER = 1;
    private com.google.protobuf.LazyStringList defaultValues_;
    /**
     * 
     * Default value.
     * 
     *
     * repeated string default_values = 1;
     * @return A list containing the defaultValues.
     */
    public com.google.protobuf.ProtocolStringList
        getDefaultValuesList() {
      return defaultValues_;
    }
    /**
     * 
     * Default value.
     * 
     *
     * repeated string default_values = 1;
     * @return The count of defaultValues.
     */
    public int getDefaultValuesCount() {
      return defaultValues_.size();
    }
    /**
     * 
     * Default value.
     * 
     *
     * repeated string default_values = 1;
     * @param index The index of the element to return.
     * @return The defaultValues at the given index.
     */
    public java.lang.String getDefaultValues(int index) {
      return defaultValues_.get(index);
    }
    /**
     * 
     * Default value.
     * 
     *
     * repeated string default_values = 1;
     * @param index The index of the value to return.
     * @return The bytes of the defaultValues at the given index.
     */
    public com.google.protobuf.ByteString
        getDefaultValuesBytes(int index) {
      return defaultValues_.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 < defaultValues_.size(); i++) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, defaultValues_.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 < defaultValues_.size(); i++) {
          dataSize += computeStringSizeNoTag(defaultValues_.getRaw(i));
        }
        size += dataSize;
        size += 1 * getDefaultValuesList().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.monitoring.v3.ParametrizationOuterClass.TextValuesParameter)) {
        return super.equals(obj);
      }
      yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter other = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter) obj;
      if (!getDefaultValuesList()
          .equals(other.getDefaultValuesList())) 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 (getDefaultValuesCount() > 0) {
        hash = (37 * hash) + DEFAULT_VALUES_FIELD_NUMBER;
        hash = (53 * hash) + getDefaultValuesList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter 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.monitoring.v3.ParametrizationOuterClass.TextValuesParameter parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter 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.monitoring.v3.ParametrizationOuterClass.TextValuesParameter parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter 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.monitoring.v3.ParametrizationOuterClass.TextValuesParameter parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter 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.monitoring.v3.ParametrizationOuterClass.TextValuesParameter parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter 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.monitoring.v3.ParametrizationOuterClass.TextValuesParameter 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;
    }
    /**
     * 
     * Text multiple values parameter.
     * 
     *
     * Protobuf type {@code yandex.cloud.monitoring.v3.TextValuesParameter}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.monitoring.v3.TextValuesParameter)
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameterOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_TextValuesParameter_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_TextValuesParameter_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.Builder.class);
      }
      // Construct using yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.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();
        defaultValues_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_TextValuesParameter_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter getDefaultInstanceForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter build() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter buildPartial() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter result = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter(this);
        int from_bitField0_ = bitField0_;
        if (((bitField0_ & 0x00000001) != 0)) {
          defaultValues_ = defaultValues_.getUnmodifiableView();
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.defaultValues_ = defaultValues_;
        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.monitoring.v3.ParametrizationOuterClass.TextValuesParameter) {
          return mergeFrom((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter other) {
        if (other == yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.getDefaultInstance()) return this;
        if (!other.defaultValues_.isEmpty()) {
          if (defaultValues_.isEmpty()) {
            defaultValues_ = other.defaultValues_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureDefaultValuesIsMutable();
            defaultValues_.addAll(other.defaultValues_);
          }
          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.monitoring.v3.ParametrizationOuterClass.TextValuesParameter parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;
      private com.google.protobuf.LazyStringList defaultValues_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      private void ensureDefaultValuesIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          defaultValues_ = new com.google.protobuf.LazyStringArrayList(defaultValues_);
          bitField0_ |= 0x00000001;
         }
      }
      /**
       * 
       * Default value.
       * 
       *
       * repeated string default_values = 1;
       * @return A list containing the defaultValues.
       */
      public com.google.protobuf.ProtocolStringList
          getDefaultValuesList() {
        return defaultValues_.getUnmodifiableView();
      }
      /**
       * 
       * Default value.
       * 
       *
       * repeated string default_values = 1;
       * @return The count of defaultValues.
       */
      public int getDefaultValuesCount() {
        return defaultValues_.size();
      }
      /**
       * 
       * Default value.
       * 
       *
       * repeated string default_values = 1;
       * @param index The index of the element to return.
       * @return The defaultValues at the given index.
       */
      public java.lang.String getDefaultValues(int index) {
        return defaultValues_.get(index);
      }
      /**
       * 
       * Default value.
       * 
       *
       * repeated string default_values = 1;
       * @param index The index of the value to return.
       * @return The bytes of the defaultValues at the given index.
       */
      public com.google.protobuf.ByteString
          getDefaultValuesBytes(int index) {
        return defaultValues_.getByteString(index);
      }
      /**
       * 
       * Default value.
       * 
       *
       * repeated string default_values = 1;
       * @param index The index to set the value at.
       * @param value The defaultValues to set.
       * @return This builder for chaining.
       */
      public Builder setDefaultValues(
          int index, java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureDefaultValuesIsMutable();
        defaultValues_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * 
       * Default value.
       * 
       *
       * repeated string default_values = 1;
       * @param value The defaultValues to add.
       * @return This builder for chaining.
       */
      public Builder addDefaultValues(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureDefaultValuesIsMutable();
        defaultValues_.add(value);
        onChanged();
        return this;
      }
      /**
       * 
       * Default value.
       * 
       *
       * repeated string default_values = 1;
       * @param values The defaultValues to add.
       * @return This builder for chaining.
       */
      public Builder addAllDefaultValues(
          java.lang.Iterable values) {
        ensureDefaultValuesIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, defaultValues_);
        onChanged();
        return this;
      }
      /**
       * 
       * Default value.
       * 
       *
       * repeated string default_values = 1;
       * @return This builder for chaining.
       */
      public Builder clearDefaultValues() {
        defaultValues_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }
      /**
       * 
       * Default value.
       * 
       *
       * repeated string default_values = 1;
       * @param value The bytes of the defaultValues to add.
       * @return This builder for chaining.
       */
      public Builder addDefaultValuesBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        ensureDefaultValuesIsMutable();
        defaultValues_.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.monitoring.v3.TextValuesParameter)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.monitoring.v3.TextValuesParameter)
    private static final yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter();
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public TextValuesParameter parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new TextValuesParameter(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.monitoring.v3.ParametrizationOuterClass.TextValuesParameter getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface ParameterOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.monitoring.v3.Parameter)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * Parameter identifier.
     * 
     *
     * string name = 1;
     * @return The name.
     */
    java.lang.String getName();
    /**
     * 
     * Parameter identifier.
     * 
     *
     * string name = 1;
     * @return The bytes for name.
     */
    com.google.protobuf.ByteString
        getNameBytes();
    /**
     * 
     * UI-visible title of the parameter.
     * 
     *
     * string title = 2;
     * @return The title.
     */
    java.lang.String getTitle();
    /**
     * 
     * UI-visible title of the parameter.
     * 
     *
     * string title = 2;
     * @return The bytes for title.
     */
    com.google.protobuf.ByteString
        getTitleBytes();
    /**
     * 
     * Label values parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.LabelValuesParameter label_values = 3;
     * @return Whether the labelValues field is set.
     */
    boolean hasLabelValues();
    /**
     * 
     * Label values parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.LabelValuesParameter label_values = 3;
     * @return The labelValues.
     */
    yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter getLabelValues();
    /**
     * 
     * Label values parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.LabelValuesParameter label_values = 3;
     */
    yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameterOrBuilder getLabelValuesOrBuilder();
    /**
     * 
     * Custom parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.CustomParameter custom = 4;
     * @return Whether the custom field is set.
     */
    boolean hasCustom();
    /**
     * 
     * Custom parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.CustomParameter custom = 4;
     * @return The custom.
     */
    yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter getCustom();
    /**
     * 
     * Custom parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.CustomParameter custom = 4;
     */
    yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameterOrBuilder getCustomOrBuilder();
    /**
     * 
     * Text parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.TextParameter text = 5;
     * @return Whether the text field is set.
     */
    boolean hasText();
    /**
     * 
     * Text parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.TextParameter text = 5;
     * @return The text.
     */
    yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter getText();
    /**
     * 
     * Text parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.TextParameter text = 5;
     */
    yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameterOrBuilder getTextOrBuilder();
    /**
     * 
     * Integer parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.IntegerParameter integer_parameter = 7;
     * @return Whether the integerParameter field is set.
     */
    boolean hasIntegerParameter();
    /**
     * 
     * Integer parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.IntegerParameter integer_parameter = 7;
     * @return The integerParameter.
     */
    yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter getIntegerParameter();
    /**
     * 
     * Integer parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.IntegerParameter integer_parameter = 7;
     */
    yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameterOrBuilder getIntegerParameterOrBuilder();
    /**
     * 
     * Double parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.DoubleParameter double_parameter = 8;
     * @return Whether the doubleParameter field is set.
     */
    boolean hasDoubleParameter();
    /**
     * 
     * Double parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.DoubleParameter double_parameter = 8;
     * @return The doubleParameter.
     */
    yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter getDoubleParameter();
    /**
     * 
     * Double parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.DoubleParameter double_parameter = 8;
     */
    yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameterOrBuilder getDoubleParameterOrBuilder();
    /**
     * 
     * Integer parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.TextValuesParameter text_values = 9;
     * @return Whether the textValues field is set.
     */
    boolean hasTextValues();
    /**
     * 
     * Integer parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.TextValuesParameter text_values = 9;
     * @return The textValues.
     */
    yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter getTextValues();
    /**
     * 
     * Integer parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.TextValuesParameter text_values = 9;
     */
    yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameterOrBuilder getTextValuesOrBuilder();
    /**
     * 
     * UI-visibility.
     * 
     *
     * bool hidden = 6;
     * @return The hidden.
     */
    boolean getHidden();
    /**
     * 
     * Parameter description.
     * 
     *
     * string description = 10;
     * @return The description.
     */
    java.lang.String getDescription();
    /**
     * 
     * Parameter description.
     * 
     *
     * string description = 10;
     * @return The bytes for description.
     */
    com.google.protobuf.ByteString
        getDescriptionBytes();
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.DataCase getDataCase();
  }
  /**
   * 
   * Parameter.
   * 
   *
   * Protobuf type {@code yandex.cloud.monitoring.v3.Parameter}
   */
  public static final class Parameter extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.monitoring.v3.Parameter)
      ParameterOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Parameter.newBuilder() to construct.
    private Parameter(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private Parameter() {
      name_ = "";
      title_ = "";
      description_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new Parameter();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Parameter(
        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();
              name_ = s;
              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();
              title_ = s;
              break;
            }
            case 26: {
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.Builder subBuilder = null;
              if (dataCase_ == 3) {
                subBuilder = ((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter) data_).toBuilder();
              }
              data_ =
                  input.readMessage(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter) data_);
                data_ = subBuilder.buildPartial();
              }
              dataCase_ = 3;
              break;
            }
            case 34: {
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.Builder subBuilder = null;
              if (dataCase_ == 4) {
                subBuilder = ((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter) data_).toBuilder();
              }
              data_ =
                  input.readMessage(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter) data_);
                data_ = subBuilder.buildPartial();
              }
              dataCase_ = 4;
              break;
            }
            case 42: {
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.Builder subBuilder = null;
              if (dataCase_ == 5) {
                subBuilder = ((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter) data_).toBuilder();
              }
              data_ =
                  input.readMessage(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter) data_);
                data_ = subBuilder.buildPartial();
              }
              dataCase_ = 5;
              break;
            }
            case 48: {
              hidden_ = input.readBool();
              break;
            }
            case 58: {
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.Builder subBuilder = null;
              if (dataCase_ == 7) {
                subBuilder = ((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter) data_).toBuilder();
              }
              data_ =
                  input.readMessage(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter) data_);
                data_ = subBuilder.buildPartial();
              }
              dataCase_ = 7;
              break;
            }
            case 66: {
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.Builder subBuilder = null;
              if (dataCase_ == 8) {
                subBuilder = ((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter) data_).toBuilder();
              }
              data_ =
                  input.readMessage(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter) data_);
                data_ = subBuilder.buildPartial();
              }
              dataCase_ = 8;
              break;
            }
            case 74: {
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.Builder subBuilder = null;
              if (dataCase_ == 9) {
                subBuilder = ((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter) data_).toBuilder();
              }
              data_ =
                  input.readMessage(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter) data_);
                data_ = subBuilder.buildPartial();
              }
              dataCase_ = 9;
              break;
            }
            case 82: {
              java.lang.String s = input.readStringRequireUtf8();
              description_ = 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.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_Parameter_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_Parameter_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.Builder.class);
    }
    private int dataCase_ = 0;
    private java.lang.Object data_;
    public enum DataCase
        implements com.google.protobuf.Internal.EnumLite,
            com.google.protobuf.AbstractMessage.InternalOneOfEnum {
      LABEL_VALUES(3),
      CUSTOM(4),
      TEXT(5),
      INTEGER_PARAMETER(7),
      DOUBLE_PARAMETER(8),
      TEXT_VALUES(9),
      DATA_NOT_SET(0);
      private final int value;
      private DataCase(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 DataCase valueOf(int value) {
        return forNumber(value);
      }
      public static DataCase forNumber(int value) {
        switch (value) {
          case 3: return LABEL_VALUES;
          case 4: return CUSTOM;
          case 5: return TEXT;
          case 7: return INTEGER_PARAMETER;
          case 8: return DOUBLE_PARAMETER;
          case 9: return TEXT_VALUES;
          case 0: return DATA_NOT_SET;
          default: return null;
        }
      }
      public int getNumber() {
        return this.value;
      }
    };
    public DataCase
    getDataCase() {
      return DataCase.forNumber(
          dataCase_);
    }
    public static final int NAME_FIELD_NUMBER = 1;
    private volatile java.lang.Object name_;
    /**
     * 
     * Parameter identifier.
     * 
     *
     * string name = 1;
     * @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;
      }
    }
    /**
     * 
     * Parameter identifier.
     * 
     *
     * string name = 1;
     * @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 TITLE_FIELD_NUMBER = 2;
    private volatile java.lang.Object title_;
    /**
     * 
     * UI-visible title of the parameter.
     * 
     *
     * string title = 2;
     * @return The title.
     */
    @java.lang.Override
    public java.lang.String getTitle() {
      java.lang.Object ref = title_;
      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();
        title_ = s;
        return s;
      }
    }
    /**
     * 
     * UI-visible title of the parameter.
     * 
     *
     * string title = 2;
     * @return The bytes for title.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getTitleBytes() {
      java.lang.Object ref = title_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        title_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    public static final int LABEL_VALUES_FIELD_NUMBER = 3;
    /**
     * 
     * Label values parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.LabelValuesParameter label_values = 3;
     * @return Whether the labelValues field is set.
     */
    @java.lang.Override
    public boolean hasLabelValues() {
      return dataCase_ == 3;
    }
    /**
     * 
     * Label values parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.LabelValuesParameter label_values = 3;
     * @return The labelValues.
     */
    @java.lang.Override
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter getLabelValues() {
      if (dataCase_ == 3) {
         return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter) data_;
      }
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.getDefaultInstance();
    }
    /**
     * 
     * Label values parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.LabelValuesParameter label_values = 3;
     */
    @java.lang.Override
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameterOrBuilder getLabelValuesOrBuilder() {
      if (dataCase_ == 3) {
         return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter) data_;
      }
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.getDefaultInstance();
    }
    public static final int CUSTOM_FIELD_NUMBER = 4;
    /**
     * 
     * Custom parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.CustomParameter custom = 4;
     * @return Whether the custom field is set.
     */
    @java.lang.Override
    public boolean hasCustom() {
      return dataCase_ == 4;
    }
    /**
     * 
     * Custom parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.CustomParameter custom = 4;
     * @return The custom.
     */
    @java.lang.Override
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter getCustom() {
      if (dataCase_ == 4) {
         return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter) data_;
      }
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.getDefaultInstance();
    }
    /**
     * 
     * Custom parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.CustomParameter custom = 4;
     */
    @java.lang.Override
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameterOrBuilder getCustomOrBuilder() {
      if (dataCase_ == 4) {
         return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter) data_;
      }
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.getDefaultInstance();
    }
    public static final int TEXT_FIELD_NUMBER = 5;
    /**
     * 
     * Text parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.TextParameter text = 5;
     * @return Whether the text field is set.
     */
    @java.lang.Override
    public boolean hasText() {
      return dataCase_ == 5;
    }
    /**
     * 
     * Text parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.TextParameter text = 5;
     * @return The text.
     */
    @java.lang.Override
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter getText() {
      if (dataCase_ == 5) {
         return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter) data_;
      }
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.getDefaultInstance();
    }
    /**
     * 
     * Text parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.TextParameter text = 5;
     */
    @java.lang.Override
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameterOrBuilder getTextOrBuilder() {
      if (dataCase_ == 5) {
         return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter) data_;
      }
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.getDefaultInstance();
    }
    public static final int INTEGER_PARAMETER_FIELD_NUMBER = 7;
    /**
     * 
     * Integer parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.IntegerParameter integer_parameter = 7;
     * @return Whether the integerParameter field is set.
     */
    @java.lang.Override
    public boolean hasIntegerParameter() {
      return dataCase_ == 7;
    }
    /**
     * 
     * Integer parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.IntegerParameter integer_parameter = 7;
     * @return The integerParameter.
     */
    @java.lang.Override
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter getIntegerParameter() {
      if (dataCase_ == 7) {
         return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter) data_;
      }
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.getDefaultInstance();
    }
    /**
     * 
     * Integer parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.IntegerParameter integer_parameter = 7;
     */
    @java.lang.Override
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameterOrBuilder getIntegerParameterOrBuilder() {
      if (dataCase_ == 7) {
         return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter) data_;
      }
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.getDefaultInstance();
    }
    public static final int DOUBLE_PARAMETER_FIELD_NUMBER = 8;
    /**
     * 
     * Double parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.DoubleParameter double_parameter = 8;
     * @return Whether the doubleParameter field is set.
     */
    @java.lang.Override
    public boolean hasDoubleParameter() {
      return dataCase_ == 8;
    }
    /**
     * 
     * Double parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.DoubleParameter double_parameter = 8;
     * @return The doubleParameter.
     */
    @java.lang.Override
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter getDoubleParameter() {
      if (dataCase_ == 8) {
         return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter) data_;
      }
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.getDefaultInstance();
    }
    /**
     * 
     * Double parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.DoubleParameter double_parameter = 8;
     */
    @java.lang.Override
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameterOrBuilder getDoubleParameterOrBuilder() {
      if (dataCase_ == 8) {
         return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter) data_;
      }
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.getDefaultInstance();
    }
    public static final int TEXT_VALUES_FIELD_NUMBER = 9;
    /**
     * 
     * Integer parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.TextValuesParameter text_values = 9;
     * @return Whether the textValues field is set.
     */
    @java.lang.Override
    public boolean hasTextValues() {
      return dataCase_ == 9;
    }
    /**
     * 
     * Integer parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.TextValuesParameter text_values = 9;
     * @return The textValues.
     */
    @java.lang.Override
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter getTextValues() {
      if (dataCase_ == 9) {
         return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter) data_;
      }
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.getDefaultInstance();
    }
    /**
     * 
     * Integer parameter.
     * 
     *
     * .yandex.cloud.monitoring.v3.TextValuesParameter text_values = 9;
     */
    @java.lang.Override
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameterOrBuilder getTextValuesOrBuilder() {
      if (dataCase_ == 9) {
         return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter) data_;
      }
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.getDefaultInstance();
    }
    public static final int HIDDEN_FIELD_NUMBER = 6;
    private boolean hidden_;
    /**
     * 
     * UI-visibility.
     * 
     *
     * bool hidden = 6;
     * @return The hidden.
     */
    @java.lang.Override
    public boolean getHidden() {
      return hidden_;
    }
    public static final int DESCRIPTION_FIELD_NUMBER = 10;
    private volatile java.lang.Object description_;
    /**
     * 
     * Parameter description.
     * 
     *
     * string description = 10;
     * @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;
      }
    }
    /**
     * 
     * Parameter description.
     * 
     *
     * string description = 10;
     * @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;
      }
    }
    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(name_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(title_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, title_);
      }
      if (dataCase_ == 3) {
        output.writeMessage(3, (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter) data_);
      }
      if (dataCase_ == 4) {
        output.writeMessage(4, (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter) data_);
      }
      if (dataCase_ == 5) {
        output.writeMessage(5, (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter) data_);
      }
      if (hidden_ != false) {
        output.writeBool(6, hidden_);
      }
      if (dataCase_ == 7) {
        output.writeMessage(7, (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter) data_);
      }
      if (dataCase_ == 8) {
        output.writeMessage(8, (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter) data_);
      }
      if (dataCase_ == 9) {
        output.writeMessage(9, (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter) data_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 10, description_);
      }
      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(name_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(title_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, title_);
      }
      if (dataCase_ == 3) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter) data_);
      }
      if (dataCase_ == 4) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter) data_);
      }
      if (dataCase_ == 5) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(5, (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter) data_);
      }
      if (hidden_ != false) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(6, hidden_);
      }
      if (dataCase_ == 7) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(7, (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter) data_);
      }
      if (dataCase_ == 8) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(8, (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter) data_);
      }
      if (dataCase_ == 9) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(9, (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter) data_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, description_);
      }
      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.monitoring.v3.ParametrizationOuterClass.Parameter)) {
        return super.equals(obj);
      }
      yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter other = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter) obj;
      if (!getName()
          .equals(other.getName())) return false;
      if (!getTitle()
          .equals(other.getTitle())) return false;
      if (getHidden()
          != other.getHidden()) return false;
      if (!getDescription()
          .equals(other.getDescription())) return false;
      if (!getDataCase().equals(other.getDataCase())) return false;
      switch (dataCase_) {
        case 3:
          if (!getLabelValues()
              .equals(other.getLabelValues())) return false;
          break;
        case 4:
          if (!getCustom()
              .equals(other.getCustom())) return false;
          break;
        case 5:
          if (!getText()
              .equals(other.getText())) return false;
          break;
        case 7:
          if (!getIntegerParameter()
              .equals(other.getIntegerParameter())) return false;
          break;
        case 8:
          if (!getDoubleParameter()
              .equals(other.getDoubleParameter())) return false;
          break;
        case 9:
          if (!getTextValues()
              .equals(other.getTextValues())) 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) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
      hash = (37 * hash) + TITLE_FIELD_NUMBER;
      hash = (53 * hash) + getTitle().hashCode();
      hash = (37 * hash) + HIDDEN_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
          getHidden());
      hash = (37 * hash) + DESCRIPTION_FIELD_NUMBER;
      hash = (53 * hash) + getDescription().hashCode();
      switch (dataCase_) {
        case 3:
          hash = (37 * hash) + LABEL_VALUES_FIELD_NUMBER;
          hash = (53 * hash) + getLabelValues().hashCode();
          break;
        case 4:
          hash = (37 * hash) + CUSTOM_FIELD_NUMBER;
          hash = (53 * hash) + getCustom().hashCode();
          break;
        case 5:
          hash = (37 * hash) + TEXT_FIELD_NUMBER;
          hash = (53 * hash) + getText().hashCode();
          break;
        case 7:
          hash = (37 * hash) + INTEGER_PARAMETER_FIELD_NUMBER;
          hash = (53 * hash) + getIntegerParameter().hashCode();
          break;
        case 8:
          hash = (37 * hash) + DOUBLE_PARAMETER_FIELD_NUMBER;
          hash = (53 * hash) + getDoubleParameter().hashCode();
          break;
        case 9:
          hash = (37 * hash) + TEXT_VALUES_FIELD_NUMBER;
          hash = (53 * hash) + getTextValues().hashCode();
          break;
        case 0:
        default:
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter 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.monitoring.v3.ParametrizationOuterClass.Parameter parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter 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.monitoring.v3.ParametrizationOuterClass.Parameter parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter 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.monitoring.v3.ParametrizationOuterClass.Parameter parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter 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.monitoring.v3.ParametrizationOuterClass.Parameter parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter 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.monitoring.v3.ParametrizationOuterClass.Parameter 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;
    }
    /**
     * 
     * Parameter.
     * 
     *
     * Protobuf type {@code yandex.cloud.monitoring.v3.Parameter}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.monitoring.v3.Parameter)
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.ParameterOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_Parameter_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_Parameter_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.Builder.class);
      }
      // Construct using yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.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();
        name_ = "";
        title_ = "";
        hidden_ = false;
        description_ = "";
        dataCase_ = 0;
        data_ = null;
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_Parameter_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter getDefaultInstanceForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter build() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter buildPartial() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter result = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter(this);
        result.name_ = name_;
        result.title_ = title_;
        if (dataCase_ == 3) {
          if (labelValuesBuilder_ == null) {
            result.data_ = data_;
          } else {
            result.data_ = labelValuesBuilder_.build();
          }
        }
        if (dataCase_ == 4) {
          if (customBuilder_ == null) {
            result.data_ = data_;
          } else {
            result.data_ = customBuilder_.build();
          }
        }
        if (dataCase_ == 5) {
          if (textBuilder_ == null) {
            result.data_ = data_;
          } else {
            result.data_ = textBuilder_.build();
          }
        }
        if (dataCase_ == 7) {
          if (integerParameterBuilder_ == null) {
            result.data_ = data_;
          } else {
            result.data_ = integerParameterBuilder_.build();
          }
        }
        if (dataCase_ == 8) {
          if (doubleParameterBuilder_ == null) {
            result.data_ = data_;
          } else {
            result.data_ = doubleParameterBuilder_.build();
          }
        }
        if (dataCase_ == 9) {
          if (textValuesBuilder_ == null) {
            result.data_ = data_;
          } else {
            result.data_ = textValuesBuilder_.build();
          }
        }
        result.hidden_ = hidden_;
        result.description_ = description_;
        result.dataCase_ = dataCase_;
        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.monitoring.v3.ParametrizationOuterClass.Parameter) {
          return mergeFrom((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter other) {
        if (other == yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.getDefaultInstance()) return this;
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (!other.getTitle().isEmpty()) {
          title_ = other.title_;
          onChanged();
        }
        if (other.getHidden() != false) {
          setHidden(other.getHidden());
        }
        if (!other.getDescription().isEmpty()) {
          description_ = other.description_;
          onChanged();
        }
        switch (other.getDataCase()) {
          case LABEL_VALUES: {
            mergeLabelValues(other.getLabelValues());
            break;
          }
          case CUSTOM: {
            mergeCustom(other.getCustom());
            break;
          }
          case TEXT: {
            mergeText(other.getText());
            break;
          }
          case INTEGER_PARAMETER: {
            mergeIntegerParameter(other.getIntegerParameter());
            break;
          }
          case DOUBLE_PARAMETER: {
            mergeDoubleParameter(other.getDoubleParameter());
            break;
          }
          case TEXT_VALUES: {
            mergeTextValues(other.getTextValues());
            break;
          }
          case DATA_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.monitoring.v3.ParametrizationOuterClass.Parameter parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int dataCase_ = 0;
      private java.lang.Object data_;
      public DataCase
          getDataCase() {
        return DataCase.forNumber(
            dataCase_);
      }
      public Builder clearData() {
        dataCase_ = 0;
        data_ = null;
        onChanged();
        return this;
      }
      private java.lang.Object name_ = "";
      /**
       * 
       * Parameter identifier.
       * 
       *
       * string name = 1;
       * @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;
        }
      }
      /**
       * 
       * Parameter identifier.
       * 
       *
       * string name = 1;
       * @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;
        }
      }
      /**
       * 
       * Parameter identifier.
       * 
       *
       * string name = 1;
       * @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;
      }
      /**
       * 
       * Parameter identifier.
       * 
       *
       * string name = 1;
       * @return This builder for chaining.
       */
      public Builder clearName() {
        
        name_ = getDefaultInstance().getName();
        onChanged();
        return this;
      }
      /**
       * 
       * Parameter identifier.
       * 
       *
       * string name = 1;
       * @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 title_ = "";
      /**
       * 
       * UI-visible title of the parameter.
       * 
       *
       * string title = 2;
       * @return The title.
       */
      public java.lang.String getTitle() {
        java.lang.Object ref = title_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          title_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * UI-visible title of the parameter.
       * 
       *
       * string title = 2;
       * @return The bytes for title.
       */
      public com.google.protobuf.ByteString
          getTitleBytes() {
        java.lang.Object ref = title_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          title_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * UI-visible title of the parameter.
       * 
       *
       * string title = 2;
       * @param value The title to set.
       * @return This builder for chaining.
       */
      public Builder setTitle(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        title_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * UI-visible title of the parameter.
       * 
       *
       * string title = 2;
       * @return This builder for chaining.
       */
      public Builder clearTitle() {
        
        title_ = getDefaultInstance().getTitle();
        onChanged();
        return this;
      }
      /**
       * 
       * UI-visible title of the parameter.
       * 
       *
       * string title = 2;
       * @param value The bytes for title to set.
       * @return This builder for chaining.
       */
      public Builder setTitleBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        title_ = value;
        onChanged();
        return this;
      }
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameterOrBuilder> labelValuesBuilder_;
      /**
       * 
       * Label values parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.LabelValuesParameter label_values = 3;
       * @return Whether the labelValues field is set.
       */
      @java.lang.Override
      public boolean hasLabelValues() {
        return dataCase_ == 3;
      }
      /**
       * 
       * Label values parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.LabelValuesParameter label_values = 3;
       * @return The labelValues.
       */
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter getLabelValues() {
        if (labelValuesBuilder_ == null) {
          if (dataCase_ == 3) {
            return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter) data_;
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.getDefaultInstance();
        } else {
          if (dataCase_ == 3) {
            return labelValuesBuilder_.getMessage();
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.getDefaultInstance();
        }
      }
      /**
       * 
       * Label values parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.LabelValuesParameter label_values = 3;
       */
      public Builder setLabelValues(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter value) {
        if (labelValuesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          data_ = value;
          onChanged();
        } else {
          labelValuesBuilder_.setMessage(value);
        }
        dataCase_ = 3;
        return this;
      }
      /**
       * 
       * Label values parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.LabelValuesParameter label_values = 3;
       */
      public Builder setLabelValues(
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.Builder builderForValue) {
        if (labelValuesBuilder_ == null) {
          data_ = builderForValue.build();
          onChanged();
        } else {
          labelValuesBuilder_.setMessage(builderForValue.build());
        }
        dataCase_ = 3;
        return this;
      }
      /**
       * 
       * Label values parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.LabelValuesParameter label_values = 3;
       */
      public Builder mergeLabelValues(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter value) {
        if (labelValuesBuilder_ == null) {
          if (dataCase_ == 3 &&
              data_ != yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.getDefaultInstance()) {
            data_ = yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.newBuilder((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter) data_)
                .mergeFrom(value).buildPartial();
          } else {
            data_ = value;
          }
          onChanged();
        } else {
          if (dataCase_ == 3) {
            labelValuesBuilder_.mergeFrom(value);
          }
          labelValuesBuilder_.setMessage(value);
        }
        dataCase_ = 3;
        return this;
      }
      /**
       * 
       * Label values parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.LabelValuesParameter label_values = 3;
       */
      public Builder clearLabelValues() {
        if (labelValuesBuilder_ == null) {
          if (dataCase_ == 3) {
            dataCase_ = 0;
            data_ = null;
            onChanged();
          }
        } else {
          if (dataCase_ == 3) {
            dataCase_ = 0;
            data_ = null;
          }
          labelValuesBuilder_.clear();
        }
        return this;
      }
      /**
       * 
       * Label values parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.LabelValuesParameter label_values = 3;
       */
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.Builder getLabelValuesBuilder() {
        return getLabelValuesFieldBuilder().getBuilder();
      }
      /**
       * 
       * Label values parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.LabelValuesParameter label_values = 3;
       */
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameterOrBuilder getLabelValuesOrBuilder() {
        if ((dataCase_ == 3) && (labelValuesBuilder_ != null)) {
          return labelValuesBuilder_.getMessageOrBuilder();
        } else {
          if (dataCase_ == 3) {
            return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter) data_;
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.getDefaultInstance();
        }
      }
      /**
       * 
       * Label values parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.LabelValuesParameter label_values = 3;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameterOrBuilder> 
          getLabelValuesFieldBuilder() {
        if (labelValuesBuilder_ == null) {
          if (!(dataCase_ == 3)) {
            data_ = yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.getDefaultInstance();
          }
          labelValuesBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameterOrBuilder>(
                  (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.LabelValuesParameter) data_,
                  getParentForChildren(),
                  isClean());
          data_ = null;
        }
        dataCase_ = 3;
        onChanged();;
        return labelValuesBuilder_;
      }
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameterOrBuilder> customBuilder_;
      /**
       * 
       * Custom parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.CustomParameter custom = 4;
       * @return Whether the custom field is set.
       */
      @java.lang.Override
      public boolean hasCustom() {
        return dataCase_ == 4;
      }
      /**
       * 
       * Custom parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.CustomParameter custom = 4;
       * @return The custom.
       */
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter getCustom() {
        if (customBuilder_ == null) {
          if (dataCase_ == 4) {
            return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter) data_;
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.getDefaultInstance();
        } else {
          if (dataCase_ == 4) {
            return customBuilder_.getMessage();
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.getDefaultInstance();
        }
      }
      /**
       * 
       * Custom parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.CustomParameter custom = 4;
       */
      public Builder setCustom(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter value) {
        if (customBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          data_ = value;
          onChanged();
        } else {
          customBuilder_.setMessage(value);
        }
        dataCase_ = 4;
        return this;
      }
      /**
       * 
       * Custom parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.CustomParameter custom = 4;
       */
      public Builder setCustom(
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.Builder builderForValue) {
        if (customBuilder_ == null) {
          data_ = builderForValue.build();
          onChanged();
        } else {
          customBuilder_.setMessage(builderForValue.build());
        }
        dataCase_ = 4;
        return this;
      }
      /**
       * 
       * Custom parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.CustomParameter custom = 4;
       */
      public Builder mergeCustom(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter value) {
        if (customBuilder_ == null) {
          if (dataCase_ == 4 &&
              data_ != yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.getDefaultInstance()) {
            data_ = yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.newBuilder((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter) data_)
                .mergeFrom(value).buildPartial();
          } else {
            data_ = value;
          }
          onChanged();
        } else {
          if (dataCase_ == 4) {
            customBuilder_.mergeFrom(value);
          }
          customBuilder_.setMessage(value);
        }
        dataCase_ = 4;
        return this;
      }
      /**
       * 
       * Custom parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.CustomParameter custom = 4;
       */
      public Builder clearCustom() {
        if (customBuilder_ == null) {
          if (dataCase_ == 4) {
            dataCase_ = 0;
            data_ = null;
            onChanged();
          }
        } else {
          if (dataCase_ == 4) {
            dataCase_ = 0;
            data_ = null;
          }
          customBuilder_.clear();
        }
        return this;
      }
      /**
       * 
       * Custom parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.CustomParameter custom = 4;
       */
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.Builder getCustomBuilder() {
        return getCustomFieldBuilder().getBuilder();
      }
      /**
       * 
       * Custom parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.CustomParameter custom = 4;
       */
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameterOrBuilder getCustomOrBuilder() {
        if ((dataCase_ == 4) && (customBuilder_ != null)) {
          return customBuilder_.getMessageOrBuilder();
        } else {
          if (dataCase_ == 4) {
            return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter) data_;
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.getDefaultInstance();
        }
      }
      /**
       * 
       * Custom parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.CustomParameter custom = 4;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameterOrBuilder> 
          getCustomFieldBuilder() {
        if (customBuilder_ == null) {
          if (!(dataCase_ == 4)) {
            data_ = yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.getDefaultInstance();
          }
          customBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameterOrBuilder>(
                  (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.CustomParameter) data_,
                  getParentForChildren(),
                  isClean());
          data_ = null;
        }
        dataCase_ = 4;
        onChanged();;
        return customBuilder_;
      }
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameterOrBuilder> textBuilder_;
      /**
       * 
       * Text parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextParameter text = 5;
       * @return Whether the text field is set.
       */
      @java.lang.Override
      public boolean hasText() {
        return dataCase_ == 5;
      }
      /**
       * 
       * Text parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextParameter text = 5;
       * @return The text.
       */
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter getText() {
        if (textBuilder_ == null) {
          if (dataCase_ == 5) {
            return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter) data_;
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.getDefaultInstance();
        } else {
          if (dataCase_ == 5) {
            return textBuilder_.getMessage();
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.getDefaultInstance();
        }
      }
      /**
       * 
       * Text parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextParameter text = 5;
       */
      public Builder setText(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter value) {
        if (textBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          data_ = value;
          onChanged();
        } else {
          textBuilder_.setMessage(value);
        }
        dataCase_ = 5;
        return this;
      }
      /**
       * 
       * Text parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextParameter text = 5;
       */
      public Builder setText(
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.Builder builderForValue) {
        if (textBuilder_ == null) {
          data_ = builderForValue.build();
          onChanged();
        } else {
          textBuilder_.setMessage(builderForValue.build());
        }
        dataCase_ = 5;
        return this;
      }
      /**
       * 
       * Text parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextParameter text = 5;
       */
      public Builder mergeText(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter value) {
        if (textBuilder_ == null) {
          if (dataCase_ == 5 &&
              data_ != yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.getDefaultInstance()) {
            data_ = yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.newBuilder((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter) data_)
                .mergeFrom(value).buildPartial();
          } else {
            data_ = value;
          }
          onChanged();
        } else {
          if (dataCase_ == 5) {
            textBuilder_.mergeFrom(value);
          }
          textBuilder_.setMessage(value);
        }
        dataCase_ = 5;
        return this;
      }
      /**
       * 
       * Text parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextParameter text = 5;
       */
      public Builder clearText() {
        if (textBuilder_ == null) {
          if (dataCase_ == 5) {
            dataCase_ = 0;
            data_ = null;
            onChanged();
          }
        } else {
          if (dataCase_ == 5) {
            dataCase_ = 0;
            data_ = null;
          }
          textBuilder_.clear();
        }
        return this;
      }
      /**
       * 
       * Text parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextParameter text = 5;
       */
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.Builder getTextBuilder() {
        return getTextFieldBuilder().getBuilder();
      }
      /**
       * 
       * Text parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextParameter text = 5;
       */
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameterOrBuilder getTextOrBuilder() {
        if ((dataCase_ == 5) && (textBuilder_ != null)) {
          return textBuilder_.getMessageOrBuilder();
        } else {
          if (dataCase_ == 5) {
            return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter) data_;
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.getDefaultInstance();
        }
      }
      /**
       * 
       * Text parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextParameter text = 5;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameterOrBuilder> 
          getTextFieldBuilder() {
        if (textBuilder_ == null) {
          if (!(dataCase_ == 5)) {
            data_ = yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.getDefaultInstance();
          }
          textBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameterOrBuilder>(
                  (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextParameter) data_,
                  getParentForChildren(),
                  isClean());
          data_ = null;
        }
        dataCase_ = 5;
        onChanged();;
        return textBuilder_;
      }
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameterOrBuilder> integerParameterBuilder_;
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.IntegerParameter integer_parameter = 7;
       * @return Whether the integerParameter field is set.
       */
      @java.lang.Override
      public boolean hasIntegerParameter() {
        return dataCase_ == 7;
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.IntegerParameter integer_parameter = 7;
       * @return The integerParameter.
       */
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter getIntegerParameter() {
        if (integerParameterBuilder_ == null) {
          if (dataCase_ == 7) {
            return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter) data_;
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.getDefaultInstance();
        } else {
          if (dataCase_ == 7) {
            return integerParameterBuilder_.getMessage();
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.getDefaultInstance();
        }
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.IntegerParameter integer_parameter = 7;
       */
      public Builder setIntegerParameter(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter value) {
        if (integerParameterBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          data_ = value;
          onChanged();
        } else {
          integerParameterBuilder_.setMessage(value);
        }
        dataCase_ = 7;
        return this;
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.IntegerParameter integer_parameter = 7;
       */
      public Builder setIntegerParameter(
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.Builder builderForValue) {
        if (integerParameterBuilder_ == null) {
          data_ = builderForValue.build();
          onChanged();
        } else {
          integerParameterBuilder_.setMessage(builderForValue.build());
        }
        dataCase_ = 7;
        return this;
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.IntegerParameter integer_parameter = 7;
       */
      public Builder mergeIntegerParameter(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter value) {
        if (integerParameterBuilder_ == null) {
          if (dataCase_ == 7 &&
              data_ != yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.getDefaultInstance()) {
            data_ = yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.newBuilder((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter) data_)
                .mergeFrom(value).buildPartial();
          } else {
            data_ = value;
          }
          onChanged();
        } else {
          if (dataCase_ == 7) {
            integerParameterBuilder_.mergeFrom(value);
          }
          integerParameterBuilder_.setMessage(value);
        }
        dataCase_ = 7;
        return this;
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.IntegerParameter integer_parameter = 7;
       */
      public Builder clearIntegerParameter() {
        if (integerParameterBuilder_ == null) {
          if (dataCase_ == 7) {
            dataCase_ = 0;
            data_ = null;
            onChanged();
          }
        } else {
          if (dataCase_ == 7) {
            dataCase_ = 0;
            data_ = null;
          }
          integerParameterBuilder_.clear();
        }
        return this;
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.IntegerParameter integer_parameter = 7;
       */
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.Builder getIntegerParameterBuilder() {
        return getIntegerParameterFieldBuilder().getBuilder();
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.IntegerParameter integer_parameter = 7;
       */
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameterOrBuilder getIntegerParameterOrBuilder() {
        if ((dataCase_ == 7) && (integerParameterBuilder_ != null)) {
          return integerParameterBuilder_.getMessageOrBuilder();
        } else {
          if (dataCase_ == 7) {
            return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter) data_;
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.getDefaultInstance();
        }
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.IntegerParameter integer_parameter = 7;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameterOrBuilder> 
          getIntegerParameterFieldBuilder() {
        if (integerParameterBuilder_ == null) {
          if (!(dataCase_ == 7)) {
            data_ = yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.getDefaultInstance();
          }
          integerParameterBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameterOrBuilder>(
                  (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.IntegerParameter) data_,
                  getParentForChildren(),
                  isClean());
          data_ = null;
        }
        dataCase_ = 7;
        onChanged();;
        return integerParameterBuilder_;
      }
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameterOrBuilder> doubleParameterBuilder_;
      /**
       * 
       * Double parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.DoubleParameter double_parameter = 8;
       * @return Whether the doubleParameter field is set.
       */
      @java.lang.Override
      public boolean hasDoubleParameter() {
        return dataCase_ == 8;
      }
      /**
       * 
       * Double parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.DoubleParameter double_parameter = 8;
       * @return The doubleParameter.
       */
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter getDoubleParameter() {
        if (doubleParameterBuilder_ == null) {
          if (dataCase_ == 8) {
            return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter) data_;
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.getDefaultInstance();
        } else {
          if (dataCase_ == 8) {
            return doubleParameterBuilder_.getMessage();
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.getDefaultInstance();
        }
      }
      /**
       * 
       * Double parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.DoubleParameter double_parameter = 8;
       */
      public Builder setDoubleParameter(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter value) {
        if (doubleParameterBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          data_ = value;
          onChanged();
        } else {
          doubleParameterBuilder_.setMessage(value);
        }
        dataCase_ = 8;
        return this;
      }
      /**
       * 
       * Double parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.DoubleParameter double_parameter = 8;
       */
      public Builder setDoubleParameter(
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.Builder builderForValue) {
        if (doubleParameterBuilder_ == null) {
          data_ = builderForValue.build();
          onChanged();
        } else {
          doubleParameterBuilder_.setMessage(builderForValue.build());
        }
        dataCase_ = 8;
        return this;
      }
      /**
       * 
       * Double parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.DoubleParameter double_parameter = 8;
       */
      public Builder mergeDoubleParameter(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter value) {
        if (doubleParameterBuilder_ == null) {
          if (dataCase_ == 8 &&
              data_ != yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.getDefaultInstance()) {
            data_ = yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.newBuilder((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter) data_)
                .mergeFrom(value).buildPartial();
          } else {
            data_ = value;
          }
          onChanged();
        } else {
          if (dataCase_ == 8) {
            doubleParameterBuilder_.mergeFrom(value);
          }
          doubleParameterBuilder_.setMessage(value);
        }
        dataCase_ = 8;
        return this;
      }
      /**
       * 
       * Double parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.DoubleParameter double_parameter = 8;
       */
      public Builder clearDoubleParameter() {
        if (doubleParameterBuilder_ == null) {
          if (dataCase_ == 8) {
            dataCase_ = 0;
            data_ = null;
            onChanged();
          }
        } else {
          if (dataCase_ == 8) {
            dataCase_ = 0;
            data_ = null;
          }
          doubleParameterBuilder_.clear();
        }
        return this;
      }
      /**
       * 
       * Double parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.DoubleParameter double_parameter = 8;
       */
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.Builder getDoubleParameterBuilder() {
        return getDoubleParameterFieldBuilder().getBuilder();
      }
      /**
       * 
       * Double parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.DoubleParameter double_parameter = 8;
       */
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameterOrBuilder getDoubleParameterOrBuilder() {
        if ((dataCase_ == 8) && (doubleParameterBuilder_ != null)) {
          return doubleParameterBuilder_.getMessageOrBuilder();
        } else {
          if (dataCase_ == 8) {
            return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter) data_;
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.getDefaultInstance();
        }
      }
      /**
       * 
       * Double parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.DoubleParameter double_parameter = 8;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameterOrBuilder> 
          getDoubleParameterFieldBuilder() {
        if (doubleParameterBuilder_ == null) {
          if (!(dataCase_ == 8)) {
            data_ = yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.getDefaultInstance();
          }
          doubleParameterBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameterOrBuilder>(
                  (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.DoubleParameter) data_,
                  getParentForChildren(),
                  isClean());
          data_ = null;
        }
        dataCase_ = 8;
        onChanged();;
        return doubleParameterBuilder_;
      }
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameterOrBuilder> textValuesBuilder_;
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextValuesParameter text_values = 9;
       * @return Whether the textValues field is set.
       */
      @java.lang.Override
      public boolean hasTextValues() {
        return dataCase_ == 9;
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextValuesParameter text_values = 9;
       * @return The textValues.
       */
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter getTextValues() {
        if (textValuesBuilder_ == null) {
          if (dataCase_ == 9) {
            return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter) data_;
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.getDefaultInstance();
        } else {
          if (dataCase_ == 9) {
            return textValuesBuilder_.getMessage();
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.getDefaultInstance();
        }
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextValuesParameter text_values = 9;
       */
      public Builder setTextValues(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter value) {
        if (textValuesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          data_ = value;
          onChanged();
        } else {
          textValuesBuilder_.setMessage(value);
        }
        dataCase_ = 9;
        return this;
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextValuesParameter text_values = 9;
       */
      public Builder setTextValues(
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.Builder builderForValue) {
        if (textValuesBuilder_ == null) {
          data_ = builderForValue.build();
          onChanged();
        } else {
          textValuesBuilder_.setMessage(builderForValue.build());
        }
        dataCase_ = 9;
        return this;
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextValuesParameter text_values = 9;
       */
      public Builder mergeTextValues(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter value) {
        if (textValuesBuilder_ == null) {
          if (dataCase_ == 9 &&
              data_ != yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.getDefaultInstance()) {
            data_ = yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.newBuilder((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter) data_)
                .mergeFrom(value).buildPartial();
          } else {
            data_ = value;
          }
          onChanged();
        } else {
          if (dataCase_ == 9) {
            textValuesBuilder_.mergeFrom(value);
          }
          textValuesBuilder_.setMessage(value);
        }
        dataCase_ = 9;
        return this;
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextValuesParameter text_values = 9;
       */
      public Builder clearTextValues() {
        if (textValuesBuilder_ == null) {
          if (dataCase_ == 9) {
            dataCase_ = 0;
            data_ = null;
            onChanged();
          }
        } else {
          if (dataCase_ == 9) {
            dataCase_ = 0;
            data_ = null;
          }
          textValuesBuilder_.clear();
        }
        return this;
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextValuesParameter text_values = 9;
       */
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.Builder getTextValuesBuilder() {
        return getTextValuesFieldBuilder().getBuilder();
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextValuesParameter text_values = 9;
       */
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameterOrBuilder getTextValuesOrBuilder() {
        if ((dataCase_ == 9) && (textValuesBuilder_ != null)) {
          return textValuesBuilder_.getMessageOrBuilder();
        } else {
          if (dataCase_ == 9) {
            return (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter) data_;
          }
          return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.getDefaultInstance();
        }
      }
      /**
       * 
       * Integer parameter.
       * 
       *
       * .yandex.cloud.monitoring.v3.TextValuesParameter text_values = 9;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameterOrBuilder> 
          getTextValuesFieldBuilder() {
        if (textValuesBuilder_ == null) {
          if (!(dataCase_ == 9)) {
            data_ = yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.getDefaultInstance();
          }
          textValuesBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameterOrBuilder>(
                  (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.TextValuesParameter) data_,
                  getParentForChildren(),
                  isClean());
          data_ = null;
        }
        dataCase_ = 9;
        onChanged();;
        return textValuesBuilder_;
      }
      private boolean hidden_ ;
      /**
       * 
       * UI-visibility.
       * 
       *
       * bool hidden = 6;
       * @return The hidden.
       */
      @java.lang.Override
      public boolean getHidden() {
        return hidden_;
      }
      /**
       * 
       * UI-visibility.
       * 
       *
       * bool hidden = 6;
       * @param value The hidden to set.
       * @return This builder for chaining.
       */
      public Builder setHidden(boolean value) {
        
        hidden_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * UI-visibility.
       * 
       *
       * bool hidden = 6;
       * @return This builder for chaining.
       */
      public Builder clearHidden() {
        
        hidden_ = false;
        onChanged();
        return this;
      }
      private java.lang.Object description_ = "";
      /**
       * 
       * Parameter description.
       * 
       *
       * string description = 10;
       * @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;
        }
      }
      /**
       * 
       * Parameter description.
       * 
       *
       * string description = 10;
       * @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;
        }
      }
      /**
       * 
       * Parameter description.
       * 
       *
       * string description = 10;
       * @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;
      }
      /**
       * 
       * Parameter description.
       * 
       *
       * string description = 10;
       * @return This builder for chaining.
       */
      public Builder clearDescription() {
        
        description_ = getDefaultInstance().getDescription();
        onChanged();
        return this;
      }
      /**
       * 
       * Parameter description.
       * 
       *
       * string description = 10;
       * @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;
      }
      @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.monitoring.v3.Parameter)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.monitoring.v3.Parameter)
    private static final yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter();
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public Parameter parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new Parameter(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.monitoring.v3.ParametrizationOuterClass.Parameter getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  public interface ParametrizationOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.monitoring.v3.Parametrization)
      com.google.protobuf.MessageOrBuilder {
    /**
     * 
     * Parameters.
     * 
     *
     * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
     */
    java.util.List 
        getParametersList();
    /**
     * 
     * Parameters.
     * 
     *
     * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
     */
    yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter getParameters(int index);
    /**
     * 
     * Parameters.
     * 
     *
     * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
     */
    int getParametersCount();
    /**
     * 
     * Parameters.
     * 
     *
     * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
     */
    java.util.List extends yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.ParameterOrBuilder> 
        getParametersOrBuilderList();
    /**
     * 
     * Parameters.
     * 
     *
     * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
     */
    yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.ParameterOrBuilder getParametersOrBuilder(
        int index);
    /**
     * 
     * Predefined selectors.
     * 
     *
     * string selectors = 2;
     * @return The selectors.
     */
    java.lang.String getSelectors();
    /**
     * 
     * Predefined selectors.
     * 
     *
     * string selectors = 2;
     * @return The bytes for selectors.
     */
    com.google.protobuf.ByteString
        getSelectorsBytes();
  }
  /**
   * 
   * Parametrization.
   * 
   *
   * Protobuf type {@code yandex.cloud.monitoring.v3.Parametrization}
   */
  public static final class Parametrization extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:yandex.cloud.monitoring.v3.Parametrization)
      ParametrizationOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Parametrization.newBuilder() to construct.
    private Parametrization(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
      super(builder);
    }
    private Parametrization() {
      parameters_ = java.util.Collections.emptyList();
      selectors_ = "";
    }
    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new Parametrization();
    }
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Parametrization(
        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)) {
                parameters_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              parameters_.add(
                  input.readMessage(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.parser(), extensionRegistry));
              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();
              selectors_ = 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)) {
          parameters_ = java.util.Collections.unmodifiableList(parameters_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_Parametrization_descriptor;
    }
    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_Parametrization_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization.Builder.class);
    }
    public static final int PARAMETERS_FIELD_NUMBER = 1;
    private java.util.List parameters_;
    /**
     * 
     * Parameters.
     * 
     *
     * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
     */
    @java.lang.Override
    public java.util.List getParametersList() {
      return parameters_;
    }
    /**
     * 
     * Parameters.
     * 
     *
     * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
     */
    @java.lang.Override
    public java.util.List extends yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.ParameterOrBuilder> 
        getParametersOrBuilderList() {
      return parameters_;
    }
    /**
     * 
     * Parameters.
     * 
     *
     * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
     */
    @java.lang.Override
    public int getParametersCount() {
      return parameters_.size();
    }
    /**
     * 
     * Parameters.
     * 
     *
     * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
     */
    @java.lang.Override
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter getParameters(int index) {
      return parameters_.get(index);
    }
    /**
     * 
     * Parameters.
     * 
     *
     * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
     */
    @java.lang.Override
    public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.ParameterOrBuilder getParametersOrBuilder(
        int index) {
      return parameters_.get(index);
    }
    public static final int SELECTORS_FIELD_NUMBER = 2;
    private volatile java.lang.Object selectors_;
    /**
     * 
     * Predefined selectors.
     * 
     *
     * string selectors = 2;
     * @return The selectors.
     */
    @java.lang.Override
    public java.lang.String getSelectors() {
      java.lang.Object ref = selectors_;
      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();
        selectors_ = s;
        return s;
      }
    }
    /**
     * 
     * Predefined selectors.
     * 
     *
     * string selectors = 2;
     * @return The bytes for selectors.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getSelectorsBytes() {
      java.lang.Object ref = selectors_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        selectors_ = 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 < parameters_.size(); i++) {
        output.writeMessage(1, parameters_.get(i));
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(selectors_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, selectors_);
      }
      unknownFields.writeTo(output);
    }
    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;
      size = 0;
      for (int i = 0; i < parameters_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, parameters_.get(i));
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(selectors_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, selectors_);
      }
      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.monitoring.v3.ParametrizationOuterClass.Parametrization)) {
        return super.equals(obj);
      }
      yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization other = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization) obj;
      if (!getParametersList()
          .equals(other.getParametersList())) return false;
      if (!getSelectors()
          .equals(other.getSelectors())) 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 (getParametersCount() > 0) {
        hash = (37 * hash) + PARAMETERS_FIELD_NUMBER;
        hash = (53 * hash) + getParametersList().hashCode();
      }
      hash = (37 * hash) + SELECTORS_FIELD_NUMBER;
      hash = (53 * hash) + getSelectors().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization 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.monitoring.v3.ParametrizationOuterClass.Parametrization parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization 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.monitoring.v3.ParametrizationOuterClass.Parametrization parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization 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.monitoring.v3.ParametrizationOuterClass.Parametrization parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization 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.monitoring.v3.ParametrizationOuterClass.Parametrization parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization 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.monitoring.v3.ParametrizationOuterClass.Parametrization 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;
    }
    /**
     * 
     * Parametrization.
     * 
     *
     * Protobuf type {@code yandex.cloud.monitoring.v3.Parametrization}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:yandex.cloud.monitoring.v3.Parametrization)
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.ParametrizationOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_Parametrization_descriptor;
      }
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_Parametrization_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization.class, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization.Builder.class);
      }
      // Construct using yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }
      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getParametersFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (parametersBuilder_ == null) {
          parameters_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          parametersBuilder_.clear();
        }
        selectors_ = "";
        return this;
      }
      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.internal_static_yandex_cloud_monitoring_v3_Parametrization_descriptor;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization getDefaultInstanceForType() {
        return yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization.getDefaultInstance();
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization build() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }
      @java.lang.Override
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization buildPartial() {
        yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization result = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization(this);
        int from_bitField0_ = bitField0_;
        if (parametersBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            parameters_ = java.util.Collections.unmodifiableList(parameters_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.parameters_ = parameters_;
        } else {
          result.parameters_ = parametersBuilder_.build();
        }
        result.selectors_ = selectors_;
        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.monitoring.v3.ParametrizationOuterClass.Parametrization) {
          return mergeFrom((yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }
      public Builder mergeFrom(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization other) {
        if (other == yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization.getDefaultInstance()) return this;
        if (parametersBuilder_ == null) {
          if (!other.parameters_.isEmpty()) {
            if (parameters_.isEmpty()) {
              parameters_ = other.parameters_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureParametersIsMutable();
              parameters_.addAll(other.parameters_);
            }
            onChanged();
          }
        } else {
          if (!other.parameters_.isEmpty()) {
            if (parametersBuilder_.isEmpty()) {
              parametersBuilder_.dispose();
              parametersBuilder_ = null;
              parameters_ = other.parameters_;
              bitField0_ = (bitField0_ & ~0x00000001);
              parametersBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getParametersFieldBuilder() : null;
            } else {
              parametersBuilder_.addAllMessages(other.parameters_);
            }
          }
        }
        if (!other.getSelectors().isEmpty()) {
          selectors_ = other.selectors_;
          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.monitoring.v3.ParametrizationOuterClass.Parametrization parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;
      private java.util.List parameters_ =
        java.util.Collections.emptyList();
      private void ensureParametersIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          parameters_ = new java.util.ArrayList(parameters_);
          bitField0_ |= 0x00000001;
         }
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.ParameterOrBuilder> parametersBuilder_;
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public java.util.List getParametersList() {
        if (parametersBuilder_ == null) {
          return java.util.Collections.unmodifiableList(parameters_);
        } else {
          return parametersBuilder_.getMessageList();
        }
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public int getParametersCount() {
        if (parametersBuilder_ == null) {
          return parameters_.size();
        } else {
          return parametersBuilder_.getCount();
        }
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter getParameters(int index) {
        if (parametersBuilder_ == null) {
          return parameters_.get(index);
        } else {
          return parametersBuilder_.getMessage(index);
        }
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public Builder setParameters(
          int index, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter value) {
        if (parametersBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureParametersIsMutable();
          parameters_.set(index, value);
          onChanged();
        } else {
          parametersBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public Builder setParameters(
          int index, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.Builder builderForValue) {
        if (parametersBuilder_ == null) {
          ensureParametersIsMutable();
          parameters_.set(index, builderForValue.build());
          onChanged();
        } else {
          parametersBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public Builder addParameters(yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter value) {
        if (parametersBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureParametersIsMutable();
          parameters_.add(value);
          onChanged();
        } else {
          parametersBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public Builder addParameters(
          int index, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter value) {
        if (parametersBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureParametersIsMutable();
          parameters_.add(index, value);
          onChanged();
        } else {
          parametersBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public Builder addParameters(
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.Builder builderForValue) {
        if (parametersBuilder_ == null) {
          ensureParametersIsMutable();
          parameters_.add(builderForValue.build());
          onChanged();
        } else {
          parametersBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public Builder addParameters(
          int index, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.Builder builderForValue) {
        if (parametersBuilder_ == null) {
          ensureParametersIsMutable();
          parameters_.add(index, builderForValue.build());
          onChanged();
        } else {
          parametersBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public Builder addAllParameters(
          java.lang.Iterable extends yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter> values) {
        if (parametersBuilder_ == null) {
          ensureParametersIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, parameters_);
          onChanged();
        } else {
          parametersBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public Builder clearParameters() {
        if (parametersBuilder_ == null) {
          parameters_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          parametersBuilder_.clear();
        }
        return this;
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public Builder removeParameters(int index) {
        if (parametersBuilder_ == null) {
          ensureParametersIsMutable();
          parameters_.remove(index);
          onChanged();
        } else {
          parametersBuilder_.remove(index);
        }
        return this;
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.Builder getParametersBuilder(
          int index) {
        return getParametersFieldBuilder().getBuilder(index);
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.ParameterOrBuilder getParametersOrBuilder(
          int index) {
        if (parametersBuilder_ == null) {
          return parameters_.get(index);  } else {
          return parametersBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public java.util.List extends yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.ParameterOrBuilder> 
           getParametersOrBuilderList() {
        if (parametersBuilder_ != null) {
          return parametersBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(parameters_);
        }
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.Builder addParametersBuilder() {
        return getParametersFieldBuilder().addBuilder(
            yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.getDefaultInstance());
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.Builder addParametersBuilder(
          int index) {
        return getParametersFieldBuilder().addBuilder(
            index, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.getDefaultInstance());
      }
      /**
       * 
       * Parameters.
       * 
       *
       * repeated .yandex.cloud.monitoring.v3.Parameter parameters = 1;
       */
      public java.util.List 
           getParametersBuilderList() {
        return getParametersFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.ParameterOrBuilder> 
          getParametersFieldBuilder() {
        if (parametersBuilder_ == null) {
          parametersBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parameter.Builder, yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.ParameterOrBuilder>(
                  parameters_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          parameters_ = null;
        }
        return parametersBuilder_;
      }
      private java.lang.Object selectors_ = "";
      /**
       * 
       * Predefined selectors.
       * 
       *
       * string selectors = 2;
       * @return The selectors.
       */
      public java.lang.String getSelectors() {
        java.lang.Object ref = selectors_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          selectors_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * 
       * Predefined selectors.
       * 
       *
       * string selectors = 2;
       * @return The bytes for selectors.
       */
      public com.google.protobuf.ByteString
          getSelectorsBytes() {
        java.lang.Object ref = selectors_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          selectors_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * 
       * Predefined selectors.
       * 
       *
       * string selectors = 2;
       * @param value The selectors to set.
       * @return This builder for chaining.
       */
      public Builder setSelectors(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        selectors_ = value;
        onChanged();
        return this;
      }
      /**
       * 
       * Predefined selectors.
       * 
       *
       * string selectors = 2;
       * @return This builder for chaining.
       */
      public Builder clearSelectors() {
        
        selectors_ = getDefaultInstance().getSelectors();
        onChanged();
        return this;
      }
      /**
       * 
       * Predefined selectors.
       * 
       *
       * string selectors = 2;
       * @param value The bytes for selectors to set.
       * @return This builder for chaining.
       */
      public Builder setSelectorsBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        selectors_ = 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.monitoring.v3.Parametrization)
    }
    // @@protoc_insertion_point(class_scope:yandex.cloud.monitoring.v3.Parametrization)
    private static final yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization();
    }
    public static yandex.cloud.api.monitoring.v3.ParametrizationOuterClass.Parametrization getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }
    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public Parametrization parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new Parametrization(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.monitoring.v3.ParametrizationOuterClass.Parametrization getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }
  }
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_monitoring_v3_LabelValuesParameter_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_monitoring_v3_LabelValuesParameter_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_monitoring_v3_CustomParameter_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_monitoring_v3_CustomParameter_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_monitoring_v3_TextParameter_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_monitoring_v3_TextParameter_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_monitoring_v3_DoubleParameter_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_monitoring_v3_DoubleParameter_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_monitoring_v3_IntegerParameter_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_monitoring_v3_IntegerParameter_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_monitoring_v3_TextValuesParameter_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_monitoring_v3_TextValuesParameter_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_monitoring_v3_Parameter_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_monitoring_v3_Parameter_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_yandex_cloud_monitoring_v3_Parametrization_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_yandex_cloud_monitoring_v3_Parametrization_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/monitoring/v3/parametriza" +
      "tion.proto\022\032yandex.cloud.monitoring.v3\032," +
      "yandex/cloud/monitoring/v3/unit_format.p" +
      "roto\"\217\001\n\024LabelValuesParameter\022\023\n\tfolder_" +
      "id\030\002 \001(\tH\000\022\021\n\tselectors\030\023 \001(\t\022\021\n\tlabel_k" +
      "ey\030\024 \001(\t\022\027\n\017multiselectable\030\025 \001(\010\022\026\n\016def" +
      "ault_values\030\026 \003(\tB\013\n\tcontainer\"R\n\017Custom" +
      "Parameter\022\016\n\006values\030\001 \003(\t\022\027\n\017multiselect" +
      "able\030\002 \001(\010\022\026\n\016default_values\030\003 \003(\t\"&\n\rTe" +
      "xtParameter\022\025\n\rdefault_value\030\001 \001(\t\"e\n\017Do" +
      "ubleParameter\022\025\n\rdefault_value\030\001 \001(\001\022;\n\013" +
      "unit_format\030\002 \001(\0162&.yandex.cloud.monitor" +
      "ing.v3.UnitFormat\"f\n\020IntegerParameter\022\025\n" +
      "\rdefault_value\030\001 \001(\003\022;\n\013unit_format\030\002 \001(" +
      "\0162&.yandex.cloud.monitoring.v3.UnitForma" +
      "t\"-\n\023TextValuesParameter\022\026\n\016default_valu" +
      "es\030\001 \003(\t\"\365\003\n\tParameter\022\014\n\004name\030\001 \001(\t\022\r\n\005" +
      "title\030\002 \001(\t\022H\n\014label_values\030\003 \001(\01320.yand" +
      "ex.cloud.monitoring.v3.LabelValuesParame" +
      "terH\000\022=\n\006custom\030\004 \001(\0132+.yandex.cloud.mon" +
      "itoring.v3.CustomParameterH\000\0229\n\004text\030\005 \001" +
      "(\0132).yandex.cloud.monitoring.v3.TextPara" +
      "meterH\000\022I\n\021integer_parameter\030\007 \001(\0132,.yan" +
      "dex.cloud.monitoring.v3.IntegerParameter" +
      "H\000\022G\n\020double_parameter\030\010 \001(\0132+.yandex.cl" +
      "oud.monitoring.v3.DoubleParameterH\000\022F\n\013t" +
      "ext_values\030\t \001(\0132/.yandex.cloud.monitori" +
      "ng.v3.TextValuesParameterH\000\022\016\n\006hidden\030\006 " +
      "\001(\010\022\023\n\013description\030\n \001(\tB\006\n\004data\"_\n\017Para" +
      "metrization\0229\n\nparameters\030\001 \003(\0132%.yandex" +
      ".cloud.monitoring.v3.Parameter\022\021\n\tselect" +
      "ors\030\002 \001(\tBk\n\036yandex.cloud.api.monitoring" +
      ".v3ZIgithub.com/yandex-cloud/go-genproto" +
      "/yandex/cloud/monitoring/v3;monitoringb\006" +
      "proto3"
    };
    descriptor = com.google.protobuf.Descriptors.FileDescriptor
      .internalBuildGeneratedFileFrom(descriptorData,
        new com.google.protobuf.Descriptors.FileDescriptor[] {
          yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.getDescriptor(),
        });
    internal_static_yandex_cloud_monitoring_v3_LabelValuesParameter_descriptor =
      getDescriptor().getMessageTypes().get(0);
    internal_static_yandex_cloud_monitoring_v3_LabelValuesParameter_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_monitoring_v3_LabelValuesParameter_descriptor,
        new java.lang.String[] { "FolderId", "Selectors", "LabelKey", "Multiselectable", "DefaultValues", "Container", });
    internal_static_yandex_cloud_monitoring_v3_CustomParameter_descriptor =
      getDescriptor().getMessageTypes().get(1);
    internal_static_yandex_cloud_monitoring_v3_CustomParameter_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_monitoring_v3_CustomParameter_descriptor,
        new java.lang.String[] { "Values", "Multiselectable", "DefaultValues", });
    internal_static_yandex_cloud_monitoring_v3_TextParameter_descriptor =
      getDescriptor().getMessageTypes().get(2);
    internal_static_yandex_cloud_monitoring_v3_TextParameter_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_monitoring_v3_TextParameter_descriptor,
        new java.lang.String[] { "DefaultValue", });
    internal_static_yandex_cloud_monitoring_v3_DoubleParameter_descriptor =
      getDescriptor().getMessageTypes().get(3);
    internal_static_yandex_cloud_monitoring_v3_DoubleParameter_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_monitoring_v3_DoubleParameter_descriptor,
        new java.lang.String[] { "DefaultValue", "UnitFormat", });
    internal_static_yandex_cloud_monitoring_v3_IntegerParameter_descriptor =
      getDescriptor().getMessageTypes().get(4);
    internal_static_yandex_cloud_monitoring_v3_IntegerParameter_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_monitoring_v3_IntegerParameter_descriptor,
        new java.lang.String[] { "DefaultValue", "UnitFormat", });
    internal_static_yandex_cloud_monitoring_v3_TextValuesParameter_descriptor =
      getDescriptor().getMessageTypes().get(5);
    internal_static_yandex_cloud_monitoring_v3_TextValuesParameter_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_monitoring_v3_TextValuesParameter_descriptor,
        new java.lang.String[] { "DefaultValues", });
    internal_static_yandex_cloud_monitoring_v3_Parameter_descriptor =
      getDescriptor().getMessageTypes().get(6);
    internal_static_yandex_cloud_monitoring_v3_Parameter_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_monitoring_v3_Parameter_descriptor,
        new java.lang.String[] { "Name", "Title", "LabelValues", "Custom", "Text", "IntegerParameter", "DoubleParameter", "TextValues", "Hidden", "Description", "Data", });
    internal_static_yandex_cloud_monitoring_v3_Parametrization_descriptor =
      getDescriptor().getMessageTypes().get(7);
    internal_static_yandex_cloud_monitoring_v3_Parametrization_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_yandex_cloud_monitoring_v3_Parametrization_descriptor,
        new java.lang.String[] { "Parameters", "Selectors", });
    yandex.cloud.api.monitoring.v3.UnitFormatOuterClass.getDescriptor();
  }
  // @@protoc_insertion_point(outer_class_scope)
}
                                                            © 2015 - 2025 Weber Informatics LLC | Privacy Policy