6package com.google.ortools.sat;
 
   16@com.google.protobuf.Generated
 
   17public final class ElementConstraintProto 
extends 
   18    com.google.protobuf.GeneratedMessage implements
 
   21private static final long serialVersionUID = 0L;
 
   23    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
 
   24      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
 
   29      ElementConstraintProto.class.getName());
 
   32  private ElementConstraintProto(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
 
   35  private ElementConstraintProto() {
 
   36    vars_ = emptyIntList();
 
   37    exprs_ = java.util.Collections.emptyList();
 
   40  public static final com.google.protobuf.Descriptors.Descriptor
 
   42    return com.google.ortools.sat.CpModelProtobuf.internal_static_operations_research_sat_ElementConstraintProto_descriptor;
 
 
   46  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
 
   48    return com.google.ortools.sat.CpModelProtobuf.internal_static_operations_research_sat_ElementConstraintProto_fieldAccessorTable
 
   49        .ensureFieldAccessorsInitialized(
 
   50            com.google.ortools.sat.ElementConstraintProto.class, com.google.ortools.sat.ElementConstraintProto.Builder.class);
 
 
   53  private int bitField0_;
 
   55  private int index_ = 0;
 
   70  private int target_ = 0;
 
   85  @SuppressWarnings(
"serial")
 
   86  private com.google.protobuf.Internal.IntList vars_ =
 
   97  public java.
util.List<java.lang.Integer>
 
  122    return vars_.getInt(index);
 
 
  124  private int varsMemoizedSerializedSize = -1;
 
  138    return ((bitField0_ & 0x00000001) != 0);
 
 
  150    return linearIndex_ == 
null ? com.google.ortools.sat.LinearExpressionProto.getDefaultInstance() : linearIndex_;
 
 
  161    return linearIndex_ == 
null ? com.google.ortools.sat.LinearExpressionProto.getDefaultInstance() : linearIndex_;
 
 
  172    return ((bitField0_ & 0x00000002) != 0);
 
 
  180    return linearTarget_ == 
null ? com.google.ortools.sat.LinearExpressionProto.getDefaultInstance() : linearTarget_;
 
 
  187    return linearTarget_ == 
null ? com.google.ortools.sat.LinearExpressionProto.getDefaultInstance() : linearTarget_;
 
 
  191  @SuppressWarnings(
"serial")
 
  204  public java.util.List<? extends com.google.ortools.sat.LinearExpressionProtoOrBuilder> 
 
  213    return exprs_.size();
 
 
  220    return exprs_.get(index);
 
 
  228    return exprs_.get(index);
 
 
  231  private byte memoizedIsInitialized = -1;
 
  238    memoizedIsInitialized = 1;
 
 
  243  public void writeTo(com.google.protobuf.CodedOutputStream output)
 
  244                      throws java.io.IOException {
 
  247      output.writeInt32(1, index_);
 
  250      output.writeInt32(2, target_);
 
  253      output.writeUInt32NoTag(26);
 
  254      output.writeUInt32NoTag(varsMemoizedSerializedSize);
 
  256    for (
int i = 0; i < vars_.size(); i++) {
 
  257      output.writeInt32NoTag(vars_.getInt(i));
 
  259    if (((bitField0_ & 0x00000001) != 0)) {
 
  262    if (((bitField0_ & 0x00000002) != 0)) {
 
  265    for (
int i = 0; i < exprs_.size(); i++) {
 
  266      output.writeMessage(6, exprs_.get(i));
 
  268    getUnknownFields().writeTo(output);
 
 
  273    int size = memoizedSize;
 
  274    if (size != -1) 
return size;
 
  278      size += com.google.protobuf.CodedOutputStream
 
  279        .computeInt32Size(1, index_);
 
  282      size += com.google.protobuf.CodedOutputStream
 
  283        .computeInt32Size(2, target_);
 
  287      for (
int i = 0; i < vars_.size(); i++) {
 
  288        dataSize += com.google.protobuf.CodedOutputStream
 
  289          .computeInt32SizeNoTag(vars_.getInt(i));
 
  294        size += com.google.protobuf.CodedOutputStream
 
  295            .computeInt32SizeNoTag(dataSize);
 
  297      varsMemoizedSerializedSize = dataSize;
 
  299    if (((bitField0_ & 0x00000001) != 0)) {
 
  300      size += com.google.protobuf.CodedOutputStream
 
  303    if (((bitField0_ & 0x00000002) != 0)) {
 
  304      size += com.google.protobuf.CodedOutputStream
 
  307    for (
int i = 0; i < exprs_.size(); i++) {
 
  308      size += com.google.protobuf.CodedOutputStream
 
  309        .computeMessageSize(6, exprs_.get(i));
 
  311    size += getUnknownFields().getSerializedSize();
 
 
  317  public boolean equals(
final java.lang.Object obj) {
 
  321    if (!(obj instanceof com.google.ortools.sat.ElementConstraintProto)) {
 
  322      return super.equals(obj);
 
  344    if (!getUnknownFields().
equals(other.getUnknownFields())) 
return false;
 
 
  350    if (memoizedHashCode != 0) {
 
  351      return memoizedHashCode;
 
  375    hash = (29 * hash) + getUnknownFields().hashCode();
 
  376    memoizedHashCode = hash;
 
 
  381      java.nio.ByteBuffer data)
 
  382      throws com.google.protobuf.InvalidProtocolBufferException {
 
  383    return PARSER.parseFrom(data);
 
 
  386      java.nio.ByteBuffer data,
 
  387      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
 
  388      throws com.google.protobuf.InvalidProtocolBufferException {
 
  389    return PARSER.parseFrom(data, extensionRegistry);
 
 
  392      com.google.protobuf.ByteString data)
 
  393      throws com.google.protobuf.InvalidProtocolBufferException {
 
  394    return PARSER.parseFrom(data);
 
 
  397      com.google.protobuf.ByteString data,
 
  398      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
 
  399      throws com.google.protobuf.InvalidProtocolBufferException {
 
  400    return PARSER.parseFrom(data, extensionRegistry);
 
 
  403      throws com.google.protobuf.InvalidProtocolBufferException {
 
  404    return PARSER.parseFrom(data);
 
 
  408      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
 
  409      throws com.google.protobuf.InvalidProtocolBufferException {
 
  410    return PARSER.parseFrom(data, extensionRegistry);
 
 
  413      throws java.io.IOException {
 
  414    return com.google.protobuf.GeneratedMessage
 
  415        .parseWithIOException(PARSER, input);
 
 
  418      java.io.InputStream input,
 
  419      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
 
  420      throws java.io.IOException {
 
  421    return com.google.protobuf.GeneratedMessage
 
  422        .parseWithIOException(PARSER, input, extensionRegistry);
 
 
  426      throws java.io.IOException {
 
  427    return com.google.protobuf.GeneratedMessage
 
  428        .parseDelimitedWithIOException(PARSER, input);
 
 
  432      java.io.InputStream input,
 
  433      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
 
  434      throws java.io.IOException {
 
  435    return com.google.protobuf.GeneratedMessage
 
  436        .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
 
 
  439      com.google.protobuf.CodedInputStream input)
 
  440      throws java.io.IOException {
 
  441    return com.google.protobuf.GeneratedMessage
 
  442        .parseWithIOException(PARSER, input);
 
 
  445      com.google.protobuf.CodedInputStream input,
 
  446      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
 
  447      throws java.io.IOException {
 
  448    return com.google.protobuf.GeneratedMessage
 
  449        .parseWithIOException(PARSER, input, extensionRegistry);
 
 
  455    return DEFAULT_INSTANCE.toBuilder();
 
 
  458    return DEFAULT_INSTANCE.toBuilder().
mergeFrom(prototype);
 
 
  462    return this == DEFAULT_INSTANCE
 
 
  468      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
 
 
  480  public static final class Builder 
extends 
  481      com.google.protobuf.GeneratedMessage.Builder<Builder> implements
 
  484    public static final com.google.protobuf.Descriptors.Descriptor
 
  486      return com.google.ortools.sat.CpModelProtobuf.internal_static_operations_research_sat_ElementConstraintProto_descriptor;
 
 
  490    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
 
  492      return com.google.ortools.sat.CpModelProtobuf.internal_static_operations_research_sat_ElementConstraintProto_fieldAccessorTable
 
  493          .ensureFieldAccessorsInitialized(
 
  494              com.google.ortools.sat.ElementConstraintProto.class, com.google.ortools.sat.ElementConstraintProto.Builder.class);
 
 
  499      maybeForceBuilderInitialization();
 
  503        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
 
  505      maybeForceBuilderInitialization();
 
  507    private void maybeForceBuilderInitialization() {
 
  508      if (com.google.protobuf.GeneratedMessage
 
  509              .alwaysUseFieldBuilders) {
 
  510        internalGetLinearIndexFieldBuilder();
 
  511        internalGetLinearTargetFieldBuilder();
 
  512        internalGetExprsFieldBuilder();
 
  521      vars_ = emptyIntList();
 
  523      if (linearIndexBuilder_ != 
null) {
 
  524        linearIndexBuilder_.dispose();
 
  525        linearIndexBuilder_ = 
null;
 
  527      linearTarget_ = 
null;
 
  528      if (linearTargetBuilder_ != 
null) {
 
  529        linearTargetBuilder_.dispose();
 
  530        linearTargetBuilder_ = 
null;
 
  532      if (exprsBuilder_ == 
null) {
 
  533        exprs_ = java.util.Collections.emptyList();
 
  536        exprsBuilder_.clear();
 
  538      bitField0_ = (bitField0_ & ~0x00000020);
 
 
  543    public com.google.protobuf.Descriptors.Descriptor
 
  545      return com.google.ortools.sat.CpModelProtobuf.internal_static_operations_research_sat_ElementConstraintProto_descriptor;
 
 
  550      return com.google.ortools.sat.ElementConstraintProto.getDefaultInstance();
 
 
  557        throw newUninitializedMessageException(result);
 
 
  565      buildPartialRepeatedFields(result);
 
  566      if (bitField0_ != 0) { buildPartial0(result); }
 
 
  571    private void buildPartialRepeatedFields(com.google.ortools.sat.ElementConstraintProto result) {
 
  572      if (exprsBuilder_ == 
null) {
 
  573        if (((bitField0_ & 0x00000020) != 0)) {
 
  574          exprs_ = java.util.Collections.unmodifiableList(exprs_);
 
  575          bitField0_ = (bitField0_ & ~0x00000020);
 
  577        result.exprs_ = exprs_;
 
  579        result.exprs_ = exprsBuilder_.build();
 
  583    private void buildPartial0(com.google.ortools.sat.ElementConstraintProto result) {
 
  584      int from_bitField0_ = bitField0_;
 
  585      if (((from_bitField0_ & 0x00000001) != 0)) {
 
  586        result.index_ = index_;
 
  588      if (((from_bitField0_ & 0x00000002) != 0)) {
 
  589        result.target_ = target_;
 
  591      if (((from_bitField0_ & 0x00000004) != 0)) {
 
  592        vars_.makeImmutable();
 
  593        result.vars_ = vars_;
 
  595      int to_bitField0_ = 0;
 
  596      if (((from_bitField0_ & 0x00000008) != 0)) {
 
  597        result.linearIndex_ = linearIndexBuilder_ == 
null 
  599            : linearIndexBuilder_.build();
 
  600        to_bitField0_ |= 0x00000001;
 
  602      if (((from_bitField0_ & 0x00000010) != 0)) {
 
  603        result.linearTarget_ = linearTargetBuilder_ == 
null 
  605            : linearTargetBuilder_.build();
 
  606        to_bitField0_ |= 0x00000002;
 
  608      result.bitField0_ |= to_bitField0_;
 
  612    public Builder 
mergeFrom(com.google.protobuf.Message other) {
 
  613      if (other instanceof com.google.ortools.sat.ElementConstraintProto) {
 
  614        return mergeFrom((com.google.ortools.sat.ElementConstraintProto)other);
 
  616        super.mergeFrom(other);
 
 
  621    public Builder 
mergeFrom(com.google.ortools.sat.ElementConstraintProto other) {
 
  622      if (other == com.google.ortools.sat.ElementConstraintProto.getDefaultInstance()) 
return this;
 
  623      if (other.getIndex() != 0) {
 
  626      if (other.getTarget() != 0) {
 
  629      if (!other.vars_.isEmpty()) {
 
  630        if (vars_.isEmpty()) {
 
  632          vars_.makeImmutable();
 
  633          bitField0_ |= 0x00000004;
 
  635          ensureVarsIsMutable();
 
  636          vars_.addAll(other.vars_);
 
  640      if (other.hasLinearIndex()) {
 
  643      if (other.hasLinearTarget()) {
 
  646      if (exprsBuilder_ == 
null) {
 
  647        if (!other.exprs_.isEmpty()) {
 
  648          if (exprs_.isEmpty()) {
 
  649            exprs_ = other.exprs_;
 
  650            bitField0_ = (bitField0_ & ~0x00000020);
 
  652            ensureExprsIsMutable();
 
  653            exprs_.addAll(other.exprs_);
 
  658        if (!other.exprs_.isEmpty()) {
 
  659          if (exprsBuilder_.isEmpty()) {
 
  660            exprsBuilder_.dispose();
 
  661            exprsBuilder_ = 
null;
 
  662            exprs_ = other.exprs_;
 
  663            bitField0_ = (bitField0_ & ~0x00000020);
 
  665              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
 
  666                 internalGetExprsFieldBuilder() : 
null;
 
  668            exprsBuilder_.addAllMessages(other.exprs_);
 
  672      this.mergeUnknownFields(other.getUnknownFields());
 
 
  684        com.google.protobuf.CodedInputStream input,
 
  685        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
 
  686        throws java.io.IOException {
 
  687      if (extensionRegistry == 
null) {
 
  688        throw new java.lang.NullPointerException();
 
  691        boolean done = 
false;
 
  693          int tag = input.readTag();
 
  699              index_ = input.readInt32();
 
  700              bitField0_ |= 0x00000001;
 
  704              target_ = input.readInt32();
 
  705              bitField0_ |= 0x00000002;
 
  709              int v = input.readInt32();
 
  710              ensureVarsIsMutable();
 
  715              int length = input.readRawVarint32();
 
  716              int limit = input.pushLimit(length);
 
  717              ensureVarsIsMutable();
 
  718              while (input.getBytesUntilLimit() > 0) {
 
  719                vars_.addInt(input.readInt32());
 
  721              input.popLimit(limit);
 
  726                  internalGetLinearIndexFieldBuilder().getBuilder(),
 
  728              bitField0_ |= 0x00000008;
 
  733                  internalGetLinearTargetFieldBuilder().getBuilder(),
 
  735              bitField0_ |= 0x00000010;
 
  741                      com.google.ortools.sat.LinearExpressionProto.parser(),
 
  743              if (exprsBuilder_ == 
null) {
 
  744                ensureExprsIsMutable();
 
  747                exprsBuilder_.addMessage(m);
 
  752              if (!super.parseUnknownField(input, extensionRegistry, tag)) {
 
  759      } 
catch (com.google.protobuf.InvalidProtocolBufferException e) {
 
  760        throw e.unwrapIOException();
 
 
  766    private int bitField0_;
 
  793      bitField0_ |= 0x00000001;
 
 
  806      bitField0_ = (bitField0_ & ~0x00000001);
 
 
  812    private int target_ ;
 
  837      bitField0_ |= 0x00000002;
 
 
  850      bitField0_ = (bitField0_ & ~0x00000002);
 
 
  856    private com.google.protobuf.Internal.IntList vars_ = emptyIntList();
 
  857    private void ensureVarsIsMutable() {
 
  858      if (!vars_.isModifiable()) {
 
  859        vars_ = makeMutableCopy(vars_);
 
  861      bitField0_ |= 0x00000004;
 
  871    public java.util.List<java.lang.Integer>
 
  873      vars_.makeImmutable();
 
 
  897      return vars_.getInt(index);
 
 
  910        int index, 
int value) {
 
  912      ensureVarsIsMutable();
 
  913      vars_.setInt(index, value);
 
  914      bitField0_ |= 0x00000004;
 
 
  929      ensureVarsIsMutable();
 
  931      bitField0_ |= 0x00000004;
 
 
  945        java.lang.Iterable<? extends java.lang.Integer> values) {
 
  946      ensureVarsIsMutable();
 
  947      com.google.protobuf.AbstractMessageLite.Builder.addAll(
 
  949      bitField0_ |= 0x00000004;
 
 
  962      vars_ = emptyIntList();
 
  963      bitField0_ = (bitField0_ & ~0x00000004);
 
 
  969    private com.google.protobuf.SingleFieldBuilder<
 
  970        com.google.ortools.sat.LinearExpressionProto, com.google.ortools.sat.LinearExpressionProto.Builder, com.google.ortools.sat.LinearExpressionProtoOrBuilder> linearIndexBuilder_;
 
  980      return ((bitField0_ & 0x00000008) != 0);
 
 
  991      if (linearIndexBuilder_ == 
null) {
 
  992        return linearIndex_ == 
null ? com.google.ortools.sat.LinearExpressionProto.getDefaultInstance() : linearIndex_;
 
  994        return linearIndexBuilder_.getMessage();
 
 
 1005      if (linearIndexBuilder_ == 
null) {
 
 1006        if (value == 
null) {
 
 1007          throw new NullPointerException();
 
 1009        linearIndex_ = value;
 
 1011        linearIndexBuilder_.setMessage(value);
 
 1013      bitField0_ |= 0x00000008;
 
 
 1025        com.google.ortools.sat.LinearExpressionProto.Builder builderForValue) {
 
 1026      if (linearIndexBuilder_ == 
null) {
 
 1027        linearIndex_ = builderForValue.build();
 
 1029        linearIndexBuilder_.setMessage(builderForValue.build());
 
 1031      bitField0_ |= 0x00000008;
 
 
 1043      if (linearIndexBuilder_ == 
null) {
 
 1044        if (((bitField0_ & 0x00000008) != 0) &&
 
 1045          linearIndex_ != 
null &&
 
 1046          linearIndex_ != com.google.ortools.sat.LinearExpressionProto.getDefaultInstance()) {
 
 1049          linearIndex_ = value;
 
 1052        linearIndexBuilder_.mergeFrom(value);
 
 1054      if (linearIndex_ != 
null) {
 
 1055        bitField0_ |= 0x00000008;
 
 
 1068      bitField0_ = (bitField0_ & ~0x00000008);
 
 1069      linearIndex_ = 
null;
 
 1070      if (linearIndexBuilder_ != 
null) {
 
 1071        linearIndexBuilder_.dispose();
 
 1072        linearIndexBuilder_ = 
null;
 
 
 1085      bitField0_ |= 0x00000008;
 
 1087      return internalGetLinearIndexFieldBuilder().getBuilder();
 
 
 1097      if (linearIndexBuilder_ != 
null) {
 
 1098        return linearIndexBuilder_.getMessageOrBuilder();
 
 1100        return linearIndex_ == 
null ?
 
 1101            com.google.ortools.sat.LinearExpressionProto.getDefaultInstance() : linearIndex_;
 
 
 1111    private com.google.protobuf.SingleFieldBuilder<
 
 1112        com.google.ortools.sat.LinearExpressionProto, com.google.ortools.sat.LinearExpressionProto.Builder, com.google.ortools.sat.LinearExpressionProtoOrBuilder> 
 
 1113        internalGetLinearIndexFieldBuilder() {
 
 1114      if (linearIndexBuilder_ == 
null) {
 
 1115        linearIndexBuilder_ = 
new com.google.protobuf.SingleFieldBuilder<
 
 1116            com.google.ortools.sat.LinearExpressionProto, com.google.ortools.sat.LinearExpressionProto.Builder, com.google.ortools.sat.LinearExpressionProtoOrBuilder>(
 
 1118                getParentForChildren(),
 
 1120        linearIndex_ = 
null;
 
 1122      return linearIndexBuilder_;
 
 1126    private com.google.protobuf.SingleFieldBuilder<
 
 1127        com.google.ortools.sat.LinearExpressionProto, com.google.ortools.sat.LinearExpressionProto.Builder, com.google.ortools.sat.LinearExpressionProtoOrBuilder> linearTargetBuilder_;
 
 1133      return ((bitField0_ & 0x00000010) != 0);
 
 
 1140      if (linearTargetBuilder_ == 
null) {
 
 1141        return linearTarget_ == 
null ? com.google.ortools.sat.LinearExpressionProto.getDefaultInstance() : linearTarget_;
 
 1143        return linearTargetBuilder_.getMessage();
 
 
 1150      if (linearTargetBuilder_ == 
null) {
 
 1151        if (value == 
null) {
 
 1152          throw new NullPointerException();
 
 1154        linearTarget_ = value;
 
 1156        linearTargetBuilder_.setMessage(value);
 
 1158      bitField0_ |= 0x00000010;
 
 
 1166        com.google.ortools.sat.LinearExpressionProto.Builder builderForValue) {
 
 1167      if (linearTargetBuilder_ == 
null) {
 
 1168        linearTarget_ = builderForValue.build();
 
 1170        linearTargetBuilder_.setMessage(builderForValue.build());
 
 1172      bitField0_ |= 0x00000010;
 
 
 1180      if (linearTargetBuilder_ == 
null) {
 
 1181        if (((bitField0_ & 0x00000010) != 0) &&
 
 1182          linearTarget_ != 
null &&
 
 1183          linearTarget_ != com.google.ortools.sat.LinearExpressionProto.getDefaultInstance()) {
 
 1186          linearTarget_ = value;
 
 1189        linearTargetBuilder_.mergeFrom(value);
 
 1191      if (linearTarget_ != 
null) {
 
 1192        bitField0_ |= 0x00000010;
 
 
 1201      bitField0_ = (bitField0_ & ~0x00000010);
 
 1202      linearTarget_ = 
null;
 
 1203      if (linearTargetBuilder_ != 
null) {
 
 1204        linearTargetBuilder_.dispose();
 
 1205        linearTargetBuilder_ = 
null;
 
 
 1214      bitField0_ |= 0x00000010;
 
 1216      return internalGetLinearTargetFieldBuilder().getBuilder();
 
 
 1222      if (linearTargetBuilder_ != 
null) {
 
 1223        return linearTargetBuilder_.getMessageOrBuilder();
 
 1225        return linearTarget_ == 
null ?
 
 1226            com.google.ortools.sat.LinearExpressionProto.getDefaultInstance() : linearTarget_;
 
 
 1232    private com.google.protobuf.SingleFieldBuilder<
 
 1233        com.google.ortools.sat.LinearExpressionProto, com.google.ortools.sat.LinearExpressionProto.Builder, com.google.ortools.sat.LinearExpressionProtoOrBuilder> 
 
 1234        internalGetLinearTargetFieldBuilder() {
 
 1235      if (linearTargetBuilder_ == 
null) {
 
 1236        linearTargetBuilder_ = 
new com.google.protobuf.SingleFieldBuilder<
 
 1237            com.google.ortools.sat.LinearExpressionProto, com.google.ortools.sat.LinearExpressionProto.Builder, com.google.ortools.sat.LinearExpressionProtoOrBuilder>(
 
 1239                getParentForChildren(),
 
 1241        linearTarget_ = 
null;
 
 1243      return linearTargetBuilder_;
 
 1246    private java.util.List<com.google.ortools.sat.LinearExpressionProto> exprs_ =
 
 1247      java.util.Collections.emptyList();
 
 1248    private void ensureExprsIsMutable() {
 
 1249      if (!((bitField0_ & 0x00000020) != 0)) {
 
 1250        exprs_ = 
new java.util.ArrayList<com.google.ortools.sat.LinearExpressionProto>(exprs_);
 
 1251        bitField0_ |= 0x00000020;
 
 1255    private com.google.protobuf.RepeatedFieldBuilder<
 
 1256        com.google.ortools.sat.LinearExpressionProto, com.google.ortools.sat.LinearExpressionProto.Builder, com.google.ortools.sat.LinearExpressionProtoOrBuilder> exprsBuilder_;
 
 1261    public java.util.List<com.google.ortools.sat.LinearExpressionProto> 
getExprsList() {
 
 1262      if (exprsBuilder_ == 
null) {
 
 1263        return java.util.Collections.unmodifiableList(exprs_);
 
 1265        return exprsBuilder_.getMessageList();
 
 
 1272      if (exprsBuilder_ == 
null) {
 
 1273        return exprs_.size();
 
 1275        return exprsBuilder_.getCount();
 
 
 1282      if (exprsBuilder_ == 
null) {
 
 1283        return exprs_.get(index);
 
 1285        return exprsBuilder_.getMessage(index);
 
 
 1292        int index, com.google.ortools.sat.LinearExpressionProto value) {
 
 1293      if (exprsBuilder_ == 
null) {
 
 1294        if (value == 
null) {
 
 1295          throw new NullPointerException();
 
 1297        ensureExprsIsMutable();
 
 1298        exprs_.set(index, value);
 
 1301        exprsBuilder_.setMessage(index, value);
 
 
 1309        int index, com.google.ortools.sat.LinearExpressionProto.Builder builderForValue) {
 
 1310      if (exprsBuilder_ == 
null) {
 
 1311        ensureExprsIsMutable();
 
 1312        exprs_.set(index, builderForValue.build());
 
 1315        exprsBuilder_.setMessage(index, builderForValue.build());
 
 
 1322    public Builder 
addExprs(com.google.ortools.sat.LinearExpressionProto value) {
 
 1323      if (exprsBuilder_ == 
null) {
 
 1324        if (value == 
null) {
 
 1325          throw new NullPointerException();
 
 1327        ensureExprsIsMutable();
 
 1331        exprsBuilder_.addMessage(value);
 
 
 1339        int index, com.google.ortools.sat.LinearExpressionProto value) {
 
 1340      if (exprsBuilder_ == 
null) {
 
 1341        if (value == 
null) {
 
 1342          throw new NullPointerException();
 
 1344        ensureExprsIsMutable();
 
 1345        exprs_.add(index, value);
 
 1348        exprsBuilder_.addMessage(index, value);
 
 
 1356        com.google.ortools.sat.LinearExpressionProto.Builder builderForValue) {
 
 1357      if (exprsBuilder_ == 
null) {
 
 1358        ensureExprsIsMutable();
 
 1359        exprs_.add(builderForValue.build());
 
 1362        exprsBuilder_.addMessage(builderForValue.build());
 
 
 1370        int index, com.google.ortools.sat.LinearExpressionProto.Builder builderForValue) {
 
 1371      if (exprsBuilder_ == 
null) {
 
 1372        ensureExprsIsMutable();
 
 1373        exprs_.add(index, builderForValue.build());
 
 1376        exprsBuilder_.addMessage(index, builderForValue.build());
 
 
 1384        java.lang.Iterable<? extends com.google.ortools.sat.LinearExpressionProto> values) {
 
 1385      if (exprsBuilder_ == 
null) {
 
 1386        ensureExprsIsMutable();
 
 1387        com.google.protobuf.AbstractMessageLite.Builder.addAll(
 
 1391        exprsBuilder_.addAllMessages(values);
 
 
 1399      if (exprsBuilder_ == 
null) {
 
 1400        exprs_ = java.util.Collections.emptyList();
 
 1401        bitField0_ = (bitField0_ & ~0x00000020);
 
 1404        exprsBuilder_.clear();
 
 
 1412      if (exprsBuilder_ == 
null) {
 
 1413        ensureExprsIsMutable();
 
 1414        exprs_.remove(index);
 
 1417        exprsBuilder_.remove(index);
 
 
 1426      return internalGetExprsFieldBuilder().getBuilder(index);
 
 
 1433      if (exprsBuilder_ == 
null) {
 
 1434        return exprs_.get(index);  } 
else {
 
 1435        return exprsBuilder_.getMessageOrBuilder(index);
 
 
 1441    public java.util.List<? extends com.google.ortools.sat.LinearExpressionProtoOrBuilder> 
 
 1443      if (exprsBuilder_ != 
null) {
 
 1444        return exprsBuilder_.getMessageOrBuilderList();
 
 1446        return java.util.Collections.unmodifiableList(exprs_);
 
 
 1453      return internalGetExprsFieldBuilder().addBuilder(
 
 1454          com.google.ortools.sat.LinearExpressionProto.getDefaultInstance());
 
 
 1461      return internalGetExprsFieldBuilder().addBuilder(
 
 1462          index, com.google.ortools.sat.LinearExpressionProto.getDefaultInstance());
 
 
 1467    public java.util.List<com.google.ortools.sat.LinearExpressionProto.Builder> 
 
 1469      return internalGetExprsFieldBuilder().getBuilderList();
 
 
 1471    private com.google.protobuf.RepeatedFieldBuilder<
 
 1472        com.google.ortools.sat.LinearExpressionProto, com.google.ortools.sat.LinearExpressionProto.Builder, com.google.ortools.sat.LinearExpressionProtoOrBuilder> 
 
 1473        internalGetExprsFieldBuilder() {
 
 1474      if (exprsBuilder_ == 
null) {
 
 1475        exprsBuilder_ = 
new com.google.protobuf.RepeatedFieldBuilder<
 
 1476            com.google.ortools.sat.LinearExpressionProto, com.google.ortools.sat.LinearExpressionProto.Builder, com.google.ortools.sat.LinearExpressionProtoOrBuilder>(
 
 1478                ((bitField0_ & 0x00000020) != 0),
 
 1479                getParentForChildren(),
 
 1483      return exprsBuilder_;
 
 
 1492    DEFAULT_INSTANCE = 
new com.google.ortools.sat.ElementConstraintProto();
 
 1496    return DEFAULT_INSTANCE;
 
 
 1503        com.google.protobuf.CodedInputStream input,
 
 1504        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
 
 1505        throws com.google.protobuf.InvalidProtocolBufferException {
 
 1508        builder.mergeFrom(input, extensionRegistry);
 
 1509      } 
catch (com.google.protobuf.InvalidProtocolBufferException e) {
 
 1510        throw e.setUnfinishedMessage(builder.buildPartial());
 
 1511      } 
catch (com.google.protobuf.UninitializedMessageException e) {
 
 1512        throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
 
 1513      } 
catch (java.io.IOException e) {
 
 1514        throw new com.google.protobuf.InvalidProtocolBufferException(e)
 
 1515            .setUnfinishedMessage(builder.buildPartial());
 
 1517      return builder.buildPartial();
 
 1521  public static com.google.protobuf.Parser<ElementConstraintProto> 
parser() {
 
 
 1532    return DEFAULT_INSTANCE;