001    // Generated by the protocol buffer compiler.  DO NOT EDIT!
002    // source: core/descriptor.loader.java/src/jvm_descriptors.proto
003    
004    package org.jetbrains.kotlin.serialization.jvm;
005    
006    public final class JvmProtoBuf {
007      private JvmProtoBuf() {}
008      public static void registerAllExtensions(
009          org.jetbrains.kotlin.protobuf.ExtensionRegistryLite registry) {
010        registry.add(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.constructorSignature);
011        registry.add(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.methodSignature);
012        registry.add(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.propertySignature);
013        registry.add(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.typeAnnotation);
014        registry.add(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.isRaw);
015        registry.add(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.typeParameterAnnotation);
016        registry.add(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.classModuleName);
017        registry.add(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.packageModuleName);
018      }
019      public interface StringTableTypesOrBuilder extends
020          // @@protoc_insertion_point(interface_extends:org.jetbrains.kotlin.serialization.jvm.StringTableTypes)
021          org.jetbrains.kotlin.protobuf.MessageLiteOrBuilder {
022    
023        /**
024         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
025         */
026        java.util.List<org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record> 
027            getRecordList();
028        /**
029         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
030         */
031        org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record getRecord(int index);
032        /**
033         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
034         */
035        int getRecordCount();
036    
037        /**
038         * <code>repeated int32 local_name = 5 [packed = true];</code>
039         *
040         * <pre>
041         * Indices of strings which are names of local classes or anonymous objects
042         * </pre>
043         */
044        java.util.List<java.lang.Integer> getLocalNameList();
045        /**
046         * <code>repeated int32 local_name = 5 [packed = true];</code>
047         *
048         * <pre>
049         * Indices of strings which are names of local classes or anonymous objects
050         * </pre>
051         */
052        int getLocalNameCount();
053        /**
054         * <code>repeated int32 local_name = 5 [packed = true];</code>
055         *
056         * <pre>
057         * Indices of strings which are names of local classes or anonymous objects
058         * </pre>
059         */
060        int getLocalName(int index);
061      }
062      /**
063       * Protobuf type {@code org.jetbrains.kotlin.serialization.jvm.StringTableTypes}
064       */
065      public static final class StringTableTypes extends
066          org.jetbrains.kotlin.protobuf.GeneratedMessageLite implements
067          // @@protoc_insertion_point(message_implements:org.jetbrains.kotlin.serialization.jvm.StringTableTypes)
068          StringTableTypesOrBuilder {
069        // Use StringTableTypes.newBuilder() to construct.
070        private StringTableTypes(org.jetbrains.kotlin.protobuf.GeneratedMessageLite.Builder builder) {
071          super(builder);
072          this.unknownFields = builder.getUnknownFields();
073        }
074        private StringTableTypes(boolean noInit) { this.unknownFields = org.jetbrains.kotlin.protobuf.ByteString.EMPTY;}
075    
076        private static final StringTableTypes defaultInstance;
077        public static StringTableTypes getDefaultInstance() {
078          return defaultInstance;
079        }
080    
081        public StringTableTypes getDefaultInstanceForType() {
082          return defaultInstance;
083        }
084    
085        private final org.jetbrains.kotlin.protobuf.ByteString unknownFields;
086        private StringTableTypes(
087            org.jetbrains.kotlin.protobuf.CodedInputStream input,
088            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
089            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
090          initFields();
091          int mutable_bitField0_ = 0;
092          org.jetbrains.kotlin.protobuf.ByteString.Output unknownFieldsOutput =
093              org.jetbrains.kotlin.protobuf.ByteString.newOutput();
094          org.jetbrains.kotlin.protobuf.CodedOutputStream unknownFieldsCodedOutput =
095              org.jetbrains.kotlin.protobuf.CodedOutputStream.newInstance(
096                  unknownFieldsOutput);
097          try {
098            boolean done = false;
099            while (!done) {
100              int tag = input.readTag();
101              switch (tag) {
102                case 0:
103                  done = true;
104                  break;
105                default: {
106                  if (!parseUnknownField(input, unknownFieldsCodedOutput,
107                                         extensionRegistry, tag)) {
108                    done = true;
109                  }
110                  break;
111                }
112                case 10: {
113                  if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
114                    record_ = new java.util.ArrayList<org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record>();
115                    mutable_bitField0_ |= 0x00000001;
116                  }
117                  record_.add(input.readMessage(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.PARSER, extensionRegistry));
118                  break;
119                }
120                case 40: {
121                  if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
122                    localName_ = new java.util.ArrayList<java.lang.Integer>();
123                    mutable_bitField0_ |= 0x00000002;
124                  }
125                  localName_.add(input.readInt32());
126                  break;
127                }
128                case 42: {
129                  int length = input.readRawVarint32();
130                  int limit = input.pushLimit(length);
131                  if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
132                    localName_ = new java.util.ArrayList<java.lang.Integer>();
133                    mutable_bitField0_ |= 0x00000002;
134                  }
135                  while (input.getBytesUntilLimit() > 0) {
136                    localName_.add(input.readInt32());
137                  }
138                  input.popLimit(limit);
139                  break;
140                }
141              }
142            }
143          } catch (org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException e) {
144            throw e.setUnfinishedMessage(this);
145          } catch (java.io.IOException e) {
146            throw new org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException(
147                e.getMessage()).setUnfinishedMessage(this);
148          } finally {
149            if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
150              record_ = java.util.Collections.unmodifiableList(record_);
151            }
152            if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
153              localName_ = java.util.Collections.unmodifiableList(localName_);
154            }
155            try {
156              unknownFieldsCodedOutput.flush();
157            } catch (java.io.IOException e) {
158            // Should not happen
159            } finally {
160              unknownFields = unknownFieldsOutput.toByteString();
161            }
162            makeExtensionsImmutable();
163          }
164        }
165        public static org.jetbrains.kotlin.protobuf.Parser<StringTableTypes> PARSER =
166            new org.jetbrains.kotlin.protobuf.AbstractParser<StringTableTypes>() {
167          public StringTableTypes parsePartialFrom(
168              org.jetbrains.kotlin.protobuf.CodedInputStream input,
169              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
170              throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
171            return new StringTableTypes(input, extensionRegistry);
172          }
173        };
174    
175        @java.lang.Override
176        public org.jetbrains.kotlin.protobuf.Parser<StringTableTypes> getParserForType() {
177          return PARSER;
178        }
179    
180        public interface RecordOrBuilder extends
181            // @@protoc_insertion_point(interface_extends:org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record)
182            org.jetbrains.kotlin.protobuf.MessageLiteOrBuilder {
183    
184          /**
185           * <code>optional int32 range = 1 [default = 1];</code>
186           *
187           * <pre>
188           * The number of times this record should be repeated; this is used to collapse identical subsequent records in the list
189           * </pre>
190           */
191          boolean hasRange();
192          /**
193           * <code>optional int32 range = 1 [default = 1];</code>
194           *
195           * <pre>
196           * The number of times this record should be repeated; this is used to collapse identical subsequent records in the list
197           * </pre>
198           */
199          int getRange();
200    
201          /**
202           * <code>optional int32 predefined_index = 2;</code>
203           *
204           * <pre>
205           * Index of the predefined constant. If this field is present, the associated string is ignored
206           * </pre>
207           */
208          boolean hasPredefinedIndex();
209          /**
210           * <code>optional int32 predefined_index = 2;</code>
211           *
212           * <pre>
213           * Index of the predefined constant. If this field is present, the associated string is ignored
214           * </pre>
215           */
216          int getPredefinedIndex();
217    
218          /**
219           * <code>optional string string = 6;</code>
220           *
221           * <pre>
222           * A string which should be used. If this field is present, both the associated string and the predefined string index are ignored
223           * </pre>
224           */
225          boolean hasString();
226          /**
227           * <code>optional string string = 6;</code>
228           *
229           * <pre>
230           * A string which should be used. If this field is present, both the associated string and the predefined string index are ignored
231           * </pre>
232           */
233          java.lang.String getString();
234          /**
235           * <code>optional string string = 6;</code>
236           *
237           * <pre>
238           * A string which should be used. If this field is present, both the associated string and the predefined string index are ignored
239           * </pre>
240           */
241          org.jetbrains.kotlin.protobuf.ByteString
242              getStringBytes();
243    
244          /**
245           * <code>optional .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record.Operation operation = 3 [default = NONE];</code>
246           *
247           * <pre>
248           * Perform a described operation on the string
249           * </pre>
250           */
251          boolean hasOperation();
252          /**
253           * <code>optional .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record.Operation operation = 3 [default = NONE];</code>
254           *
255           * <pre>
256           * Perform a described operation on the string
257           * </pre>
258           */
259          org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.Operation getOperation();
260    
261          /**
262           * <code>repeated int32 substring_index = 4 [packed = true];</code>
263           *
264           * <pre>
265           * If this field is present, the "substring" operation must be performed with the first element of this list as the start index,
266           * and the second element as the end index.
267           * If an operation is not NONE, it's applied _after_ this substring operation
268           * </pre>
269           */
270          java.util.List<java.lang.Integer> getSubstringIndexList();
271          /**
272           * <code>repeated int32 substring_index = 4 [packed = true];</code>
273           *
274           * <pre>
275           * If this field is present, the "substring" operation must be performed with the first element of this list as the start index,
276           * and the second element as the end index.
277           * If an operation is not NONE, it's applied _after_ this substring operation
278           * </pre>
279           */
280          int getSubstringIndexCount();
281          /**
282           * <code>repeated int32 substring_index = 4 [packed = true];</code>
283           *
284           * <pre>
285           * If this field is present, the "substring" operation must be performed with the first element of this list as the start index,
286           * and the second element as the end index.
287           * If an operation is not NONE, it's applied _after_ this substring operation
288           * </pre>
289           */
290          int getSubstringIndex(int index);
291    
292          /**
293           * <code>repeated int32 replace_char = 5 [packed = true];</code>
294           *
295           * <pre>
296           * If this field is present, the "replaceAll" operation must be performed with the first element of this list as the code point
297           * of the character to replace, and the second element as the code point of the replacement character
298           * </pre>
299           */
300          java.util.List<java.lang.Integer> getReplaceCharList();
301          /**
302           * <code>repeated int32 replace_char = 5 [packed = true];</code>
303           *
304           * <pre>
305           * If this field is present, the "replaceAll" operation must be performed with the first element of this list as the code point
306           * of the character to replace, and the second element as the code point of the replacement character
307           * </pre>
308           */
309          int getReplaceCharCount();
310          /**
311           * <code>repeated int32 replace_char = 5 [packed = true];</code>
312           *
313           * <pre>
314           * If this field is present, the "replaceAll" operation must be performed with the first element of this list as the code point
315           * of the character to replace, and the second element as the code point of the replacement character
316           * </pre>
317           */
318          int getReplaceChar(int index);
319        }
320        /**
321         * Protobuf type {@code org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record}
322         */
323        public static final class Record extends
324            org.jetbrains.kotlin.protobuf.GeneratedMessageLite implements
325            // @@protoc_insertion_point(message_implements:org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record)
326            RecordOrBuilder {
327          // Use Record.newBuilder() to construct.
328          private Record(org.jetbrains.kotlin.protobuf.GeneratedMessageLite.Builder builder) {
329            super(builder);
330            this.unknownFields = builder.getUnknownFields();
331          }
332          private Record(boolean noInit) { this.unknownFields = org.jetbrains.kotlin.protobuf.ByteString.EMPTY;}
333    
334          private static final Record defaultInstance;
335          public static Record getDefaultInstance() {
336            return defaultInstance;
337          }
338    
339          public Record getDefaultInstanceForType() {
340            return defaultInstance;
341          }
342    
343          private final org.jetbrains.kotlin.protobuf.ByteString unknownFields;
344          private Record(
345              org.jetbrains.kotlin.protobuf.CodedInputStream input,
346              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
347              throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
348            initFields();
349            int mutable_bitField0_ = 0;
350            org.jetbrains.kotlin.protobuf.ByteString.Output unknownFieldsOutput =
351                org.jetbrains.kotlin.protobuf.ByteString.newOutput();
352            org.jetbrains.kotlin.protobuf.CodedOutputStream unknownFieldsCodedOutput =
353                org.jetbrains.kotlin.protobuf.CodedOutputStream.newInstance(
354                    unknownFieldsOutput);
355            try {
356              boolean done = false;
357              while (!done) {
358                int tag = input.readTag();
359                switch (tag) {
360                  case 0:
361                    done = true;
362                    break;
363                  default: {
364                    if (!parseUnknownField(input, unknownFieldsCodedOutput,
365                                           extensionRegistry, tag)) {
366                      done = true;
367                    }
368                    break;
369                  }
370                  case 8: {
371                    bitField0_ |= 0x00000001;
372                    range_ = input.readInt32();
373                    break;
374                  }
375                  case 16: {
376                    bitField0_ |= 0x00000002;
377                    predefinedIndex_ = input.readInt32();
378                    break;
379                  }
380                  case 24: {
381                    int rawValue = input.readEnum();
382                    org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.Operation value = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.Operation.valueOf(rawValue);
383                    if (value == null) {
384                      unknownFieldsCodedOutput.writeRawVarint32(tag);
385                      unknownFieldsCodedOutput.writeRawVarint32(rawValue);
386                    } else {
387                      bitField0_ |= 0x00000008;
388                      operation_ = value;
389                    }
390                    break;
391                  }
392                  case 32: {
393                    if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
394                      substringIndex_ = new java.util.ArrayList<java.lang.Integer>();
395                      mutable_bitField0_ |= 0x00000010;
396                    }
397                    substringIndex_.add(input.readInt32());
398                    break;
399                  }
400                  case 34: {
401                    int length = input.readRawVarint32();
402                    int limit = input.pushLimit(length);
403                    if (!((mutable_bitField0_ & 0x00000010) == 0x00000010) && input.getBytesUntilLimit() > 0) {
404                      substringIndex_ = new java.util.ArrayList<java.lang.Integer>();
405                      mutable_bitField0_ |= 0x00000010;
406                    }
407                    while (input.getBytesUntilLimit() > 0) {
408                      substringIndex_.add(input.readInt32());
409                    }
410                    input.popLimit(limit);
411                    break;
412                  }
413                  case 40: {
414                    if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
415                      replaceChar_ = new java.util.ArrayList<java.lang.Integer>();
416                      mutable_bitField0_ |= 0x00000020;
417                    }
418                    replaceChar_.add(input.readInt32());
419                    break;
420                  }
421                  case 42: {
422                    int length = input.readRawVarint32();
423                    int limit = input.pushLimit(length);
424                    if (!((mutable_bitField0_ & 0x00000020) == 0x00000020) && input.getBytesUntilLimit() > 0) {
425                      replaceChar_ = new java.util.ArrayList<java.lang.Integer>();
426                      mutable_bitField0_ |= 0x00000020;
427                    }
428                    while (input.getBytesUntilLimit() > 0) {
429                      replaceChar_.add(input.readInt32());
430                    }
431                    input.popLimit(limit);
432                    break;
433                  }
434                  case 50: {
435                    org.jetbrains.kotlin.protobuf.ByteString bs = input.readBytes();
436                    bitField0_ |= 0x00000004;
437                    string_ = bs;
438                    break;
439                  }
440                }
441              }
442            } catch (org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException e) {
443              throw e.setUnfinishedMessage(this);
444            } catch (java.io.IOException e) {
445              throw new org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException(
446                  e.getMessage()).setUnfinishedMessage(this);
447            } finally {
448              if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
449                substringIndex_ = java.util.Collections.unmodifiableList(substringIndex_);
450              }
451              if (((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
452                replaceChar_ = java.util.Collections.unmodifiableList(replaceChar_);
453              }
454              try {
455                unknownFieldsCodedOutput.flush();
456              } catch (java.io.IOException e) {
457              // Should not happen
458              } finally {
459                unknownFields = unknownFieldsOutput.toByteString();
460              }
461              makeExtensionsImmutable();
462            }
463          }
464          public static org.jetbrains.kotlin.protobuf.Parser<Record> PARSER =
465              new org.jetbrains.kotlin.protobuf.AbstractParser<Record>() {
466            public Record parsePartialFrom(
467                org.jetbrains.kotlin.protobuf.CodedInputStream input,
468                org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
469                throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
470              return new Record(input, extensionRegistry);
471            }
472          };
473    
474          @java.lang.Override
475          public org.jetbrains.kotlin.protobuf.Parser<Record> getParserForType() {
476            return PARSER;
477          }
478    
479          /**
480           * Protobuf enum {@code org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record.Operation}
481           */
482          public enum Operation
483              implements org.jetbrains.kotlin.protobuf.Internal.EnumLite {
484            /**
485             * <code>NONE = 0;</code>
486             */
487            NONE(0, 0),
488            /**
489             * <code>INTERNAL_TO_CLASS_ID = 1;</code>
490             *
491             * <pre>
492             * replaceAll('$', '.')
493             * java/util/Map$Entry -&gt; java/util/Map.Entry;
494             * </pre>
495             */
496            INTERNAL_TO_CLASS_ID(1, 1),
497            /**
498             * <code>DESC_TO_CLASS_ID = 2;</code>
499             *
500             * <pre>
501             * substring(1, length - 1) and then replaceAll('$', '.')
502             * Ljava/util/Map$Entry; -&gt; java/util/Map.Entry
503             * </pre>
504             */
505            DESC_TO_CLASS_ID(2, 2),
506            ;
507    
508            /**
509             * <code>NONE = 0;</code>
510             */
511            public static final int NONE_VALUE = 0;
512            /**
513             * <code>INTERNAL_TO_CLASS_ID = 1;</code>
514             *
515             * <pre>
516             * replaceAll('$', '.')
517             * java/util/Map$Entry -&gt; java/util/Map.Entry;
518             * </pre>
519             */
520            public static final int INTERNAL_TO_CLASS_ID_VALUE = 1;
521            /**
522             * <code>DESC_TO_CLASS_ID = 2;</code>
523             *
524             * <pre>
525             * substring(1, length - 1) and then replaceAll('$', '.')
526             * Ljava/util/Map$Entry; -&gt; java/util/Map.Entry
527             * </pre>
528             */
529            public static final int DESC_TO_CLASS_ID_VALUE = 2;
530    
531    
532            public final int getNumber() { return value; }
533    
534            public static Operation valueOf(int value) {
535              switch (value) {
536                case 0: return NONE;
537                case 1: return INTERNAL_TO_CLASS_ID;
538                case 2: return DESC_TO_CLASS_ID;
539                default: return null;
540              }
541            }
542    
543            public static org.jetbrains.kotlin.protobuf.Internal.EnumLiteMap<Operation>
544                internalGetValueMap() {
545              return internalValueMap;
546            }
547            private static org.jetbrains.kotlin.protobuf.Internal.EnumLiteMap<Operation>
548                internalValueMap =
549                  new org.jetbrains.kotlin.protobuf.Internal.EnumLiteMap<Operation>() {
550                    public Operation findValueByNumber(int number) {
551                      return Operation.valueOf(number);
552                    }
553                  };
554    
555            private final int value;
556    
557            private Operation(int index, int value) {
558              this.value = value;
559            }
560    
561            // @@protoc_insertion_point(enum_scope:org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record.Operation)
562          }
563    
564          private int bitField0_;
565          public static final int RANGE_FIELD_NUMBER = 1;
566          private int range_;
567          /**
568           * <code>optional int32 range = 1 [default = 1];</code>
569           *
570           * <pre>
571           * The number of times this record should be repeated; this is used to collapse identical subsequent records in the list
572           * </pre>
573           */
574          public boolean hasRange() {
575            return ((bitField0_ & 0x00000001) == 0x00000001);
576          }
577          /**
578           * <code>optional int32 range = 1 [default = 1];</code>
579           *
580           * <pre>
581           * The number of times this record should be repeated; this is used to collapse identical subsequent records in the list
582           * </pre>
583           */
584          public int getRange() {
585            return range_;
586          }
587    
588          public static final int PREDEFINED_INDEX_FIELD_NUMBER = 2;
589          private int predefinedIndex_;
590          /**
591           * <code>optional int32 predefined_index = 2;</code>
592           *
593           * <pre>
594           * Index of the predefined constant. If this field is present, the associated string is ignored
595           * </pre>
596           */
597          public boolean hasPredefinedIndex() {
598            return ((bitField0_ & 0x00000002) == 0x00000002);
599          }
600          /**
601           * <code>optional int32 predefined_index = 2;</code>
602           *
603           * <pre>
604           * Index of the predefined constant. If this field is present, the associated string is ignored
605           * </pre>
606           */
607          public int getPredefinedIndex() {
608            return predefinedIndex_;
609          }
610    
611          public static final int STRING_FIELD_NUMBER = 6;
612          private java.lang.Object string_;
613          /**
614           * <code>optional string string = 6;</code>
615           *
616           * <pre>
617           * A string which should be used. If this field is present, both the associated string and the predefined string index are ignored
618           * </pre>
619           */
620          public boolean hasString() {
621            return ((bitField0_ & 0x00000004) == 0x00000004);
622          }
623          /**
624           * <code>optional string string = 6;</code>
625           *
626           * <pre>
627           * A string which should be used. If this field is present, both the associated string and the predefined string index are ignored
628           * </pre>
629           */
630          public java.lang.String getString() {
631            java.lang.Object ref = string_;
632            if (ref instanceof java.lang.String) {
633              return (java.lang.String) ref;
634            } else {
635              org.jetbrains.kotlin.protobuf.ByteString bs = 
636                  (org.jetbrains.kotlin.protobuf.ByteString) ref;
637              java.lang.String s = bs.toStringUtf8();
638              if (bs.isValidUtf8()) {
639                string_ = s;
640              }
641              return s;
642            }
643          }
644          /**
645           * <code>optional string string = 6;</code>
646           *
647           * <pre>
648           * A string which should be used. If this field is present, both the associated string and the predefined string index are ignored
649           * </pre>
650           */
651          public org.jetbrains.kotlin.protobuf.ByteString
652              getStringBytes() {
653            java.lang.Object ref = string_;
654            if (ref instanceof java.lang.String) {
655              org.jetbrains.kotlin.protobuf.ByteString b = 
656                  org.jetbrains.kotlin.protobuf.ByteString.copyFromUtf8(
657                      (java.lang.String) ref);
658              string_ = b;
659              return b;
660            } else {
661              return (org.jetbrains.kotlin.protobuf.ByteString) ref;
662            }
663          }
664    
665          public static final int OPERATION_FIELD_NUMBER = 3;
666          private org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.Operation operation_;
667          /**
668           * <code>optional .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record.Operation operation = 3 [default = NONE];</code>
669           *
670           * <pre>
671           * Perform a described operation on the string
672           * </pre>
673           */
674          public boolean hasOperation() {
675            return ((bitField0_ & 0x00000008) == 0x00000008);
676          }
677          /**
678           * <code>optional .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record.Operation operation = 3 [default = NONE];</code>
679           *
680           * <pre>
681           * Perform a described operation on the string
682           * </pre>
683           */
684          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.Operation getOperation() {
685            return operation_;
686          }
687    
688          public static final int SUBSTRING_INDEX_FIELD_NUMBER = 4;
689          private java.util.List<java.lang.Integer> substringIndex_;
690          /**
691           * <code>repeated int32 substring_index = 4 [packed = true];</code>
692           *
693           * <pre>
694           * If this field is present, the "substring" operation must be performed with the first element of this list as the start index,
695           * and the second element as the end index.
696           * If an operation is not NONE, it's applied _after_ this substring operation
697           * </pre>
698           */
699          public java.util.List<java.lang.Integer>
700              getSubstringIndexList() {
701            return substringIndex_;
702          }
703          /**
704           * <code>repeated int32 substring_index = 4 [packed = true];</code>
705           *
706           * <pre>
707           * If this field is present, the "substring" operation must be performed with the first element of this list as the start index,
708           * and the second element as the end index.
709           * If an operation is not NONE, it's applied _after_ this substring operation
710           * </pre>
711           */
712          public int getSubstringIndexCount() {
713            return substringIndex_.size();
714          }
715          /**
716           * <code>repeated int32 substring_index = 4 [packed = true];</code>
717           *
718           * <pre>
719           * If this field is present, the "substring" operation must be performed with the first element of this list as the start index,
720           * and the second element as the end index.
721           * If an operation is not NONE, it's applied _after_ this substring operation
722           * </pre>
723           */
724          public int getSubstringIndex(int index) {
725            return substringIndex_.get(index);
726          }
727          private int substringIndexMemoizedSerializedSize = -1;
728    
729          public static final int REPLACE_CHAR_FIELD_NUMBER = 5;
730          private java.util.List<java.lang.Integer> replaceChar_;
731          /**
732           * <code>repeated int32 replace_char = 5 [packed = true];</code>
733           *
734           * <pre>
735           * If this field is present, the "replaceAll" operation must be performed with the first element of this list as the code point
736           * of the character to replace, and the second element as the code point of the replacement character
737           * </pre>
738           */
739          public java.util.List<java.lang.Integer>
740              getReplaceCharList() {
741            return replaceChar_;
742          }
743          /**
744           * <code>repeated int32 replace_char = 5 [packed = true];</code>
745           *
746           * <pre>
747           * If this field is present, the "replaceAll" operation must be performed with the first element of this list as the code point
748           * of the character to replace, and the second element as the code point of the replacement character
749           * </pre>
750           */
751          public int getReplaceCharCount() {
752            return replaceChar_.size();
753          }
754          /**
755           * <code>repeated int32 replace_char = 5 [packed = true];</code>
756           *
757           * <pre>
758           * If this field is present, the "replaceAll" operation must be performed with the first element of this list as the code point
759           * of the character to replace, and the second element as the code point of the replacement character
760           * </pre>
761           */
762          public int getReplaceChar(int index) {
763            return replaceChar_.get(index);
764          }
765          private int replaceCharMemoizedSerializedSize = -1;
766    
767          private void initFields() {
768            range_ = 1;
769            predefinedIndex_ = 0;
770            string_ = "";
771            operation_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.Operation.NONE;
772            substringIndex_ = java.util.Collections.emptyList();
773            replaceChar_ = java.util.Collections.emptyList();
774          }
775          private byte memoizedIsInitialized = -1;
776          public final boolean isInitialized() {
777            byte isInitialized = memoizedIsInitialized;
778            if (isInitialized == 1) return true;
779            if (isInitialized == 0) return false;
780    
781            memoizedIsInitialized = 1;
782            return true;
783          }
784    
785          public void writeTo(org.jetbrains.kotlin.protobuf.CodedOutputStream output)
786                              throws java.io.IOException {
787            getSerializedSize();
788            if (((bitField0_ & 0x00000001) == 0x00000001)) {
789              output.writeInt32(1, range_);
790            }
791            if (((bitField0_ & 0x00000002) == 0x00000002)) {
792              output.writeInt32(2, predefinedIndex_);
793            }
794            if (((bitField0_ & 0x00000008) == 0x00000008)) {
795              output.writeEnum(3, operation_.getNumber());
796            }
797            if (getSubstringIndexList().size() > 0) {
798              output.writeRawVarint32(34);
799              output.writeRawVarint32(substringIndexMemoizedSerializedSize);
800            }
801            for (int i = 0; i < substringIndex_.size(); i++) {
802              output.writeInt32NoTag(substringIndex_.get(i));
803            }
804            if (getReplaceCharList().size() > 0) {
805              output.writeRawVarint32(42);
806              output.writeRawVarint32(replaceCharMemoizedSerializedSize);
807            }
808            for (int i = 0; i < replaceChar_.size(); i++) {
809              output.writeInt32NoTag(replaceChar_.get(i));
810            }
811            if (((bitField0_ & 0x00000004) == 0x00000004)) {
812              output.writeBytes(6, getStringBytes());
813            }
814            output.writeRawBytes(unknownFields);
815          }
816    
817          private int memoizedSerializedSize = -1;
818          public int getSerializedSize() {
819            int size = memoizedSerializedSize;
820            if (size != -1) return size;
821    
822            size = 0;
823            if (((bitField0_ & 0x00000001) == 0x00000001)) {
824              size += org.jetbrains.kotlin.protobuf.CodedOutputStream
825                .computeInt32Size(1, range_);
826            }
827            if (((bitField0_ & 0x00000002) == 0x00000002)) {
828              size += org.jetbrains.kotlin.protobuf.CodedOutputStream
829                .computeInt32Size(2, predefinedIndex_);
830            }
831            if (((bitField0_ & 0x00000008) == 0x00000008)) {
832              size += org.jetbrains.kotlin.protobuf.CodedOutputStream
833                .computeEnumSize(3, operation_.getNumber());
834            }
835            {
836              int dataSize = 0;
837              for (int i = 0; i < substringIndex_.size(); i++) {
838                dataSize += org.jetbrains.kotlin.protobuf.CodedOutputStream
839                  .computeInt32SizeNoTag(substringIndex_.get(i));
840              }
841              size += dataSize;
842              if (!getSubstringIndexList().isEmpty()) {
843                size += 1;
844                size += org.jetbrains.kotlin.protobuf.CodedOutputStream
845                    .computeInt32SizeNoTag(dataSize);
846              }
847              substringIndexMemoizedSerializedSize = dataSize;
848            }
849            {
850              int dataSize = 0;
851              for (int i = 0; i < replaceChar_.size(); i++) {
852                dataSize += org.jetbrains.kotlin.protobuf.CodedOutputStream
853                  .computeInt32SizeNoTag(replaceChar_.get(i));
854              }
855              size += dataSize;
856              if (!getReplaceCharList().isEmpty()) {
857                size += 1;
858                size += org.jetbrains.kotlin.protobuf.CodedOutputStream
859                    .computeInt32SizeNoTag(dataSize);
860              }
861              replaceCharMemoizedSerializedSize = dataSize;
862            }
863            if (((bitField0_ & 0x00000004) == 0x00000004)) {
864              size += org.jetbrains.kotlin.protobuf.CodedOutputStream
865                .computeBytesSize(6, getStringBytes());
866            }
867            size += unknownFields.size();
868            memoizedSerializedSize = size;
869            return size;
870          }
871    
872          private static final long serialVersionUID = 0L;
873          @java.lang.Override
874          protected java.lang.Object writeReplace()
875              throws java.io.ObjectStreamException {
876            return super.writeReplace();
877          }
878    
879          public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record parseFrom(
880              org.jetbrains.kotlin.protobuf.ByteString data)
881              throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
882            return PARSER.parseFrom(data);
883          }
884          public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record parseFrom(
885              org.jetbrains.kotlin.protobuf.ByteString data,
886              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
887              throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
888            return PARSER.parseFrom(data, extensionRegistry);
889          }
890          public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record parseFrom(byte[] data)
891              throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
892            return PARSER.parseFrom(data);
893          }
894          public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record parseFrom(
895              byte[] data,
896              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
897              throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
898            return PARSER.parseFrom(data, extensionRegistry);
899          }
900          public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record parseFrom(java.io.InputStream input)
901              throws java.io.IOException {
902            return PARSER.parseFrom(input);
903          }
904          public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record parseFrom(
905              java.io.InputStream input,
906              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
907              throws java.io.IOException {
908            return PARSER.parseFrom(input, extensionRegistry);
909          }
910          public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record parseDelimitedFrom(java.io.InputStream input)
911              throws java.io.IOException {
912            return PARSER.parseDelimitedFrom(input);
913          }
914          public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record parseDelimitedFrom(
915              java.io.InputStream input,
916              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
917              throws java.io.IOException {
918            return PARSER.parseDelimitedFrom(input, extensionRegistry);
919          }
920          public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record parseFrom(
921              org.jetbrains.kotlin.protobuf.CodedInputStream input)
922              throws java.io.IOException {
923            return PARSER.parseFrom(input);
924          }
925          public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record parseFrom(
926              org.jetbrains.kotlin.protobuf.CodedInputStream input,
927              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
928              throws java.io.IOException {
929            return PARSER.parseFrom(input, extensionRegistry);
930          }
931    
932          public static Builder newBuilder() { return Builder.create(); }
933          public Builder newBuilderForType() { return newBuilder(); }
934          public static Builder newBuilder(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record prototype) {
935            return newBuilder().mergeFrom(prototype);
936          }
937          public Builder toBuilder() { return newBuilder(this); }
938    
939          /**
940           * Protobuf type {@code org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record}
941           */
942          public static final class Builder extends
943              org.jetbrains.kotlin.protobuf.GeneratedMessageLite.Builder<
944                org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record, Builder>
945              implements
946              // @@protoc_insertion_point(builder_implements:org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record)
947              org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.RecordOrBuilder {
948            // Construct using org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.newBuilder()
949            private Builder() {
950              maybeForceBuilderInitialization();
951            }
952    
953            private void maybeForceBuilderInitialization() {
954            }
955            private static Builder create() {
956              return new Builder();
957            }
958    
959            public Builder clear() {
960              super.clear();
961              range_ = 1;
962              bitField0_ = (bitField0_ & ~0x00000001);
963              predefinedIndex_ = 0;
964              bitField0_ = (bitField0_ & ~0x00000002);
965              string_ = "";
966              bitField0_ = (bitField0_ & ~0x00000004);
967              operation_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.Operation.NONE;
968              bitField0_ = (bitField0_ & ~0x00000008);
969              substringIndex_ = java.util.Collections.emptyList();
970              bitField0_ = (bitField0_ & ~0x00000010);
971              replaceChar_ = java.util.Collections.emptyList();
972              bitField0_ = (bitField0_ & ~0x00000020);
973              return this;
974            }
975    
976            public Builder clone() {
977              return create().mergeFrom(buildPartial());
978            }
979    
980            public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record getDefaultInstanceForType() {
981              return org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.getDefaultInstance();
982            }
983    
984            public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record build() {
985              org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record result = buildPartial();
986              if (!result.isInitialized()) {
987                throw newUninitializedMessageException(result);
988              }
989              return result;
990            }
991    
992            public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record buildPartial() {
993              org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record result = new org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record(this);
994              int from_bitField0_ = bitField0_;
995              int to_bitField0_ = 0;
996              if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
997                to_bitField0_ |= 0x00000001;
998              }
999              result.range_ = range_;
1000              if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
1001                to_bitField0_ |= 0x00000002;
1002              }
1003              result.predefinedIndex_ = predefinedIndex_;
1004              if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
1005                to_bitField0_ |= 0x00000004;
1006              }
1007              result.string_ = string_;
1008              if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
1009                to_bitField0_ |= 0x00000008;
1010              }
1011              result.operation_ = operation_;
1012              if (((bitField0_ & 0x00000010) == 0x00000010)) {
1013                substringIndex_ = java.util.Collections.unmodifiableList(substringIndex_);
1014                bitField0_ = (bitField0_ & ~0x00000010);
1015              }
1016              result.substringIndex_ = substringIndex_;
1017              if (((bitField0_ & 0x00000020) == 0x00000020)) {
1018                replaceChar_ = java.util.Collections.unmodifiableList(replaceChar_);
1019                bitField0_ = (bitField0_ & ~0x00000020);
1020              }
1021              result.replaceChar_ = replaceChar_;
1022              result.bitField0_ = to_bitField0_;
1023              return result;
1024            }
1025    
1026            public Builder mergeFrom(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record other) {
1027              if (other == org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.getDefaultInstance()) return this;
1028              if (other.hasRange()) {
1029                setRange(other.getRange());
1030              }
1031              if (other.hasPredefinedIndex()) {
1032                setPredefinedIndex(other.getPredefinedIndex());
1033              }
1034              if (other.hasString()) {
1035                bitField0_ |= 0x00000004;
1036                string_ = other.string_;
1037                
1038              }
1039              if (other.hasOperation()) {
1040                setOperation(other.getOperation());
1041              }
1042              if (!other.substringIndex_.isEmpty()) {
1043                if (substringIndex_.isEmpty()) {
1044                  substringIndex_ = other.substringIndex_;
1045                  bitField0_ = (bitField0_ & ~0x00000010);
1046                } else {
1047                  ensureSubstringIndexIsMutable();
1048                  substringIndex_.addAll(other.substringIndex_);
1049                }
1050                
1051              }
1052              if (!other.replaceChar_.isEmpty()) {
1053                if (replaceChar_.isEmpty()) {
1054                  replaceChar_ = other.replaceChar_;
1055                  bitField0_ = (bitField0_ & ~0x00000020);
1056                } else {
1057                  ensureReplaceCharIsMutable();
1058                  replaceChar_.addAll(other.replaceChar_);
1059                }
1060                
1061              }
1062              setUnknownFields(
1063                  getUnknownFields().concat(other.unknownFields));
1064              return this;
1065            }
1066    
1067            public final boolean isInitialized() {
1068              return true;
1069            }
1070    
1071            public Builder mergeFrom(
1072                org.jetbrains.kotlin.protobuf.CodedInputStream input,
1073                org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
1074                throws java.io.IOException {
1075              org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record parsedMessage = null;
1076              try {
1077                parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
1078              } catch (org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException e) {
1079                parsedMessage = (org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record) e.getUnfinishedMessage();
1080                throw e;
1081              } finally {
1082                if (parsedMessage != null) {
1083                  mergeFrom(parsedMessage);
1084                }
1085              }
1086              return this;
1087            }
1088            private int bitField0_;
1089    
1090            private int range_ = 1;
1091            /**
1092             * <code>optional int32 range = 1 [default = 1];</code>
1093             *
1094             * <pre>
1095             * The number of times this record should be repeated; this is used to collapse identical subsequent records in the list
1096             * </pre>
1097             */
1098            public boolean hasRange() {
1099              return ((bitField0_ & 0x00000001) == 0x00000001);
1100            }
1101            /**
1102             * <code>optional int32 range = 1 [default = 1];</code>
1103             *
1104             * <pre>
1105             * The number of times this record should be repeated; this is used to collapse identical subsequent records in the list
1106             * </pre>
1107             */
1108            public int getRange() {
1109              return range_;
1110            }
1111            /**
1112             * <code>optional int32 range = 1 [default = 1];</code>
1113             *
1114             * <pre>
1115             * The number of times this record should be repeated; this is used to collapse identical subsequent records in the list
1116             * </pre>
1117             */
1118            public Builder setRange(int value) {
1119              bitField0_ |= 0x00000001;
1120              range_ = value;
1121              
1122              return this;
1123            }
1124            /**
1125             * <code>optional int32 range = 1 [default = 1];</code>
1126             *
1127             * <pre>
1128             * The number of times this record should be repeated; this is used to collapse identical subsequent records in the list
1129             * </pre>
1130             */
1131            public Builder clearRange() {
1132              bitField0_ = (bitField0_ & ~0x00000001);
1133              range_ = 1;
1134              
1135              return this;
1136            }
1137    
1138            private int predefinedIndex_ ;
1139            /**
1140             * <code>optional int32 predefined_index = 2;</code>
1141             *
1142             * <pre>
1143             * Index of the predefined constant. If this field is present, the associated string is ignored
1144             * </pre>
1145             */
1146            public boolean hasPredefinedIndex() {
1147              return ((bitField0_ & 0x00000002) == 0x00000002);
1148            }
1149            /**
1150             * <code>optional int32 predefined_index = 2;</code>
1151             *
1152             * <pre>
1153             * Index of the predefined constant. If this field is present, the associated string is ignored
1154             * </pre>
1155             */
1156            public int getPredefinedIndex() {
1157              return predefinedIndex_;
1158            }
1159            /**
1160             * <code>optional int32 predefined_index = 2;</code>
1161             *
1162             * <pre>
1163             * Index of the predefined constant. If this field is present, the associated string is ignored
1164             * </pre>
1165             */
1166            public Builder setPredefinedIndex(int value) {
1167              bitField0_ |= 0x00000002;
1168              predefinedIndex_ = value;
1169              
1170              return this;
1171            }
1172            /**
1173             * <code>optional int32 predefined_index = 2;</code>
1174             *
1175             * <pre>
1176             * Index of the predefined constant. If this field is present, the associated string is ignored
1177             * </pre>
1178             */
1179            public Builder clearPredefinedIndex() {
1180              bitField0_ = (bitField0_ & ~0x00000002);
1181              predefinedIndex_ = 0;
1182              
1183              return this;
1184            }
1185    
1186            private java.lang.Object string_ = "";
1187            /**
1188             * <code>optional string string = 6;</code>
1189             *
1190             * <pre>
1191             * A string which should be used. If this field is present, both the associated string and the predefined string index are ignored
1192             * </pre>
1193             */
1194            public boolean hasString() {
1195              return ((bitField0_ & 0x00000004) == 0x00000004);
1196            }
1197            /**
1198             * <code>optional string string = 6;</code>
1199             *
1200             * <pre>
1201             * A string which should be used. If this field is present, both the associated string and the predefined string index are ignored
1202             * </pre>
1203             */
1204            public java.lang.String getString() {
1205              java.lang.Object ref = string_;
1206              if (!(ref instanceof java.lang.String)) {
1207                org.jetbrains.kotlin.protobuf.ByteString bs =
1208                    (org.jetbrains.kotlin.protobuf.ByteString) ref;
1209                java.lang.String s = bs.toStringUtf8();
1210                if (bs.isValidUtf8()) {
1211                  string_ = s;
1212                }
1213                return s;
1214              } else {
1215                return (java.lang.String) ref;
1216              }
1217            }
1218            /**
1219             * <code>optional string string = 6;</code>
1220             *
1221             * <pre>
1222             * A string which should be used. If this field is present, both the associated string and the predefined string index are ignored
1223             * </pre>
1224             */
1225            public org.jetbrains.kotlin.protobuf.ByteString
1226                getStringBytes() {
1227              java.lang.Object ref = string_;
1228              if (ref instanceof String) {
1229                org.jetbrains.kotlin.protobuf.ByteString b = 
1230                    org.jetbrains.kotlin.protobuf.ByteString.copyFromUtf8(
1231                        (java.lang.String) ref);
1232                string_ = b;
1233                return b;
1234              } else {
1235                return (org.jetbrains.kotlin.protobuf.ByteString) ref;
1236              }
1237            }
1238            /**
1239             * <code>optional string string = 6;</code>
1240             *
1241             * <pre>
1242             * A string which should be used. If this field is present, both the associated string and the predefined string index are ignored
1243             * </pre>
1244             */
1245            public Builder setString(
1246                java.lang.String value) {
1247              if (value == null) {
1248        throw new NullPointerException();
1249      }
1250      bitField0_ |= 0x00000004;
1251              string_ = value;
1252              
1253              return this;
1254            }
1255            /**
1256             * <code>optional string string = 6;</code>
1257             *
1258             * <pre>
1259             * A string which should be used. If this field is present, both the associated string and the predefined string index are ignored
1260             * </pre>
1261             */
1262            public Builder clearString() {
1263              bitField0_ = (bitField0_ & ~0x00000004);
1264              string_ = getDefaultInstance().getString();
1265              
1266              return this;
1267            }
1268            /**
1269             * <code>optional string string = 6;</code>
1270             *
1271             * <pre>
1272             * A string which should be used. If this field is present, both the associated string and the predefined string index are ignored
1273             * </pre>
1274             */
1275            public Builder setStringBytes(
1276                org.jetbrains.kotlin.protobuf.ByteString value) {
1277              if (value == null) {
1278        throw new NullPointerException();
1279      }
1280      bitField0_ |= 0x00000004;
1281              string_ = value;
1282              
1283              return this;
1284            }
1285    
1286            private org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.Operation operation_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.Operation.NONE;
1287            /**
1288             * <code>optional .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record.Operation operation = 3 [default = NONE];</code>
1289             *
1290             * <pre>
1291             * Perform a described operation on the string
1292             * </pre>
1293             */
1294            public boolean hasOperation() {
1295              return ((bitField0_ & 0x00000008) == 0x00000008);
1296            }
1297            /**
1298             * <code>optional .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record.Operation operation = 3 [default = NONE];</code>
1299             *
1300             * <pre>
1301             * Perform a described operation on the string
1302             * </pre>
1303             */
1304            public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.Operation getOperation() {
1305              return operation_;
1306            }
1307            /**
1308             * <code>optional .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record.Operation operation = 3 [default = NONE];</code>
1309             *
1310             * <pre>
1311             * Perform a described operation on the string
1312             * </pre>
1313             */
1314            public Builder setOperation(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.Operation value) {
1315              if (value == null) {
1316                throw new NullPointerException();
1317              }
1318              bitField0_ |= 0x00000008;
1319              operation_ = value;
1320              
1321              return this;
1322            }
1323            /**
1324             * <code>optional .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record.Operation operation = 3 [default = NONE];</code>
1325             *
1326             * <pre>
1327             * Perform a described operation on the string
1328             * </pre>
1329             */
1330            public Builder clearOperation() {
1331              bitField0_ = (bitField0_ & ~0x00000008);
1332              operation_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.Operation.NONE;
1333              
1334              return this;
1335            }
1336    
1337            private java.util.List<java.lang.Integer> substringIndex_ = java.util.Collections.emptyList();
1338            private void ensureSubstringIndexIsMutable() {
1339              if (!((bitField0_ & 0x00000010) == 0x00000010)) {
1340                substringIndex_ = new java.util.ArrayList<java.lang.Integer>(substringIndex_);
1341                bitField0_ |= 0x00000010;
1342               }
1343            }
1344            /**
1345             * <code>repeated int32 substring_index = 4 [packed = true];</code>
1346             *
1347             * <pre>
1348             * If this field is present, the "substring" operation must be performed with the first element of this list as the start index,
1349             * and the second element as the end index.
1350             * If an operation is not NONE, it's applied _after_ this substring operation
1351             * </pre>
1352             */
1353            public java.util.List<java.lang.Integer>
1354                getSubstringIndexList() {
1355              return java.util.Collections.unmodifiableList(substringIndex_);
1356            }
1357            /**
1358             * <code>repeated int32 substring_index = 4 [packed = true];</code>
1359             *
1360             * <pre>
1361             * If this field is present, the "substring" operation must be performed with the first element of this list as the start index,
1362             * and the second element as the end index.
1363             * If an operation is not NONE, it's applied _after_ this substring operation
1364             * </pre>
1365             */
1366            public int getSubstringIndexCount() {
1367              return substringIndex_.size();
1368            }
1369            /**
1370             * <code>repeated int32 substring_index = 4 [packed = true];</code>
1371             *
1372             * <pre>
1373             * If this field is present, the "substring" operation must be performed with the first element of this list as the start index,
1374             * and the second element as the end index.
1375             * If an operation is not NONE, it's applied _after_ this substring operation
1376             * </pre>
1377             */
1378            public int getSubstringIndex(int index) {
1379              return substringIndex_.get(index);
1380            }
1381            /**
1382             * <code>repeated int32 substring_index = 4 [packed = true];</code>
1383             *
1384             * <pre>
1385             * If this field is present, the "substring" operation must be performed with the first element of this list as the start index,
1386             * and the second element as the end index.
1387             * If an operation is not NONE, it's applied _after_ this substring operation
1388             * </pre>
1389             */
1390            public Builder setSubstringIndex(
1391                int index, int value) {
1392              ensureSubstringIndexIsMutable();
1393              substringIndex_.set(index, value);
1394              
1395              return this;
1396            }
1397            /**
1398             * <code>repeated int32 substring_index = 4 [packed = true];</code>
1399             *
1400             * <pre>
1401             * If this field is present, the "substring" operation must be performed with the first element of this list as the start index,
1402             * and the second element as the end index.
1403             * If an operation is not NONE, it's applied _after_ this substring operation
1404             * </pre>
1405             */
1406            public Builder addSubstringIndex(int value) {
1407              ensureSubstringIndexIsMutable();
1408              substringIndex_.add(value);
1409              
1410              return this;
1411            }
1412            /**
1413             * <code>repeated int32 substring_index = 4 [packed = true];</code>
1414             *
1415             * <pre>
1416             * If this field is present, the "substring" operation must be performed with the first element of this list as the start index,
1417             * and the second element as the end index.
1418             * If an operation is not NONE, it's applied _after_ this substring operation
1419             * </pre>
1420             */
1421            public Builder addAllSubstringIndex(
1422                java.lang.Iterable<? extends java.lang.Integer> values) {
1423              ensureSubstringIndexIsMutable();
1424              org.jetbrains.kotlin.protobuf.AbstractMessageLite.Builder.addAll(
1425                  values, substringIndex_);
1426              
1427              return this;
1428            }
1429            /**
1430             * <code>repeated int32 substring_index = 4 [packed = true];</code>
1431             *
1432             * <pre>
1433             * If this field is present, the "substring" operation must be performed with the first element of this list as the start index,
1434             * and the second element as the end index.
1435             * If an operation is not NONE, it's applied _after_ this substring operation
1436             * </pre>
1437             */
1438            public Builder clearSubstringIndex() {
1439              substringIndex_ = java.util.Collections.emptyList();
1440              bitField0_ = (bitField0_ & ~0x00000010);
1441              
1442              return this;
1443            }
1444    
1445            private java.util.List<java.lang.Integer> replaceChar_ = java.util.Collections.emptyList();
1446            private void ensureReplaceCharIsMutable() {
1447              if (!((bitField0_ & 0x00000020) == 0x00000020)) {
1448                replaceChar_ = new java.util.ArrayList<java.lang.Integer>(replaceChar_);
1449                bitField0_ |= 0x00000020;
1450               }
1451            }
1452            /**
1453             * <code>repeated int32 replace_char = 5 [packed = true];</code>
1454             *
1455             * <pre>
1456             * If this field is present, the "replaceAll" operation must be performed with the first element of this list as the code point
1457             * of the character to replace, and the second element as the code point of the replacement character
1458             * </pre>
1459             */
1460            public java.util.List<java.lang.Integer>
1461                getReplaceCharList() {
1462              return java.util.Collections.unmodifiableList(replaceChar_);
1463            }
1464            /**
1465             * <code>repeated int32 replace_char = 5 [packed = true];</code>
1466             *
1467             * <pre>
1468             * If this field is present, the "replaceAll" operation must be performed with the first element of this list as the code point
1469             * of the character to replace, and the second element as the code point of the replacement character
1470             * </pre>
1471             */
1472            public int getReplaceCharCount() {
1473              return replaceChar_.size();
1474            }
1475            /**
1476             * <code>repeated int32 replace_char = 5 [packed = true];</code>
1477             *
1478             * <pre>
1479             * If this field is present, the "replaceAll" operation must be performed with the first element of this list as the code point
1480             * of the character to replace, and the second element as the code point of the replacement character
1481             * </pre>
1482             */
1483            public int getReplaceChar(int index) {
1484              return replaceChar_.get(index);
1485            }
1486            /**
1487             * <code>repeated int32 replace_char = 5 [packed = true];</code>
1488             *
1489             * <pre>
1490             * If this field is present, the "replaceAll" operation must be performed with the first element of this list as the code point
1491             * of the character to replace, and the second element as the code point of the replacement character
1492             * </pre>
1493             */
1494            public Builder setReplaceChar(
1495                int index, int value) {
1496              ensureReplaceCharIsMutable();
1497              replaceChar_.set(index, value);
1498              
1499              return this;
1500            }
1501            /**
1502             * <code>repeated int32 replace_char = 5 [packed = true];</code>
1503             *
1504             * <pre>
1505             * If this field is present, the "replaceAll" operation must be performed with the first element of this list as the code point
1506             * of the character to replace, and the second element as the code point of the replacement character
1507             * </pre>
1508             */
1509            public Builder addReplaceChar(int value) {
1510              ensureReplaceCharIsMutable();
1511              replaceChar_.add(value);
1512              
1513              return this;
1514            }
1515            /**
1516             * <code>repeated int32 replace_char = 5 [packed = true];</code>
1517             *
1518             * <pre>
1519             * If this field is present, the "replaceAll" operation must be performed with the first element of this list as the code point
1520             * of the character to replace, and the second element as the code point of the replacement character
1521             * </pre>
1522             */
1523            public Builder addAllReplaceChar(
1524                java.lang.Iterable<? extends java.lang.Integer> values) {
1525              ensureReplaceCharIsMutable();
1526              org.jetbrains.kotlin.protobuf.AbstractMessageLite.Builder.addAll(
1527                  values, replaceChar_);
1528              
1529              return this;
1530            }
1531            /**
1532             * <code>repeated int32 replace_char = 5 [packed = true];</code>
1533             *
1534             * <pre>
1535             * If this field is present, the "replaceAll" operation must be performed with the first element of this list as the code point
1536             * of the character to replace, and the second element as the code point of the replacement character
1537             * </pre>
1538             */
1539            public Builder clearReplaceChar() {
1540              replaceChar_ = java.util.Collections.emptyList();
1541              bitField0_ = (bitField0_ & ~0x00000020);
1542              
1543              return this;
1544            }
1545    
1546            // @@protoc_insertion_point(builder_scope:org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record)
1547          }
1548    
1549          static {
1550            defaultInstance = new Record(true);
1551            defaultInstance.initFields();
1552          }
1553    
1554          // @@protoc_insertion_point(class_scope:org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record)
1555        }
1556    
1557        public static final int RECORD_FIELD_NUMBER = 1;
1558        private java.util.List<org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record> record_;
1559        /**
1560         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1561         */
1562        public java.util.List<org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record> getRecordList() {
1563          return record_;
1564        }
1565        /**
1566         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1567         */
1568        public java.util.List<? extends org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.RecordOrBuilder> 
1569            getRecordOrBuilderList() {
1570          return record_;
1571        }
1572        /**
1573         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1574         */
1575        public int getRecordCount() {
1576          return record_.size();
1577        }
1578        /**
1579         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1580         */
1581        public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record getRecord(int index) {
1582          return record_.get(index);
1583        }
1584        /**
1585         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1586         */
1587        public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.RecordOrBuilder getRecordOrBuilder(
1588            int index) {
1589          return record_.get(index);
1590        }
1591    
1592        public static final int LOCAL_NAME_FIELD_NUMBER = 5;
1593        private java.util.List<java.lang.Integer> localName_;
1594        /**
1595         * <code>repeated int32 local_name = 5 [packed = true];</code>
1596         *
1597         * <pre>
1598         * Indices of strings which are names of local classes or anonymous objects
1599         * </pre>
1600         */
1601        public java.util.List<java.lang.Integer>
1602            getLocalNameList() {
1603          return localName_;
1604        }
1605        /**
1606         * <code>repeated int32 local_name = 5 [packed = true];</code>
1607         *
1608         * <pre>
1609         * Indices of strings which are names of local classes or anonymous objects
1610         * </pre>
1611         */
1612        public int getLocalNameCount() {
1613          return localName_.size();
1614        }
1615        /**
1616         * <code>repeated int32 local_name = 5 [packed = true];</code>
1617         *
1618         * <pre>
1619         * Indices of strings which are names of local classes or anonymous objects
1620         * </pre>
1621         */
1622        public int getLocalName(int index) {
1623          return localName_.get(index);
1624        }
1625        private int localNameMemoizedSerializedSize = -1;
1626    
1627        private void initFields() {
1628          record_ = java.util.Collections.emptyList();
1629          localName_ = java.util.Collections.emptyList();
1630        }
1631        private byte memoizedIsInitialized = -1;
1632        public final boolean isInitialized() {
1633          byte isInitialized = memoizedIsInitialized;
1634          if (isInitialized == 1) return true;
1635          if (isInitialized == 0) return false;
1636    
1637          memoizedIsInitialized = 1;
1638          return true;
1639        }
1640    
1641        public void writeTo(org.jetbrains.kotlin.protobuf.CodedOutputStream output)
1642                            throws java.io.IOException {
1643          getSerializedSize();
1644          for (int i = 0; i < record_.size(); i++) {
1645            output.writeMessage(1, record_.get(i));
1646          }
1647          if (getLocalNameList().size() > 0) {
1648            output.writeRawVarint32(42);
1649            output.writeRawVarint32(localNameMemoizedSerializedSize);
1650          }
1651          for (int i = 0; i < localName_.size(); i++) {
1652            output.writeInt32NoTag(localName_.get(i));
1653          }
1654          output.writeRawBytes(unknownFields);
1655        }
1656    
1657        private int memoizedSerializedSize = -1;
1658        public int getSerializedSize() {
1659          int size = memoizedSerializedSize;
1660          if (size != -1) return size;
1661    
1662          size = 0;
1663          for (int i = 0; i < record_.size(); i++) {
1664            size += org.jetbrains.kotlin.protobuf.CodedOutputStream
1665              .computeMessageSize(1, record_.get(i));
1666          }
1667          {
1668            int dataSize = 0;
1669            for (int i = 0; i < localName_.size(); i++) {
1670              dataSize += org.jetbrains.kotlin.protobuf.CodedOutputStream
1671                .computeInt32SizeNoTag(localName_.get(i));
1672            }
1673            size += dataSize;
1674            if (!getLocalNameList().isEmpty()) {
1675              size += 1;
1676              size += org.jetbrains.kotlin.protobuf.CodedOutputStream
1677                  .computeInt32SizeNoTag(dataSize);
1678            }
1679            localNameMemoizedSerializedSize = dataSize;
1680          }
1681          size += unknownFields.size();
1682          memoizedSerializedSize = size;
1683          return size;
1684        }
1685    
1686        private static final long serialVersionUID = 0L;
1687        @java.lang.Override
1688        protected java.lang.Object writeReplace()
1689            throws java.io.ObjectStreamException {
1690          return super.writeReplace();
1691        }
1692    
1693        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes parseFrom(
1694            org.jetbrains.kotlin.protobuf.ByteString data)
1695            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
1696          return PARSER.parseFrom(data);
1697        }
1698        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes parseFrom(
1699            org.jetbrains.kotlin.protobuf.ByteString data,
1700            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
1701            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
1702          return PARSER.parseFrom(data, extensionRegistry);
1703        }
1704        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes parseFrom(byte[] data)
1705            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
1706          return PARSER.parseFrom(data);
1707        }
1708        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes parseFrom(
1709            byte[] data,
1710            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
1711            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
1712          return PARSER.parseFrom(data, extensionRegistry);
1713        }
1714        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes parseFrom(java.io.InputStream input)
1715            throws java.io.IOException {
1716          return PARSER.parseFrom(input);
1717        }
1718        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes parseFrom(
1719            java.io.InputStream input,
1720            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
1721            throws java.io.IOException {
1722          return PARSER.parseFrom(input, extensionRegistry);
1723        }
1724        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes parseDelimitedFrom(java.io.InputStream input)
1725            throws java.io.IOException {
1726          return PARSER.parseDelimitedFrom(input);
1727        }
1728        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes parseDelimitedFrom(
1729            java.io.InputStream input,
1730            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
1731            throws java.io.IOException {
1732          return PARSER.parseDelimitedFrom(input, extensionRegistry);
1733        }
1734        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes parseFrom(
1735            org.jetbrains.kotlin.protobuf.CodedInputStream input)
1736            throws java.io.IOException {
1737          return PARSER.parseFrom(input);
1738        }
1739        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes parseFrom(
1740            org.jetbrains.kotlin.protobuf.CodedInputStream input,
1741            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
1742            throws java.io.IOException {
1743          return PARSER.parseFrom(input, extensionRegistry);
1744        }
1745    
1746        public static Builder newBuilder() { return Builder.create(); }
1747        public Builder newBuilderForType() { return newBuilder(); }
1748        public static Builder newBuilder(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes prototype) {
1749          return newBuilder().mergeFrom(prototype);
1750        }
1751        public Builder toBuilder() { return newBuilder(this); }
1752    
1753        /**
1754         * Protobuf type {@code org.jetbrains.kotlin.serialization.jvm.StringTableTypes}
1755         */
1756        public static final class Builder extends
1757            org.jetbrains.kotlin.protobuf.GeneratedMessageLite.Builder<
1758              org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes, Builder>
1759            implements
1760            // @@protoc_insertion_point(builder_implements:org.jetbrains.kotlin.serialization.jvm.StringTableTypes)
1761            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypesOrBuilder {
1762          // Construct using org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.newBuilder()
1763          private Builder() {
1764            maybeForceBuilderInitialization();
1765          }
1766    
1767          private void maybeForceBuilderInitialization() {
1768          }
1769          private static Builder create() {
1770            return new Builder();
1771          }
1772    
1773          public Builder clear() {
1774            super.clear();
1775            record_ = java.util.Collections.emptyList();
1776            bitField0_ = (bitField0_ & ~0x00000001);
1777            localName_ = java.util.Collections.emptyList();
1778            bitField0_ = (bitField0_ & ~0x00000002);
1779            return this;
1780          }
1781    
1782          public Builder clone() {
1783            return create().mergeFrom(buildPartial());
1784          }
1785    
1786          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes getDefaultInstanceForType() {
1787            return org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.getDefaultInstance();
1788          }
1789    
1790          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes build() {
1791            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes result = buildPartial();
1792            if (!result.isInitialized()) {
1793              throw newUninitializedMessageException(result);
1794            }
1795            return result;
1796          }
1797    
1798          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes buildPartial() {
1799            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes result = new org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes(this);
1800            int from_bitField0_ = bitField0_;
1801            if (((bitField0_ & 0x00000001) == 0x00000001)) {
1802              record_ = java.util.Collections.unmodifiableList(record_);
1803              bitField0_ = (bitField0_ & ~0x00000001);
1804            }
1805            result.record_ = record_;
1806            if (((bitField0_ & 0x00000002) == 0x00000002)) {
1807              localName_ = java.util.Collections.unmodifiableList(localName_);
1808              bitField0_ = (bitField0_ & ~0x00000002);
1809            }
1810            result.localName_ = localName_;
1811            return result;
1812          }
1813    
1814          public Builder mergeFrom(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes other) {
1815            if (other == org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.getDefaultInstance()) return this;
1816            if (!other.record_.isEmpty()) {
1817              if (record_.isEmpty()) {
1818                record_ = other.record_;
1819                bitField0_ = (bitField0_ & ~0x00000001);
1820              } else {
1821                ensureRecordIsMutable();
1822                record_.addAll(other.record_);
1823              }
1824              
1825            }
1826            if (!other.localName_.isEmpty()) {
1827              if (localName_.isEmpty()) {
1828                localName_ = other.localName_;
1829                bitField0_ = (bitField0_ & ~0x00000002);
1830              } else {
1831                ensureLocalNameIsMutable();
1832                localName_.addAll(other.localName_);
1833              }
1834              
1835            }
1836            setUnknownFields(
1837                getUnknownFields().concat(other.unknownFields));
1838            return this;
1839          }
1840    
1841          public final boolean isInitialized() {
1842            return true;
1843          }
1844    
1845          public Builder mergeFrom(
1846              org.jetbrains.kotlin.protobuf.CodedInputStream input,
1847              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
1848              throws java.io.IOException {
1849            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes parsedMessage = null;
1850            try {
1851              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
1852            } catch (org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException e) {
1853              parsedMessage = (org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes) e.getUnfinishedMessage();
1854              throw e;
1855            } finally {
1856              if (parsedMessage != null) {
1857                mergeFrom(parsedMessage);
1858              }
1859            }
1860            return this;
1861          }
1862          private int bitField0_;
1863    
1864          private java.util.List<org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record> record_ =
1865            java.util.Collections.emptyList();
1866          private void ensureRecordIsMutable() {
1867            if (!((bitField0_ & 0x00000001) == 0x00000001)) {
1868              record_ = new java.util.ArrayList<org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record>(record_);
1869              bitField0_ |= 0x00000001;
1870             }
1871          }
1872    
1873          /**
1874           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1875           */
1876          public java.util.List<org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record> getRecordList() {
1877            return java.util.Collections.unmodifiableList(record_);
1878          }
1879          /**
1880           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1881           */
1882          public int getRecordCount() {
1883            return record_.size();
1884          }
1885          /**
1886           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1887           */
1888          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record getRecord(int index) {
1889            return record_.get(index);
1890          }
1891          /**
1892           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1893           */
1894          public Builder setRecord(
1895              int index, org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record value) {
1896            if (value == null) {
1897              throw new NullPointerException();
1898            }
1899            ensureRecordIsMutable();
1900            record_.set(index, value);
1901    
1902            return this;
1903          }
1904          /**
1905           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1906           */
1907          public Builder setRecord(
1908              int index, org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.Builder builderForValue) {
1909            ensureRecordIsMutable();
1910            record_.set(index, builderForValue.build());
1911    
1912            return this;
1913          }
1914          /**
1915           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1916           */
1917          public Builder addRecord(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record value) {
1918            if (value == null) {
1919              throw new NullPointerException();
1920            }
1921            ensureRecordIsMutable();
1922            record_.add(value);
1923    
1924            return this;
1925          }
1926          /**
1927           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1928           */
1929          public Builder addRecord(
1930              int index, org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record value) {
1931            if (value == null) {
1932              throw new NullPointerException();
1933            }
1934            ensureRecordIsMutable();
1935            record_.add(index, value);
1936    
1937            return this;
1938          }
1939          /**
1940           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1941           */
1942          public Builder addRecord(
1943              org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.Builder builderForValue) {
1944            ensureRecordIsMutable();
1945            record_.add(builderForValue.build());
1946    
1947            return this;
1948          }
1949          /**
1950           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1951           */
1952          public Builder addRecord(
1953              int index, org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record.Builder builderForValue) {
1954            ensureRecordIsMutable();
1955            record_.add(index, builderForValue.build());
1956    
1957            return this;
1958          }
1959          /**
1960           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1961           */
1962          public Builder addAllRecord(
1963              java.lang.Iterable<? extends org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.StringTableTypes.Record> values) {
1964            ensureRecordIsMutable();
1965            org.jetbrains.kotlin.protobuf.AbstractMessageLite.Builder.addAll(
1966                values, record_);
1967    
1968            return this;
1969          }
1970          /**
1971           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1972           */
1973          public Builder clearRecord() {
1974            record_ = java.util.Collections.emptyList();
1975            bitField0_ = (bitField0_ & ~0x00000001);
1976    
1977            return this;
1978          }
1979          /**
1980           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.StringTableTypes.Record record = 1;</code>
1981           */
1982          public Builder removeRecord(int index) {
1983            ensureRecordIsMutable();
1984            record_.remove(index);
1985    
1986            return this;
1987          }
1988    
1989          private java.util.List<java.lang.Integer> localName_ = java.util.Collections.emptyList();
1990          private void ensureLocalNameIsMutable() {
1991            if (!((bitField0_ & 0x00000002) == 0x00000002)) {
1992              localName_ = new java.util.ArrayList<java.lang.Integer>(localName_);
1993              bitField0_ |= 0x00000002;
1994             }
1995          }
1996          /**
1997           * <code>repeated int32 local_name = 5 [packed = true];</code>
1998           *
1999           * <pre>
2000           * Indices of strings which are names of local classes or anonymous objects
2001           * </pre>
2002           */
2003          public java.util.List<java.lang.Integer>
2004              getLocalNameList() {
2005            return java.util.Collections.unmodifiableList(localName_);
2006          }
2007          /**
2008           * <code>repeated int32 local_name = 5 [packed = true];</code>
2009           *
2010           * <pre>
2011           * Indices of strings which are names of local classes or anonymous objects
2012           * </pre>
2013           */
2014          public int getLocalNameCount() {
2015            return localName_.size();
2016          }
2017          /**
2018           * <code>repeated int32 local_name = 5 [packed = true];</code>
2019           *
2020           * <pre>
2021           * Indices of strings which are names of local classes or anonymous objects
2022           * </pre>
2023           */
2024          public int getLocalName(int index) {
2025            return localName_.get(index);
2026          }
2027          /**
2028           * <code>repeated int32 local_name = 5 [packed = true];</code>
2029           *
2030           * <pre>
2031           * Indices of strings which are names of local classes or anonymous objects
2032           * </pre>
2033           */
2034          public Builder setLocalName(
2035              int index, int value) {
2036            ensureLocalNameIsMutable();
2037            localName_.set(index, value);
2038            
2039            return this;
2040          }
2041          /**
2042           * <code>repeated int32 local_name = 5 [packed = true];</code>
2043           *
2044           * <pre>
2045           * Indices of strings which are names of local classes or anonymous objects
2046           * </pre>
2047           */
2048          public Builder addLocalName(int value) {
2049            ensureLocalNameIsMutable();
2050            localName_.add(value);
2051            
2052            return this;
2053          }
2054          /**
2055           * <code>repeated int32 local_name = 5 [packed = true];</code>
2056           *
2057           * <pre>
2058           * Indices of strings which are names of local classes or anonymous objects
2059           * </pre>
2060           */
2061          public Builder addAllLocalName(
2062              java.lang.Iterable<? extends java.lang.Integer> values) {
2063            ensureLocalNameIsMutable();
2064            org.jetbrains.kotlin.protobuf.AbstractMessageLite.Builder.addAll(
2065                values, localName_);
2066            
2067            return this;
2068          }
2069          /**
2070           * <code>repeated int32 local_name = 5 [packed = true];</code>
2071           *
2072           * <pre>
2073           * Indices of strings which are names of local classes or anonymous objects
2074           * </pre>
2075           */
2076          public Builder clearLocalName() {
2077            localName_ = java.util.Collections.emptyList();
2078            bitField0_ = (bitField0_ & ~0x00000002);
2079            
2080            return this;
2081          }
2082    
2083          // @@protoc_insertion_point(builder_scope:org.jetbrains.kotlin.serialization.jvm.StringTableTypes)
2084        }
2085    
2086        static {
2087          defaultInstance = new StringTableTypes(true);
2088          defaultInstance.initFields();
2089        }
2090    
2091        // @@protoc_insertion_point(class_scope:org.jetbrains.kotlin.serialization.jvm.StringTableTypes)
2092      }
2093    
2094      public interface JvmMethodSignatureOrBuilder extends
2095          // @@protoc_insertion_point(interface_extends:org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature)
2096          org.jetbrains.kotlin.protobuf.MessageLiteOrBuilder {
2097    
2098        /**
2099         * <code>optional int32 name = 1;</code>
2100         */
2101        boolean hasName();
2102        /**
2103         * <code>optional int32 name = 1;</code>
2104         */
2105        int getName();
2106    
2107        /**
2108         * <code>optional int32 desc = 2;</code>
2109         *
2110         * <pre>
2111         * JVM descriptor of the method, e.g. '(Ljava/util/List;)[Ljava/lang/Object;'
2112         * </pre>
2113         */
2114        boolean hasDesc();
2115        /**
2116         * <code>optional int32 desc = 2;</code>
2117         *
2118         * <pre>
2119         * JVM descriptor of the method, e.g. '(Ljava/util/List;)[Ljava/lang/Object;'
2120         * </pre>
2121         */
2122        int getDesc();
2123      }
2124      /**
2125       * Protobuf type {@code org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature}
2126       */
2127      public static final class JvmMethodSignature extends
2128          org.jetbrains.kotlin.protobuf.GeneratedMessageLite implements
2129          // @@protoc_insertion_point(message_implements:org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature)
2130          JvmMethodSignatureOrBuilder {
2131        // Use JvmMethodSignature.newBuilder() to construct.
2132        private JvmMethodSignature(org.jetbrains.kotlin.protobuf.GeneratedMessageLite.Builder builder) {
2133          super(builder);
2134          this.unknownFields = builder.getUnknownFields();
2135        }
2136        private JvmMethodSignature(boolean noInit) { this.unknownFields = org.jetbrains.kotlin.protobuf.ByteString.EMPTY;}
2137    
2138        private static final JvmMethodSignature defaultInstance;
2139        public static JvmMethodSignature getDefaultInstance() {
2140          return defaultInstance;
2141        }
2142    
2143        public JvmMethodSignature getDefaultInstanceForType() {
2144          return defaultInstance;
2145        }
2146    
2147        private final org.jetbrains.kotlin.protobuf.ByteString unknownFields;
2148        private JvmMethodSignature(
2149            org.jetbrains.kotlin.protobuf.CodedInputStream input,
2150            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2151            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
2152          initFields();
2153          int mutable_bitField0_ = 0;
2154          org.jetbrains.kotlin.protobuf.ByteString.Output unknownFieldsOutput =
2155              org.jetbrains.kotlin.protobuf.ByteString.newOutput();
2156          org.jetbrains.kotlin.protobuf.CodedOutputStream unknownFieldsCodedOutput =
2157              org.jetbrains.kotlin.protobuf.CodedOutputStream.newInstance(
2158                  unknownFieldsOutput);
2159          try {
2160            boolean done = false;
2161            while (!done) {
2162              int tag = input.readTag();
2163              switch (tag) {
2164                case 0:
2165                  done = true;
2166                  break;
2167                default: {
2168                  if (!parseUnknownField(input, unknownFieldsCodedOutput,
2169                                         extensionRegistry, tag)) {
2170                    done = true;
2171                  }
2172                  break;
2173                }
2174                case 8: {
2175                  bitField0_ |= 0x00000001;
2176                  name_ = input.readInt32();
2177                  break;
2178                }
2179                case 16: {
2180                  bitField0_ |= 0x00000002;
2181                  desc_ = input.readInt32();
2182                  break;
2183                }
2184              }
2185            }
2186          } catch (org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException e) {
2187            throw e.setUnfinishedMessage(this);
2188          } catch (java.io.IOException e) {
2189            throw new org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException(
2190                e.getMessage()).setUnfinishedMessage(this);
2191          } finally {
2192            try {
2193              unknownFieldsCodedOutput.flush();
2194            } catch (java.io.IOException e) {
2195            // Should not happen
2196            } finally {
2197              unknownFields = unknownFieldsOutput.toByteString();
2198            }
2199            makeExtensionsImmutable();
2200          }
2201        }
2202        public static org.jetbrains.kotlin.protobuf.Parser<JvmMethodSignature> PARSER =
2203            new org.jetbrains.kotlin.protobuf.AbstractParser<JvmMethodSignature>() {
2204          public JvmMethodSignature parsePartialFrom(
2205              org.jetbrains.kotlin.protobuf.CodedInputStream input,
2206              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2207              throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
2208            return new JvmMethodSignature(input, extensionRegistry);
2209          }
2210        };
2211    
2212        @java.lang.Override
2213        public org.jetbrains.kotlin.protobuf.Parser<JvmMethodSignature> getParserForType() {
2214          return PARSER;
2215        }
2216    
2217        private int bitField0_;
2218        public static final int NAME_FIELD_NUMBER = 1;
2219        private int name_;
2220        /**
2221         * <code>optional int32 name = 1;</code>
2222         */
2223        public boolean hasName() {
2224          return ((bitField0_ & 0x00000001) == 0x00000001);
2225        }
2226        /**
2227         * <code>optional int32 name = 1;</code>
2228         */
2229        public int getName() {
2230          return name_;
2231        }
2232    
2233        public static final int DESC_FIELD_NUMBER = 2;
2234        private int desc_;
2235        /**
2236         * <code>optional int32 desc = 2;</code>
2237         *
2238         * <pre>
2239         * JVM descriptor of the method, e.g. '(Ljava/util/List;)[Ljava/lang/Object;'
2240         * </pre>
2241         */
2242        public boolean hasDesc() {
2243          return ((bitField0_ & 0x00000002) == 0x00000002);
2244        }
2245        /**
2246         * <code>optional int32 desc = 2;</code>
2247         *
2248         * <pre>
2249         * JVM descriptor of the method, e.g. '(Ljava/util/List;)[Ljava/lang/Object;'
2250         * </pre>
2251         */
2252        public int getDesc() {
2253          return desc_;
2254        }
2255    
2256        private void initFields() {
2257          name_ = 0;
2258          desc_ = 0;
2259        }
2260        private byte memoizedIsInitialized = -1;
2261        public final boolean isInitialized() {
2262          byte isInitialized = memoizedIsInitialized;
2263          if (isInitialized == 1) return true;
2264          if (isInitialized == 0) return false;
2265    
2266          memoizedIsInitialized = 1;
2267          return true;
2268        }
2269    
2270        public void writeTo(org.jetbrains.kotlin.protobuf.CodedOutputStream output)
2271                            throws java.io.IOException {
2272          getSerializedSize();
2273          if (((bitField0_ & 0x00000001) == 0x00000001)) {
2274            output.writeInt32(1, name_);
2275          }
2276          if (((bitField0_ & 0x00000002) == 0x00000002)) {
2277            output.writeInt32(2, desc_);
2278          }
2279          output.writeRawBytes(unknownFields);
2280        }
2281    
2282        private int memoizedSerializedSize = -1;
2283        public int getSerializedSize() {
2284          int size = memoizedSerializedSize;
2285          if (size != -1) return size;
2286    
2287          size = 0;
2288          if (((bitField0_ & 0x00000001) == 0x00000001)) {
2289            size += org.jetbrains.kotlin.protobuf.CodedOutputStream
2290              .computeInt32Size(1, name_);
2291          }
2292          if (((bitField0_ & 0x00000002) == 0x00000002)) {
2293            size += org.jetbrains.kotlin.protobuf.CodedOutputStream
2294              .computeInt32Size(2, desc_);
2295          }
2296          size += unknownFields.size();
2297          memoizedSerializedSize = size;
2298          return size;
2299        }
2300    
2301        private static final long serialVersionUID = 0L;
2302        @java.lang.Override
2303        protected java.lang.Object writeReplace()
2304            throws java.io.ObjectStreamException {
2305          return super.writeReplace();
2306        }
2307    
2308        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature parseFrom(
2309            org.jetbrains.kotlin.protobuf.ByteString data)
2310            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
2311          return PARSER.parseFrom(data);
2312        }
2313        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature parseFrom(
2314            org.jetbrains.kotlin.protobuf.ByteString data,
2315            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2316            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
2317          return PARSER.parseFrom(data, extensionRegistry);
2318        }
2319        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature parseFrom(byte[] data)
2320            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
2321          return PARSER.parseFrom(data);
2322        }
2323        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature parseFrom(
2324            byte[] data,
2325            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2326            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
2327          return PARSER.parseFrom(data, extensionRegistry);
2328        }
2329        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature parseFrom(java.io.InputStream input)
2330            throws java.io.IOException {
2331          return PARSER.parseFrom(input);
2332        }
2333        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature parseFrom(
2334            java.io.InputStream input,
2335            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2336            throws java.io.IOException {
2337          return PARSER.parseFrom(input, extensionRegistry);
2338        }
2339        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature parseDelimitedFrom(java.io.InputStream input)
2340            throws java.io.IOException {
2341          return PARSER.parseDelimitedFrom(input);
2342        }
2343        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature parseDelimitedFrom(
2344            java.io.InputStream input,
2345            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2346            throws java.io.IOException {
2347          return PARSER.parseDelimitedFrom(input, extensionRegistry);
2348        }
2349        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature parseFrom(
2350            org.jetbrains.kotlin.protobuf.CodedInputStream input)
2351            throws java.io.IOException {
2352          return PARSER.parseFrom(input);
2353        }
2354        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature parseFrom(
2355            org.jetbrains.kotlin.protobuf.CodedInputStream input,
2356            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2357            throws java.io.IOException {
2358          return PARSER.parseFrom(input, extensionRegistry);
2359        }
2360    
2361        public static Builder newBuilder() { return Builder.create(); }
2362        public Builder newBuilderForType() { return newBuilder(); }
2363        public static Builder newBuilder(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature prototype) {
2364          return newBuilder().mergeFrom(prototype);
2365        }
2366        public Builder toBuilder() { return newBuilder(this); }
2367    
2368        /**
2369         * Protobuf type {@code org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature}
2370         */
2371        public static final class Builder extends
2372            org.jetbrains.kotlin.protobuf.GeneratedMessageLite.Builder<
2373              org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature, Builder>
2374            implements
2375            // @@protoc_insertion_point(builder_implements:org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature)
2376            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignatureOrBuilder {
2377          // Construct using org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.newBuilder()
2378          private Builder() {
2379            maybeForceBuilderInitialization();
2380          }
2381    
2382          private void maybeForceBuilderInitialization() {
2383          }
2384          private static Builder create() {
2385            return new Builder();
2386          }
2387    
2388          public Builder clear() {
2389            super.clear();
2390            name_ = 0;
2391            bitField0_ = (bitField0_ & ~0x00000001);
2392            desc_ = 0;
2393            bitField0_ = (bitField0_ & ~0x00000002);
2394            return this;
2395          }
2396    
2397          public Builder clone() {
2398            return create().mergeFrom(buildPartial());
2399          }
2400    
2401          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature getDefaultInstanceForType() {
2402            return org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance();
2403          }
2404    
2405          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature build() {
2406            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature result = buildPartial();
2407            if (!result.isInitialized()) {
2408              throw newUninitializedMessageException(result);
2409            }
2410            return result;
2411          }
2412    
2413          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature buildPartial() {
2414            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature result = new org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature(this);
2415            int from_bitField0_ = bitField0_;
2416            int to_bitField0_ = 0;
2417            if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
2418              to_bitField0_ |= 0x00000001;
2419            }
2420            result.name_ = name_;
2421            if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
2422              to_bitField0_ |= 0x00000002;
2423            }
2424            result.desc_ = desc_;
2425            result.bitField0_ = to_bitField0_;
2426            return result;
2427          }
2428    
2429          public Builder mergeFrom(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature other) {
2430            if (other == org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance()) return this;
2431            if (other.hasName()) {
2432              setName(other.getName());
2433            }
2434            if (other.hasDesc()) {
2435              setDesc(other.getDesc());
2436            }
2437            setUnknownFields(
2438                getUnknownFields().concat(other.unknownFields));
2439            return this;
2440          }
2441    
2442          public final boolean isInitialized() {
2443            return true;
2444          }
2445    
2446          public Builder mergeFrom(
2447              org.jetbrains.kotlin.protobuf.CodedInputStream input,
2448              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2449              throws java.io.IOException {
2450            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature parsedMessage = null;
2451            try {
2452              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
2453            } catch (org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException e) {
2454              parsedMessage = (org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature) e.getUnfinishedMessage();
2455              throw e;
2456            } finally {
2457              if (parsedMessage != null) {
2458                mergeFrom(parsedMessage);
2459              }
2460            }
2461            return this;
2462          }
2463          private int bitField0_;
2464    
2465          private int name_ ;
2466          /**
2467           * <code>optional int32 name = 1;</code>
2468           */
2469          public boolean hasName() {
2470            return ((bitField0_ & 0x00000001) == 0x00000001);
2471          }
2472          /**
2473           * <code>optional int32 name = 1;</code>
2474           */
2475          public int getName() {
2476            return name_;
2477          }
2478          /**
2479           * <code>optional int32 name = 1;</code>
2480           */
2481          public Builder setName(int value) {
2482            bitField0_ |= 0x00000001;
2483            name_ = value;
2484            
2485            return this;
2486          }
2487          /**
2488           * <code>optional int32 name = 1;</code>
2489           */
2490          public Builder clearName() {
2491            bitField0_ = (bitField0_ & ~0x00000001);
2492            name_ = 0;
2493            
2494            return this;
2495          }
2496    
2497          private int desc_ ;
2498          /**
2499           * <code>optional int32 desc = 2;</code>
2500           *
2501           * <pre>
2502           * JVM descriptor of the method, e.g. '(Ljava/util/List;)[Ljava/lang/Object;'
2503           * </pre>
2504           */
2505          public boolean hasDesc() {
2506            return ((bitField0_ & 0x00000002) == 0x00000002);
2507          }
2508          /**
2509           * <code>optional int32 desc = 2;</code>
2510           *
2511           * <pre>
2512           * JVM descriptor of the method, e.g. '(Ljava/util/List;)[Ljava/lang/Object;'
2513           * </pre>
2514           */
2515          public int getDesc() {
2516            return desc_;
2517          }
2518          /**
2519           * <code>optional int32 desc = 2;</code>
2520           *
2521           * <pre>
2522           * JVM descriptor of the method, e.g. '(Ljava/util/List;)[Ljava/lang/Object;'
2523           * </pre>
2524           */
2525          public Builder setDesc(int value) {
2526            bitField0_ |= 0x00000002;
2527            desc_ = value;
2528            
2529            return this;
2530          }
2531          /**
2532           * <code>optional int32 desc = 2;</code>
2533           *
2534           * <pre>
2535           * JVM descriptor of the method, e.g. '(Ljava/util/List;)[Ljava/lang/Object;'
2536           * </pre>
2537           */
2538          public Builder clearDesc() {
2539            bitField0_ = (bitField0_ & ~0x00000002);
2540            desc_ = 0;
2541            
2542            return this;
2543          }
2544    
2545          // @@protoc_insertion_point(builder_scope:org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature)
2546        }
2547    
2548        static {
2549          defaultInstance = new JvmMethodSignature(true);
2550          defaultInstance.initFields();
2551        }
2552    
2553        // @@protoc_insertion_point(class_scope:org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature)
2554      }
2555    
2556      public interface JvmFieldSignatureOrBuilder extends
2557          // @@protoc_insertion_point(interface_extends:org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature)
2558          org.jetbrains.kotlin.protobuf.MessageLiteOrBuilder {
2559    
2560        /**
2561         * <code>optional int32 name = 1;</code>
2562         */
2563        boolean hasName();
2564        /**
2565         * <code>optional int32 name = 1;</code>
2566         */
2567        int getName();
2568    
2569        /**
2570         * <code>optional int32 desc = 2;</code>
2571         *
2572         * <pre>
2573         * JVM descriptor of the field type, e.g. 'Ljava/lang/String;'
2574         * </pre>
2575         */
2576        boolean hasDesc();
2577        /**
2578         * <code>optional int32 desc = 2;</code>
2579         *
2580         * <pre>
2581         * JVM descriptor of the field type, e.g. 'Ljava/lang/String;'
2582         * </pre>
2583         */
2584        int getDesc();
2585      }
2586      /**
2587       * Protobuf type {@code org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature}
2588       */
2589      public static final class JvmFieldSignature extends
2590          org.jetbrains.kotlin.protobuf.GeneratedMessageLite implements
2591          // @@protoc_insertion_point(message_implements:org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature)
2592          JvmFieldSignatureOrBuilder {
2593        // Use JvmFieldSignature.newBuilder() to construct.
2594        private JvmFieldSignature(org.jetbrains.kotlin.protobuf.GeneratedMessageLite.Builder builder) {
2595          super(builder);
2596          this.unknownFields = builder.getUnknownFields();
2597        }
2598        private JvmFieldSignature(boolean noInit) { this.unknownFields = org.jetbrains.kotlin.protobuf.ByteString.EMPTY;}
2599    
2600        private static final JvmFieldSignature defaultInstance;
2601        public static JvmFieldSignature getDefaultInstance() {
2602          return defaultInstance;
2603        }
2604    
2605        public JvmFieldSignature getDefaultInstanceForType() {
2606          return defaultInstance;
2607        }
2608    
2609        private final org.jetbrains.kotlin.protobuf.ByteString unknownFields;
2610        private JvmFieldSignature(
2611            org.jetbrains.kotlin.protobuf.CodedInputStream input,
2612            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2613            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
2614          initFields();
2615          int mutable_bitField0_ = 0;
2616          org.jetbrains.kotlin.protobuf.ByteString.Output unknownFieldsOutput =
2617              org.jetbrains.kotlin.protobuf.ByteString.newOutput();
2618          org.jetbrains.kotlin.protobuf.CodedOutputStream unknownFieldsCodedOutput =
2619              org.jetbrains.kotlin.protobuf.CodedOutputStream.newInstance(
2620                  unknownFieldsOutput);
2621          try {
2622            boolean done = false;
2623            while (!done) {
2624              int tag = input.readTag();
2625              switch (tag) {
2626                case 0:
2627                  done = true;
2628                  break;
2629                default: {
2630                  if (!parseUnknownField(input, unknownFieldsCodedOutput,
2631                                         extensionRegistry, tag)) {
2632                    done = true;
2633                  }
2634                  break;
2635                }
2636                case 8: {
2637                  bitField0_ |= 0x00000001;
2638                  name_ = input.readInt32();
2639                  break;
2640                }
2641                case 16: {
2642                  bitField0_ |= 0x00000002;
2643                  desc_ = input.readInt32();
2644                  break;
2645                }
2646              }
2647            }
2648          } catch (org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException e) {
2649            throw e.setUnfinishedMessage(this);
2650          } catch (java.io.IOException e) {
2651            throw new org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException(
2652                e.getMessage()).setUnfinishedMessage(this);
2653          } finally {
2654            try {
2655              unknownFieldsCodedOutput.flush();
2656            } catch (java.io.IOException e) {
2657            // Should not happen
2658            } finally {
2659              unknownFields = unknownFieldsOutput.toByteString();
2660            }
2661            makeExtensionsImmutable();
2662          }
2663        }
2664        public static org.jetbrains.kotlin.protobuf.Parser<JvmFieldSignature> PARSER =
2665            new org.jetbrains.kotlin.protobuf.AbstractParser<JvmFieldSignature>() {
2666          public JvmFieldSignature parsePartialFrom(
2667              org.jetbrains.kotlin.protobuf.CodedInputStream input,
2668              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2669              throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
2670            return new JvmFieldSignature(input, extensionRegistry);
2671          }
2672        };
2673    
2674        @java.lang.Override
2675        public org.jetbrains.kotlin.protobuf.Parser<JvmFieldSignature> getParserForType() {
2676          return PARSER;
2677        }
2678    
2679        private int bitField0_;
2680        public static final int NAME_FIELD_NUMBER = 1;
2681        private int name_;
2682        /**
2683         * <code>optional int32 name = 1;</code>
2684         */
2685        public boolean hasName() {
2686          return ((bitField0_ & 0x00000001) == 0x00000001);
2687        }
2688        /**
2689         * <code>optional int32 name = 1;</code>
2690         */
2691        public int getName() {
2692          return name_;
2693        }
2694    
2695        public static final int DESC_FIELD_NUMBER = 2;
2696        private int desc_;
2697        /**
2698         * <code>optional int32 desc = 2;</code>
2699         *
2700         * <pre>
2701         * JVM descriptor of the field type, e.g. 'Ljava/lang/String;'
2702         * </pre>
2703         */
2704        public boolean hasDesc() {
2705          return ((bitField0_ & 0x00000002) == 0x00000002);
2706        }
2707        /**
2708         * <code>optional int32 desc = 2;</code>
2709         *
2710         * <pre>
2711         * JVM descriptor of the field type, e.g. 'Ljava/lang/String;'
2712         * </pre>
2713         */
2714        public int getDesc() {
2715          return desc_;
2716        }
2717    
2718        private void initFields() {
2719          name_ = 0;
2720          desc_ = 0;
2721        }
2722        private byte memoizedIsInitialized = -1;
2723        public final boolean isInitialized() {
2724          byte isInitialized = memoizedIsInitialized;
2725          if (isInitialized == 1) return true;
2726          if (isInitialized == 0) return false;
2727    
2728          memoizedIsInitialized = 1;
2729          return true;
2730        }
2731    
2732        public void writeTo(org.jetbrains.kotlin.protobuf.CodedOutputStream output)
2733                            throws java.io.IOException {
2734          getSerializedSize();
2735          if (((bitField0_ & 0x00000001) == 0x00000001)) {
2736            output.writeInt32(1, name_);
2737          }
2738          if (((bitField0_ & 0x00000002) == 0x00000002)) {
2739            output.writeInt32(2, desc_);
2740          }
2741          output.writeRawBytes(unknownFields);
2742        }
2743    
2744        private int memoizedSerializedSize = -1;
2745        public int getSerializedSize() {
2746          int size = memoizedSerializedSize;
2747          if (size != -1) return size;
2748    
2749          size = 0;
2750          if (((bitField0_ & 0x00000001) == 0x00000001)) {
2751            size += org.jetbrains.kotlin.protobuf.CodedOutputStream
2752              .computeInt32Size(1, name_);
2753          }
2754          if (((bitField0_ & 0x00000002) == 0x00000002)) {
2755            size += org.jetbrains.kotlin.protobuf.CodedOutputStream
2756              .computeInt32Size(2, desc_);
2757          }
2758          size += unknownFields.size();
2759          memoizedSerializedSize = size;
2760          return size;
2761        }
2762    
2763        private static final long serialVersionUID = 0L;
2764        @java.lang.Override
2765        protected java.lang.Object writeReplace()
2766            throws java.io.ObjectStreamException {
2767          return super.writeReplace();
2768        }
2769    
2770        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature parseFrom(
2771            org.jetbrains.kotlin.protobuf.ByteString data)
2772            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
2773          return PARSER.parseFrom(data);
2774        }
2775        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature parseFrom(
2776            org.jetbrains.kotlin.protobuf.ByteString data,
2777            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2778            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
2779          return PARSER.parseFrom(data, extensionRegistry);
2780        }
2781        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature parseFrom(byte[] data)
2782            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
2783          return PARSER.parseFrom(data);
2784        }
2785        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature parseFrom(
2786            byte[] data,
2787            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2788            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
2789          return PARSER.parseFrom(data, extensionRegistry);
2790        }
2791        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature parseFrom(java.io.InputStream input)
2792            throws java.io.IOException {
2793          return PARSER.parseFrom(input);
2794        }
2795        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature parseFrom(
2796            java.io.InputStream input,
2797            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2798            throws java.io.IOException {
2799          return PARSER.parseFrom(input, extensionRegistry);
2800        }
2801        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature parseDelimitedFrom(java.io.InputStream input)
2802            throws java.io.IOException {
2803          return PARSER.parseDelimitedFrom(input);
2804        }
2805        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature parseDelimitedFrom(
2806            java.io.InputStream input,
2807            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2808            throws java.io.IOException {
2809          return PARSER.parseDelimitedFrom(input, extensionRegistry);
2810        }
2811        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature parseFrom(
2812            org.jetbrains.kotlin.protobuf.CodedInputStream input)
2813            throws java.io.IOException {
2814          return PARSER.parseFrom(input);
2815        }
2816        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature parseFrom(
2817            org.jetbrains.kotlin.protobuf.CodedInputStream input,
2818            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2819            throws java.io.IOException {
2820          return PARSER.parseFrom(input, extensionRegistry);
2821        }
2822    
2823        public static Builder newBuilder() { return Builder.create(); }
2824        public Builder newBuilderForType() { return newBuilder(); }
2825        public static Builder newBuilder(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature prototype) {
2826          return newBuilder().mergeFrom(prototype);
2827        }
2828        public Builder toBuilder() { return newBuilder(this); }
2829    
2830        /**
2831         * Protobuf type {@code org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature}
2832         */
2833        public static final class Builder extends
2834            org.jetbrains.kotlin.protobuf.GeneratedMessageLite.Builder<
2835              org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature, Builder>
2836            implements
2837            // @@protoc_insertion_point(builder_implements:org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature)
2838            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignatureOrBuilder {
2839          // Construct using org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature.newBuilder()
2840          private Builder() {
2841            maybeForceBuilderInitialization();
2842          }
2843    
2844          private void maybeForceBuilderInitialization() {
2845          }
2846          private static Builder create() {
2847            return new Builder();
2848          }
2849    
2850          public Builder clear() {
2851            super.clear();
2852            name_ = 0;
2853            bitField0_ = (bitField0_ & ~0x00000001);
2854            desc_ = 0;
2855            bitField0_ = (bitField0_ & ~0x00000002);
2856            return this;
2857          }
2858    
2859          public Builder clone() {
2860            return create().mergeFrom(buildPartial());
2861          }
2862    
2863          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature getDefaultInstanceForType() {
2864            return org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature.getDefaultInstance();
2865          }
2866    
2867          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature build() {
2868            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature result = buildPartial();
2869            if (!result.isInitialized()) {
2870              throw newUninitializedMessageException(result);
2871            }
2872            return result;
2873          }
2874    
2875          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature buildPartial() {
2876            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature result = new org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature(this);
2877            int from_bitField0_ = bitField0_;
2878            int to_bitField0_ = 0;
2879            if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
2880              to_bitField0_ |= 0x00000001;
2881            }
2882            result.name_ = name_;
2883            if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
2884              to_bitField0_ |= 0x00000002;
2885            }
2886            result.desc_ = desc_;
2887            result.bitField0_ = to_bitField0_;
2888            return result;
2889          }
2890    
2891          public Builder mergeFrom(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature other) {
2892            if (other == org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature.getDefaultInstance()) return this;
2893            if (other.hasName()) {
2894              setName(other.getName());
2895            }
2896            if (other.hasDesc()) {
2897              setDesc(other.getDesc());
2898            }
2899            setUnknownFields(
2900                getUnknownFields().concat(other.unknownFields));
2901            return this;
2902          }
2903    
2904          public final boolean isInitialized() {
2905            return true;
2906          }
2907    
2908          public Builder mergeFrom(
2909              org.jetbrains.kotlin.protobuf.CodedInputStream input,
2910              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
2911              throws java.io.IOException {
2912            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature parsedMessage = null;
2913            try {
2914              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
2915            } catch (org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException e) {
2916              parsedMessage = (org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature) e.getUnfinishedMessage();
2917              throw e;
2918            } finally {
2919              if (parsedMessage != null) {
2920                mergeFrom(parsedMessage);
2921              }
2922            }
2923            return this;
2924          }
2925          private int bitField0_;
2926    
2927          private int name_ ;
2928          /**
2929           * <code>optional int32 name = 1;</code>
2930           */
2931          public boolean hasName() {
2932            return ((bitField0_ & 0x00000001) == 0x00000001);
2933          }
2934          /**
2935           * <code>optional int32 name = 1;</code>
2936           */
2937          public int getName() {
2938            return name_;
2939          }
2940          /**
2941           * <code>optional int32 name = 1;</code>
2942           */
2943          public Builder setName(int value) {
2944            bitField0_ |= 0x00000001;
2945            name_ = value;
2946            
2947            return this;
2948          }
2949          /**
2950           * <code>optional int32 name = 1;</code>
2951           */
2952          public Builder clearName() {
2953            bitField0_ = (bitField0_ & ~0x00000001);
2954            name_ = 0;
2955            
2956            return this;
2957          }
2958    
2959          private int desc_ ;
2960          /**
2961           * <code>optional int32 desc = 2;</code>
2962           *
2963           * <pre>
2964           * JVM descriptor of the field type, e.g. 'Ljava/lang/String;'
2965           * </pre>
2966           */
2967          public boolean hasDesc() {
2968            return ((bitField0_ & 0x00000002) == 0x00000002);
2969          }
2970          /**
2971           * <code>optional int32 desc = 2;</code>
2972           *
2973           * <pre>
2974           * JVM descriptor of the field type, e.g. 'Ljava/lang/String;'
2975           * </pre>
2976           */
2977          public int getDesc() {
2978            return desc_;
2979          }
2980          /**
2981           * <code>optional int32 desc = 2;</code>
2982           *
2983           * <pre>
2984           * JVM descriptor of the field type, e.g. 'Ljava/lang/String;'
2985           * </pre>
2986           */
2987          public Builder setDesc(int value) {
2988            bitField0_ |= 0x00000002;
2989            desc_ = value;
2990            
2991            return this;
2992          }
2993          /**
2994           * <code>optional int32 desc = 2;</code>
2995           *
2996           * <pre>
2997           * JVM descriptor of the field type, e.g. 'Ljava/lang/String;'
2998           * </pre>
2999           */
3000          public Builder clearDesc() {
3001            bitField0_ = (bitField0_ & ~0x00000002);
3002            desc_ = 0;
3003            
3004            return this;
3005          }
3006    
3007          // @@protoc_insertion_point(builder_scope:org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature)
3008        }
3009    
3010        static {
3011          defaultInstance = new JvmFieldSignature(true);
3012          defaultInstance.initFields();
3013        }
3014    
3015        // @@protoc_insertion_point(class_scope:org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature)
3016      }
3017    
3018      public interface JvmPropertySignatureOrBuilder extends
3019          // @@protoc_insertion_point(interface_extends:org.jetbrains.kotlin.serialization.jvm.JvmPropertySignature)
3020          org.jetbrains.kotlin.protobuf.MessageLiteOrBuilder {
3021    
3022        /**
3023         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature field = 1;</code>
3024         */
3025        boolean hasField();
3026        /**
3027         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature field = 1;</code>
3028         */
3029        org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature getField();
3030    
3031        /**
3032         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature synthetic_method = 2;</code>
3033         *
3034         * <pre>
3035         * Annotations on properties are written on a synthetic method with this signature
3036         * </pre>
3037         */
3038        boolean hasSyntheticMethod();
3039        /**
3040         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature synthetic_method = 2;</code>
3041         *
3042         * <pre>
3043         * Annotations on properties are written on a synthetic method with this signature
3044         * </pre>
3045         */
3046        org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature getSyntheticMethod();
3047    
3048        /**
3049         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature getter = 3;</code>
3050         */
3051        boolean hasGetter();
3052        /**
3053         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature getter = 3;</code>
3054         */
3055        org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature getGetter();
3056    
3057        /**
3058         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature setter = 4;</code>
3059         */
3060        boolean hasSetter();
3061        /**
3062         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature setter = 4;</code>
3063         */
3064        org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature getSetter();
3065      }
3066      /**
3067       * Protobuf type {@code org.jetbrains.kotlin.serialization.jvm.JvmPropertySignature}
3068       */
3069      public static final class JvmPropertySignature extends
3070          org.jetbrains.kotlin.protobuf.GeneratedMessageLite implements
3071          // @@protoc_insertion_point(message_implements:org.jetbrains.kotlin.serialization.jvm.JvmPropertySignature)
3072          JvmPropertySignatureOrBuilder {
3073        // Use JvmPropertySignature.newBuilder() to construct.
3074        private JvmPropertySignature(org.jetbrains.kotlin.protobuf.GeneratedMessageLite.Builder builder) {
3075          super(builder);
3076          this.unknownFields = builder.getUnknownFields();
3077        }
3078        private JvmPropertySignature(boolean noInit) { this.unknownFields = org.jetbrains.kotlin.protobuf.ByteString.EMPTY;}
3079    
3080        private static final JvmPropertySignature defaultInstance;
3081        public static JvmPropertySignature getDefaultInstance() {
3082          return defaultInstance;
3083        }
3084    
3085        public JvmPropertySignature getDefaultInstanceForType() {
3086          return defaultInstance;
3087        }
3088    
3089        private final org.jetbrains.kotlin.protobuf.ByteString unknownFields;
3090        private JvmPropertySignature(
3091            org.jetbrains.kotlin.protobuf.CodedInputStream input,
3092            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
3093            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
3094          initFields();
3095          int mutable_bitField0_ = 0;
3096          org.jetbrains.kotlin.protobuf.ByteString.Output unknownFieldsOutput =
3097              org.jetbrains.kotlin.protobuf.ByteString.newOutput();
3098          org.jetbrains.kotlin.protobuf.CodedOutputStream unknownFieldsCodedOutput =
3099              org.jetbrains.kotlin.protobuf.CodedOutputStream.newInstance(
3100                  unknownFieldsOutput);
3101          try {
3102            boolean done = false;
3103            while (!done) {
3104              int tag = input.readTag();
3105              switch (tag) {
3106                case 0:
3107                  done = true;
3108                  break;
3109                default: {
3110                  if (!parseUnknownField(input, unknownFieldsCodedOutput,
3111                                         extensionRegistry, tag)) {
3112                    done = true;
3113                  }
3114                  break;
3115                }
3116                case 10: {
3117                  org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature.Builder subBuilder = null;
3118                  if (((bitField0_ & 0x00000001) == 0x00000001)) {
3119                    subBuilder = field_.toBuilder();
3120                  }
3121                  field_ = input.readMessage(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature.PARSER, extensionRegistry);
3122                  if (subBuilder != null) {
3123                    subBuilder.mergeFrom(field_);
3124                    field_ = subBuilder.buildPartial();
3125                  }
3126                  bitField0_ |= 0x00000001;
3127                  break;
3128                }
3129                case 18: {
3130                  org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.Builder subBuilder = null;
3131                  if (((bitField0_ & 0x00000002) == 0x00000002)) {
3132                    subBuilder = syntheticMethod_.toBuilder();
3133                  }
3134                  syntheticMethod_ = input.readMessage(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.PARSER, extensionRegistry);
3135                  if (subBuilder != null) {
3136                    subBuilder.mergeFrom(syntheticMethod_);
3137                    syntheticMethod_ = subBuilder.buildPartial();
3138                  }
3139                  bitField0_ |= 0x00000002;
3140                  break;
3141                }
3142                case 26: {
3143                  org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.Builder subBuilder = null;
3144                  if (((bitField0_ & 0x00000004) == 0x00000004)) {
3145                    subBuilder = getter_.toBuilder();
3146                  }
3147                  getter_ = input.readMessage(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.PARSER, extensionRegistry);
3148                  if (subBuilder != null) {
3149                    subBuilder.mergeFrom(getter_);
3150                    getter_ = subBuilder.buildPartial();
3151                  }
3152                  bitField0_ |= 0x00000004;
3153                  break;
3154                }
3155                case 34: {
3156                  org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.Builder subBuilder = null;
3157                  if (((bitField0_ & 0x00000008) == 0x00000008)) {
3158                    subBuilder = setter_.toBuilder();
3159                  }
3160                  setter_ = input.readMessage(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.PARSER, extensionRegistry);
3161                  if (subBuilder != null) {
3162                    subBuilder.mergeFrom(setter_);
3163                    setter_ = subBuilder.buildPartial();
3164                  }
3165                  bitField0_ |= 0x00000008;
3166                  break;
3167                }
3168              }
3169            }
3170          } catch (org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException e) {
3171            throw e.setUnfinishedMessage(this);
3172          } catch (java.io.IOException e) {
3173            throw new org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException(
3174                e.getMessage()).setUnfinishedMessage(this);
3175          } finally {
3176            try {
3177              unknownFieldsCodedOutput.flush();
3178            } catch (java.io.IOException e) {
3179            // Should not happen
3180            } finally {
3181              unknownFields = unknownFieldsOutput.toByteString();
3182            }
3183            makeExtensionsImmutable();
3184          }
3185        }
3186        public static org.jetbrains.kotlin.protobuf.Parser<JvmPropertySignature> PARSER =
3187            new org.jetbrains.kotlin.protobuf.AbstractParser<JvmPropertySignature>() {
3188          public JvmPropertySignature parsePartialFrom(
3189              org.jetbrains.kotlin.protobuf.CodedInputStream input,
3190              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
3191              throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
3192            return new JvmPropertySignature(input, extensionRegistry);
3193          }
3194        };
3195    
3196        @java.lang.Override
3197        public org.jetbrains.kotlin.protobuf.Parser<JvmPropertySignature> getParserForType() {
3198          return PARSER;
3199        }
3200    
3201        private int bitField0_;
3202        public static final int FIELD_FIELD_NUMBER = 1;
3203        private org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature field_;
3204        /**
3205         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature field = 1;</code>
3206         */
3207        public boolean hasField() {
3208          return ((bitField0_ & 0x00000001) == 0x00000001);
3209        }
3210        /**
3211         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature field = 1;</code>
3212         */
3213        public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature getField() {
3214          return field_;
3215        }
3216    
3217        public static final int SYNTHETIC_METHOD_FIELD_NUMBER = 2;
3218        private org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature syntheticMethod_;
3219        /**
3220         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature synthetic_method = 2;</code>
3221         *
3222         * <pre>
3223         * Annotations on properties are written on a synthetic method with this signature
3224         * </pre>
3225         */
3226        public boolean hasSyntheticMethod() {
3227          return ((bitField0_ & 0x00000002) == 0x00000002);
3228        }
3229        /**
3230         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature synthetic_method = 2;</code>
3231         *
3232         * <pre>
3233         * Annotations on properties are written on a synthetic method with this signature
3234         * </pre>
3235         */
3236        public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature getSyntheticMethod() {
3237          return syntheticMethod_;
3238        }
3239    
3240        public static final int GETTER_FIELD_NUMBER = 3;
3241        private org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature getter_;
3242        /**
3243         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature getter = 3;</code>
3244         */
3245        public boolean hasGetter() {
3246          return ((bitField0_ & 0x00000004) == 0x00000004);
3247        }
3248        /**
3249         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature getter = 3;</code>
3250         */
3251        public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature getGetter() {
3252          return getter_;
3253        }
3254    
3255        public static final int SETTER_FIELD_NUMBER = 4;
3256        private org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature setter_;
3257        /**
3258         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature setter = 4;</code>
3259         */
3260        public boolean hasSetter() {
3261          return ((bitField0_ & 0x00000008) == 0x00000008);
3262        }
3263        /**
3264         * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature setter = 4;</code>
3265         */
3266        public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature getSetter() {
3267          return setter_;
3268        }
3269    
3270        private void initFields() {
3271          field_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature.getDefaultInstance();
3272          syntheticMethod_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance();
3273          getter_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance();
3274          setter_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance();
3275        }
3276        private byte memoizedIsInitialized = -1;
3277        public final boolean isInitialized() {
3278          byte isInitialized = memoizedIsInitialized;
3279          if (isInitialized == 1) return true;
3280          if (isInitialized == 0) return false;
3281    
3282          memoizedIsInitialized = 1;
3283          return true;
3284        }
3285    
3286        public void writeTo(org.jetbrains.kotlin.protobuf.CodedOutputStream output)
3287                            throws java.io.IOException {
3288          getSerializedSize();
3289          if (((bitField0_ & 0x00000001) == 0x00000001)) {
3290            output.writeMessage(1, field_);
3291          }
3292          if (((bitField0_ & 0x00000002) == 0x00000002)) {
3293            output.writeMessage(2, syntheticMethod_);
3294          }
3295          if (((bitField0_ & 0x00000004) == 0x00000004)) {
3296            output.writeMessage(3, getter_);
3297          }
3298          if (((bitField0_ & 0x00000008) == 0x00000008)) {
3299            output.writeMessage(4, setter_);
3300          }
3301          output.writeRawBytes(unknownFields);
3302        }
3303    
3304        private int memoizedSerializedSize = -1;
3305        public int getSerializedSize() {
3306          int size = memoizedSerializedSize;
3307          if (size != -1) return size;
3308    
3309          size = 0;
3310          if (((bitField0_ & 0x00000001) == 0x00000001)) {
3311            size += org.jetbrains.kotlin.protobuf.CodedOutputStream
3312              .computeMessageSize(1, field_);
3313          }
3314          if (((bitField0_ & 0x00000002) == 0x00000002)) {
3315            size += org.jetbrains.kotlin.protobuf.CodedOutputStream
3316              .computeMessageSize(2, syntheticMethod_);
3317          }
3318          if (((bitField0_ & 0x00000004) == 0x00000004)) {
3319            size += org.jetbrains.kotlin.protobuf.CodedOutputStream
3320              .computeMessageSize(3, getter_);
3321          }
3322          if (((bitField0_ & 0x00000008) == 0x00000008)) {
3323            size += org.jetbrains.kotlin.protobuf.CodedOutputStream
3324              .computeMessageSize(4, setter_);
3325          }
3326          size += unknownFields.size();
3327          memoizedSerializedSize = size;
3328          return size;
3329        }
3330    
3331        private static final long serialVersionUID = 0L;
3332        @java.lang.Override
3333        protected java.lang.Object writeReplace()
3334            throws java.io.ObjectStreamException {
3335          return super.writeReplace();
3336        }
3337    
3338        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature parseFrom(
3339            org.jetbrains.kotlin.protobuf.ByteString data)
3340            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
3341          return PARSER.parseFrom(data);
3342        }
3343        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature parseFrom(
3344            org.jetbrains.kotlin.protobuf.ByteString data,
3345            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
3346            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
3347          return PARSER.parseFrom(data, extensionRegistry);
3348        }
3349        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature parseFrom(byte[] data)
3350            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
3351          return PARSER.parseFrom(data);
3352        }
3353        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature parseFrom(
3354            byte[] data,
3355            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
3356            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
3357          return PARSER.parseFrom(data, extensionRegistry);
3358        }
3359        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature parseFrom(java.io.InputStream input)
3360            throws java.io.IOException {
3361          return PARSER.parseFrom(input);
3362        }
3363        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature parseFrom(
3364            java.io.InputStream input,
3365            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
3366            throws java.io.IOException {
3367          return PARSER.parseFrom(input, extensionRegistry);
3368        }
3369        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature parseDelimitedFrom(java.io.InputStream input)
3370            throws java.io.IOException {
3371          return PARSER.parseDelimitedFrom(input);
3372        }
3373        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature parseDelimitedFrom(
3374            java.io.InputStream input,
3375            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
3376            throws java.io.IOException {
3377          return PARSER.parseDelimitedFrom(input, extensionRegistry);
3378        }
3379        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature parseFrom(
3380            org.jetbrains.kotlin.protobuf.CodedInputStream input)
3381            throws java.io.IOException {
3382          return PARSER.parseFrom(input);
3383        }
3384        public static org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature parseFrom(
3385            org.jetbrains.kotlin.protobuf.CodedInputStream input,
3386            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
3387            throws java.io.IOException {
3388          return PARSER.parseFrom(input, extensionRegistry);
3389        }
3390    
3391        public static Builder newBuilder() { return Builder.create(); }
3392        public Builder newBuilderForType() { return newBuilder(); }
3393        public static Builder newBuilder(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature prototype) {
3394          return newBuilder().mergeFrom(prototype);
3395        }
3396        public Builder toBuilder() { return newBuilder(this); }
3397    
3398        /**
3399         * Protobuf type {@code org.jetbrains.kotlin.serialization.jvm.JvmPropertySignature}
3400         */
3401        public static final class Builder extends
3402            org.jetbrains.kotlin.protobuf.GeneratedMessageLite.Builder<
3403              org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature, Builder>
3404            implements
3405            // @@protoc_insertion_point(builder_implements:org.jetbrains.kotlin.serialization.jvm.JvmPropertySignature)
3406            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignatureOrBuilder {
3407          // Construct using org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature.newBuilder()
3408          private Builder() {
3409            maybeForceBuilderInitialization();
3410          }
3411    
3412          private void maybeForceBuilderInitialization() {
3413          }
3414          private static Builder create() {
3415            return new Builder();
3416          }
3417    
3418          public Builder clear() {
3419            super.clear();
3420            field_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature.getDefaultInstance();
3421            bitField0_ = (bitField0_ & ~0x00000001);
3422            syntheticMethod_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance();
3423            bitField0_ = (bitField0_ & ~0x00000002);
3424            getter_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance();
3425            bitField0_ = (bitField0_ & ~0x00000004);
3426            setter_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance();
3427            bitField0_ = (bitField0_ & ~0x00000008);
3428            return this;
3429          }
3430    
3431          public Builder clone() {
3432            return create().mergeFrom(buildPartial());
3433          }
3434    
3435          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature getDefaultInstanceForType() {
3436            return org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature.getDefaultInstance();
3437          }
3438    
3439          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature build() {
3440            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature result = buildPartial();
3441            if (!result.isInitialized()) {
3442              throw newUninitializedMessageException(result);
3443            }
3444            return result;
3445          }
3446    
3447          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature buildPartial() {
3448            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature result = new org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature(this);
3449            int from_bitField0_ = bitField0_;
3450            int to_bitField0_ = 0;
3451            if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
3452              to_bitField0_ |= 0x00000001;
3453            }
3454            result.field_ = field_;
3455            if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
3456              to_bitField0_ |= 0x00000002;
3457            }
3458            result.syntheticMethod_ = syntheticMethod_;
3459            if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
3460              to_bitField0_ |= 0x00000004;
3461            }
3462            result.getter_ = getter_;
3463            if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
3464              to_bitField0_ |= 0x00000008;
3465            }
3466            result.setter_ = setter_;
3467            result.bitField0_ = to_bitField0_;
3468            return result;
3469          }
3470    
3471          public Builder mergeFrom(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature other) {
3472            if (other == org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature.getDefaultInstance()) return this;
3473            if (other.hasField()) {
3474              mergeField(other.getField());
3475            }
3476            if (other.hasSyntheticMethod()) {
3477              mergeSyntheticMethod(other.getSyntheticMethod());
3478            }
3479            if (other.hasGetter()) {
3480              mergeGetter(other.getGetter());
3481            }
3482            if (other.hasSetter()) {
3483              mergeSetter(other.getSetter());
3484            }
3485            setUnknownFields(
3486                getUnknownFields().concat(other.unknownFields));
3487            return this;
3488          }
3489    
3490          public final boolean isInitialized() {
3491            return true;
3492          }
3493    
3494          public Builder mergeFrom(
3495              org.jetbrains.kotlin.protobuf.CodedInputStream input,
3496              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
3497              throws java.io.IOException {
3498            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature parsedMessage = null;
3499            try {
3500              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
3501            } catch (org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException e) {
3502              parsedMessage = (org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature) e.getUnfinishedMessage();
3503              throw e;
3504            } finally {
3505              if (parsedMessage != null) {
3506                mergeFrom(parsedMessage);
3507              }
3508            }
3509            return this;
3510          }
3511          private int bitField0_;
3512    
3513          private org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature field_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature.getDefaultInstance();
3514          /**
3515           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature field = 1;</code>
3516           */
3517          public boolean hasField() {
3518            return ((bitField0_ & 0x00000001) == 0x00000001);
3519          }
3520          /**
3521           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature field = 1;</code>
3522           */
3523          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature getField() {
3524            return field_;
3525          }
3526          /**
3527           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature field = 1;</code>
3528           */
3529          public Builder setField(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature value) {
3530            if (value == null) {
3531              throw new NullPointerException();
3532            }
3533            field_ = value;
3534    
3535            bitField0_ |= 0x00000001;
3536            return this;
3537          }
3538          /**
3539           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature field = 1;</code>
3540           */
3541          public Builder setField(
3542              org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature.Builder builderForValue) {
3543            field_ = builderForValue.build();
3544    
3545            bitField0_ |= 0x00000001;
3546            return this;
3547          }
3548          /**
3549           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature field = 1;</code>
3550           */
3551          public Builder mergeField(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature value) {
3552            if (((bitField0_ & 0x00000001) == 0x00000001) &&
3553                field_ != org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature.getDefaultInstance()) {
3554              field_ =
3555                org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature.newBuilder(field_).mergeFrom(value).buildPartial();
3556            } else {
3557              field_ = value;
3558            }
3559    
3560            bitField0_ |= 0x00000001;
3561            return this;
3562          }
3563          /**
3564           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmFieldSignature field = 1;</code>
3565           */
3566          public Builder clearField() {
3567            field_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmFieldSignature.getDefaultInstance();
3568    
3569            bitField0_ = (bitField0_ & ~0x00000001);
3570            return this;
3571          }
3572    
3573          private org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature syntheticMethod_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance();
3574          /**
3575           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature synthetic_method = 2;</code>
3576           *
3577           * <pre>
3578           * Annotations on properties are written on a synthetic method with this signature
3579           * </pre>
3580           */
3581          public boolean hasSyntheticMethod() {
3582            return ((bitField0_ & 0x00000002) == 0x00000002);
3583          }
3584          /**
3585           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature synthetic_method = 2;</code>
3586           *
3587           * <pre>
3588           * Annotations on properties are written on a synthetic method with this signature
3589           * </pre>
3590           */
3591          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature getSyntheticMethod() {
3592            return syntheticMethod_;
3593          }
3594          /**
3595           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature synthetic_method = 2;</code>
3596           *
3597           * <pre>
3598           * Annotations on properties are written on a synthetic method with this signature
3599           * </pre>
3600           */
3601          public Builder setSyntheticMethod(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature value) {
3602            if (value == null) {
3603              throw new NullPointerException();
3604            }
3605            syntheticMethod_ = value;
3606    
3607            bitField0_ |= 0x00000002;
3608            return this;
3609          }
3610          /**
3611           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature synthetic_method = 2;</code>
3612           *
3613           * <pre>
3614           * Annotations on properties are written on a synthetic method with this signature
3615           * </pre>
3616           */
3617          public Builder setSyntheticMethod(
3618              org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.Builder builderForValue) {
3619            syntheticMethod_ = builderForValue.build();
3620    
3621            bitField0_ |= 0x00000002;
3622            return this;
3623          }
3624          /**
3625           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature synthetic_method = 2;</code>
3626           *
3627           * <pre>
3628           * Annotations on properties are written on a synthetic method with this signature
3629           * </pre>
3630           */
3631          public Builder mergeSyntheticMethod(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature value) {
3632            if (((bitField0_ & 0x00000002) == 0x00000002) &&
3633                syntheticMethod_ != org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance()) {
3634              syntheticMethod_ =
3635                org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.newBuilder(syntheticMethod_).mergeFrom(value).buildPartial();
3636            } else {
3637              syntheticMethod_ = value;
3638            }
3639    
3640            bitField0_ |= 0x00000002;
3641            return this;
3642          }
3643          /**
3644           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature synthetic_method = 2;</code>
3645           *
3646           * <pre>
3647           * Annotations on properties are written on a synthetic method with this signature
3648           * </pre>
3649           */
3650          public Builder clearSyntheticMethod() {
3651            syntheticMethod_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance();
3652    
3653            bitField0_ = (bitField0_ & ~0x00000002);
3654            return this;
3655          }
3656    
3657          private org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature getter_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance();
3658          /**
3659           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature getter = 3;</code>
3660           */
3661          public boolean hasGetter() {
3662            return ((bitField0_ & 0x00000004) == 0x00000004);
3663          }
3664          /**
3665           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature getter = 3;</code>
3666           */
3667          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature getGetter() {
3668            return getter_;
3669          }
3670          /**
3671           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature getter = 3;</code>
3672           */
3673          public Builder setGetter(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature value) {
3674            if (value == null) {
3675              throw new NullPointerException();
3676            }
3677            getter_ = value;
3678    
3679            bitField0_ |= 0x00000004;
3680            return this;
3681          }
3682          /**
3683           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature getter = 3;</code>
3684           */
3685          public Builder setGetter(
3686              org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.Builder builderForValue) {
3687            getter_ = builderForValue.build();
3688    
3689            bitField0_ |= 0x00000004;
3690            return this;
3691          }
3692          /**
3693           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature getter = 3;</code>
3694           */
3695          public Builder mergeGetter(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature value) {
3696            if (((bitField0_ & 0x00000004) == 0x00000004) &&
3697                getter_ != org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance()) {
3698              getter_ =
3699                org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.newBuilder(getter_).mergeFrom(value).buildPartial();
3700            } else {
3701              getter_ = value;
3702            }
3703    
3704            bitField0_ |= 0x00000004;
3705            return this;
3706          }
3707          /**
3708           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature getter = 3;</code>
3709           */
3710          public Builder clearGetter() {
3711            getter_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance();
3712    
3713            bitField0_ = (bitField0_ & ~0x00000004);
3714            return this;
3715          }
3716    
3717          private org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature setter_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance();
3718          /**
3719           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature setter = 4;</code>
3720           */
3721          public boolean hasSetter() {
3722            return ((bitField0_ & 0x00000008) == 0x00000008);
3723          }
3724          /**
3725           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature setter = 4;</code>
3726           */
3727          public org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature getSetter() {
3728            return setter_;
3729          }
3730          /**
3731           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature setter = 4;</code>
3732           */
3733          public Builder setSetter(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature value) {
3734            if (value == null) {
3735              throw new NullPointerException();
3736            }
3737            setter_ = value;
3738    
3739            bitField0_ |= 0x00000008;
3740            return this;
3741          }
3742          /**
3743           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature setter = 4;</code>
3744           */
3745          public Builder setSetter(
3746              org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.Builder builderForValue) {
3747            setter_ = builderForValue.build();
3748    
3749            bitField0_ |= 0x00000008;
3750            return this;
3751          }
3752          /**
3753           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature setter = 4;</code>
3754           */
3755          public Builder mergeSetter(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature value) {
3756            if (((bitField0_ & 0x00000008) == 0x00000008) &&
3757                setter_ != org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance()) {
3758              setter_ =
3759                org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.newBuilder(setter_).mergeFrom(value).buildPartial();
3760            } else {
3761              setter_ = value;
3762            }
3763    
3764            bitField0_ |= 0x00000008;
3765            return this;
3766          }
3767          /**
3768           * <code>optional .org.jetbrains.kotlin.serialization.jvm.JvmMethodSignature setter = 4;</code>
3769           */
3770          public Builder clearSetter() {
3771            setter_ = org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance();
3772    
3773            bitField0_ = (bitField0_ & ~0x00000008);
3774            return this;
3775          }
3776    
3777          // @@protoc_insertion_point(builder_scope:org.jetbrains.kotlin.serialization.jvm.JvmPropertySignature)
3778        }
3779    
3780        static {
3781          defaultInstance = new JvmPropertySignature(true);
3782          defaultInstance.initFields();
3783        }
3784    
3785        // @@protoc_insertion_point(class_scope:org.jetbrains.kotlin.serialization.jvm.JvmPropertySignature)
3786      }
3787    
3788      public static final int CONSTRUCTOR_SIGNATURE_FIELD_NUMBER = 100;
3789      /**
3790       * <code>extend .org.jetbrains.kotlin.serialization.Constructor { ... }</code>
3791       */
3792      public static final
3793        org.jetbrains.kotlin.protobuf.GeneratedMessageLite.GeneratedExtension<
3794          org.jetbrains.kotlin.serialization.ProtoBuf.Constructor,
3795          org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature> constructorSignature = org.jetbrains.kotlin.protobuf.GeneratedMessageLite
3796              .newSingularGeneratedExtension(
3797            org.jetbrains.kotlin.serialization.ProtoBuf.Constructor.getDefaultInstance(),
3798            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance(),
3799            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance(),
3800            null,
3801            100,
3802            org.jetbrains.kotlin.protobuf.WireFormat.FieldType.MESSAGE,
3803            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.class);
3804      public static final int METHOD_SIGNATURE_FIELD_NUMBER = 100;
3805      /**
3806       * <code>extend .org.jetbrains.kotlin.serialization.Function { ... }</code>
3807       */
3808      public static final
3809        org.jetbrains.kotlin.protobuf.GeneratedMessageLite.GeneratedExtension<
3810          org.jetbrains.kotlin.serialization.ProtoBuf.Function,
3811          org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature> methodSignature = org.jetbrains.kotlin.protobuf.GeneratedMessageLite
3812              .newSingularGeneratedExtension(
3813            org.jetbrains.kotlin.serialization.ProtoBuf.Function.getDefaultInstance(),
3814            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance(),
3815            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.getDefaultInstance(),
3816            null,
3817            100,
3818            org.jetbrains.kotlin.protobuf.WireFormat.FieldType.MESSAGE,
3819            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmMethodSignature.class);
3820      public static final int PROPERTY_SIGNATURE_FIELD_NUMBER = 100;
3821      /**
3822       * <code>extend .org.jetbrains.kotlin.serialization.Property { ... }</code>
3823       */
3824      public static final
3825        org.jetbrains.kotlin.protobuf.GeneratedMessageLite.GeneratedExtension<
3826          org.jetbrains.kotlin.serialization.ProtoBuf.Property,
3827          org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature> propertySignature = org.jetbrains.kotlin.protobuf.GeneratedMessageLite
3828              .newSingularGeneratedExtension(
3829            org.jetbrains.kotlin.serialization.ProtoBuf.Property.getDefaultInstance(),
3830            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature.getDefaultInstance(),
3831            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature.getDefaultInstance(),
3832            null,
3833            100,
3834            org.jetbrains.kotlin.protobuf.WireFormat.FieldType.MESSAGE,
3835            org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.JvmPropertySignature.class);
3836      public static final int TYPE_ANNOTATION_FIELD_NUMBER = 100;
3837      /**
3838       * <code>extend .org.jetbrains.kotlin.serialization.Type { ... }</code>
3839       */
3840      public static final
3841        org.jetbrains.kotlin.protobuf.GeneratedMessageLite.GeneratedExtension<
3842          org.jetbrains.kotlin.serialization.ProtoBuf.Type,
3843          java.util.List<org.jetbrains.kotlin.serialization.ProtoBuf.Annotation>> typeAnnotation = org.jetbrains.kotlin.protobuf.GeneratedMessageLite
3844              .newRepeatedGeneratedExtension(
3845            org.jetbrains.kotlin.serialization.ProtoBuf.Type.getDefaultInstance(),
3846            org.jetbrains.kotlin.serialization.ProtoBuf.Annotation.getDefaultInstance(),
3847            null,
3848            100,
3849            org.jetbrains.kotlin.protobuf.WireFormat.FieldType.MESSAGE,
3850            false,
3851            org.jetbrains.kotlin.serialization.ProtoBuf.Annotation.class);
3852      public static final int IS_RAW_FIELD_NUMBER = 101;
3853      /**
3854       * <code>extend .org.jetbrains.kotlin.serialization.Type { ... }</code>
3855       */
3856      public static final
3857        org.jetbrains.kotlin.protobuf.GeneratedMessageLite.GeneratedExtension<
3858          org.jetbrains.kotlin.serialization.ProtoBuf.Type,
3859          java.lang.Boolean> isRaw = org.jetbrains.kotlin.protobuf.GeneratedMessageLite
3860              .newSingularGeneratedExtension(
3861            org.jetbrains.kotlin.serialization.ProtoBuf.Type.getDefaultInstance(),
3862            false,
3863            null,
3864            null,
3865            101,
3866            org.jetbrains.kotlin.protobuf.WireFormat.FieldType.BOOL,
3867            java.lang.Boolean.class);
3868      public static final int TYPE_PARAMETER_ANNOTATION_FIELD_NUMBER = 100;
3869      /**
3870       * <code>extend .org.jetbrains.kotlin.serialization.TypeParameter { ... }</code>
3871       */
3872      public static final
3873        org.jetbrains.kotlin.protobuf.GeneratedMessageLite.GeneratedExtension<
3874          org.jetbrains.kotlin.serialization.ProtoBuf.TypeParameter,
3875          java.util.List<org.jetbrains.kotlin.serialization.ProtoBuf.Annotation>> typeParameterAnnotation = org.jetbrains.kotlin.protobuf.GeneratedMessageLite
3876              .newRepeatedGeneratedExtension(
3877            org.jetbrains.kotlin.serialization.ProtoBuf.TypeParameter.getDefaultInstance(),
3878            org.jetbrains.kotlin.serialization.ProtoBuf.Annotation.getDefaultInstance(),
3879            null,
3880            100,
3881            org.jetbrains.kotlin.protobuf.WireFormat.FieldType.MESSAGE,
3882            false,
3883            org.jetbrains.kotlin.serialization.ProtoBuf.Annotation.class);
3884      public static final int CLASS_MODULE_NAME_FIELD_NUMBER = 101;
3885      /**
3886       * <code>extend .org.jetbrains.kotlin.serialization.Class { ... }</code>
3887       *
3888       * <pre>
3889       * If absent, assumed to be JvmAbi.DEFAULT_MODULE_NAME
3890       * </pre>
3891       */
3892      public static final
3893        org.jetbrains.kotlin.protobuf.GeneratedMessageLite.GeneratedExtension<
3894          org.jetbrains.kotlin.serialization.ProtoBuf.Class,
3895          java.lang.Integer> classModuleName = org.jetbrains.kotlin.protobuf.GeneratedMessageLite
3896              .newSingularGeneratedExtension(
3897            org.jetbrains.kotlin.serialization.ProtoBuf.Class.getDefaultInstance(),
3898            0,
3899            null,
3900            null,
3901            101,
3902            org.jetbrains.kotlin.protobuf.WireFormat.FieldType.INT32,
3903            java.lang.Integer.class);
3904      public static final int PACKAGE_MODULE_NAME_FIELD_NUMBER = 101;
3905      /**
3906       * <code>extend .org.jetbrains.kotlin.serialization.Package { ... }</code>
3907       */
3908      public static final
3909        org.jetbrains.kotlin.protobuf.GeneratedMessageLite.GeneratedExtension<
3910          org.jetbrains.kotlin.serialization.ProtoBuf.Package,
3911          java.lang.Integer> packageModuleName = org.jetbrains.kotlin.protobuf.GeneratedMessageLite
3912              .newSingularGeneratedExtension(
3913            org.jetbrains.kotlin.serialization.ProtoBuf.Package.getDefaultInstance(),
3914            0,
3915            null,
3916            null,
3917            101,
3918            org.jetbrains.kotlin.protobuf.WireFormat.FieldType.INT32,
3919            java.lang.Integer.class);
3920    
3921      static {
3922      }
3923    
3924      // @@protoc_insertion_point(outer_class_scope)
3925    }