All Downloads are FREE. Search and download functionalities are using the official Maven repository.

tensorflow.tfprof.pprof.ProfileOuterClass Maven / Gradle / Ivy

The newest version!
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: tensorflow/core/profiler/profile.proto

package tensorflow.tfprof.pprof;

public final class ProfileOuterClass {
  private ProfileOuterClass() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistryLite registry) {
  }

  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistry registry) {
    registerAllExtensions(
        (com.google.protobuf.ExtensionRegistryLite) registry);
  }
  public interface ProfileOrBuilder extends
      // @@protoc_insertion_point(interface_extends:tensorflow.tfprof.pprof.Profile)
      com.google.protobuf.MessageOrBuilder {

    /**
     * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
     */
    java.util.List 
        getSampleTypeList();
    /**
     * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
     */
    tensorflow.tfprof.pprof.ProfileOuterClass.ValueType getSampleType(int index);
    /**
     * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
     */
    int getSampleTypeCount();
    /**
     * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
     */
    java.util.List 
        getSampleTypeOrBuilderList();
    /**
     * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
     */
    tensorflow.tfprof.pprof.ProfileOuterClass.ValueTypeOrBuilder getSampleTypeOrBuilder(
        int index);

    /**
     * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
     */
    java.util.List 
        getSampleList();
    /**
     * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
     */
    tensorflow.tfprof.pprof.ProfileOuterClass.Sample getSample(int index);
    /**
     * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
     */
    int getSampleCount();
    /**
     * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
     */
    java.util.List 
        getSampleOrBuilderList();
    /**
     * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
     */
    tensorflow.tfprof.pprof.ProfileOuterClass.SampleOrBuilder getSampleOrBuilder(
        int index);

    /**
     * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
     */
    java.util.List 
        getMappingList();
    /**
     * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
     */
    tensorflow.tfprof.pprof.ProfileOuterClass.Mapping getMapping(int index);
    /**
     * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
     */
    int getMappingCount();
    /**
     * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
     */
    java.util.List 
        getMappingOrBuilderList();
    /**
     * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
     */
    tensorflow.tfprof.pprof.ProfileOuterClass.MappingOrBuilder getMappingOrBuilder(
        int index);

    /**
     * repeated .tensorflow.tfprof.pprof.Location location = 4;
     */
    java.util.List 
        getLocationList();
    /**
     * repeated .tensorflow.tfprof.pprof.Location location = 4;
     */
    tensorflow.tfprof.pprof.ProfileOuterClass.Location getLocation(int index);
    /**
     * repeated .tensorflow.tfprof.pprof.Location location = 4;
     */
    int getLocationCount();
    /**
     * repeated .tensorflow.tfprof.pprof.Location location = 4;
     */
    java.util.List 
        getLocationOrBuilderList();
    /**
     * repeated .tensorflow.tfprof.pprof.Location location = 4;
     */
    tensorflow.tfprof.pprof.ProfileOuterClass.LocationOrBuilder getLocationOrBuilder(
        int index);

    /**
     * repeated .tensorflow.tfprof.pprof.Function function = 5;
     */
    java.util.List 
        getFunctionList();
    /**
     * repeated .tensorflow.tfprof.pprof.Function function = 5;
     */
    tensorflow.tfprof.pprof.ProfileOuterClass.Function getFunction(int index);
    /**
     * repeated .tensorflow.tfprof.pprof.Function function = 5;
     */
    int getFunctionCount();
    /**
     * repeated .tensorflow.tfprof.pprof.Function function = 5;
     */
    java.util.List 
        getFunctionOrBuilderList();
    /**
     * repeated .tensorflow.tfprof.pprof.Function function = 5;
     */
    tensorflow.tfprof.pprof.ProfileOuterClass.FunctionOrBuilder getFunctionOrBuilder(
        int index);

    /**
     * repeated string string_table = 6;
     */
    java.util.List
        getStringTableList();
    /**
     * repeated string string_table = 6;
     */
    int getStringTableCount();
    /**
     * repeated string string_table = 6;
     */
    java.lang.String getStringTable(int index);
    /**
     * repeated string string_table = 6;
     */
    com.google.protobuf.ByteString
        getStringTableBytes(int index);

    /**
     * int64 drop_frames = 7;
     */
    long getDropFrames();

    /**
     * int64 keep_frames = 8;
     */
    long getKeepFrames();

    /**
     * int64 time_nanos = 9;
     */
    long getTimeNanos();

    /**
     * int64 duration_nanos = 10;
     */
    long getDurationNanos();

    /**
     * .tensorflow.tfprof.pprof.ValueType period_type = 11;
     */
    boolean hasPeriodType();
    /**
     * .tensorflow.tfprof.pprof.ValueType period_type = 11;
     */
    tensorflow.tfprof.pprof.ProfileOuterClass.ValueType getPeriodType();
    /**
     * .tensorflow.tfprof.pprof.ValueType period_type = 11;
     */
    tensorflow.tfprof.pprof.ProfileOuterClass.ValueTypeOrBuilder getPeriodTypeOrBuilder();

    /**
     * int64 period = 12;
     */
    long getPeriod();

    /**
     * repeated int64 comment = 13;
     */
    java.util.List getCommentList();
    /**
     * repeated int64 comment = 13;
     */
    int getCommentCount();
    /**
     * repeated int64 comment = 13;
     */
    long getComment(int index);

    /**
     * int64 default_sample_type = 14;
     */
    long getDefaultSampleType();
  }
  /**
   * Protobuf type {@code tensorflow.tfprof.pprof.Profile}
   */
  public  static final class Profile extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:tensorflow.tfprof.pprof.Profile)
      ProfileOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Profile.newBuilder() to construct.
    private Profile(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private Profile() {
      sampleType_ = java.util.Collections.emptyList();
      sample_ = java.util.Collections.emptyList();
      mapping_ = java.util.Collections.emptyList();
      location_ = java.util.Collections.emptyList();
      function_ = java.util.Collections.emptyList();
      stringTable_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      dropFrames_ = 0L;
      keepFrames_ = 0L;
      timeNanos_ = 0L;
      durationNanos_ = 0L;
      period_ = 0L;
      comment_ = java.util.Collections.emptyList();
      defaultSampleType_ = 0L;
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Profile(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                sampleType_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              sampleType_.add(
                  input.readMessage(tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.parser(), extensionRegistry));
              break;
            }
            case 18: {
              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                sample_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000002;
              }
              sample_.add(
                  input.readMessage(tensorflow.tfprof.pprof.ProfileOuterClass.Sample.parser(), extensionRegistry));
              break;
            }
            case 26: {
              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
                mapping_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000004;
              }
              mapping_.add(
                  input.readMessage(tensorflow.tfprof.pprof.ProfileOuterClass.Mapping.parser(), extensionRegistry));
              break;
            }
            case 34: {
              if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
                location_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000008;
              }
              location_.add(
                  input.readMessage(tensorflow.tfprof.pprof.ProfileOuterClass.Location.parser(), extensionRegistry));
              break;
            }
            case 42: {
              if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
                function_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000010;
              }
              function_.add(
                  input.readMessage(tensorflow.tfprof.pprof.ProfileOuterClass.Function.parser(), extensionRegistry));
              break;
            }
            case 50: {
              java.lang.String s = input.readStringRequireUtf8();
              if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
                stringTable_ = new com.google.protobuf.LazyStringArrayList();
                mutable_bitField0_ |= 0x00000020;
              }
              stringTable_.add(s);
              break;
            }
            case 56: {

              dropFrames_ = input.readInt64();
              break;
            }
            case 64: {

              keepFrames_ = input.readInt64();
              break;
            }
            case 72: {

              timeNanos_ = input.readInt64();
              break;
            }
            case 80: {

              durationNanos_ = input.readInt64();
              break;
            }
            case 90: {
              tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder subBuilder = null;
              if (periodType_ != null) {
                subBuilder = periodType_.toBuilder();
              }
              periodType_ = input.readMessage(tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(periodType_);
                periodType_ = subBuilder.buildPartial();
              }

              break;
            }
            case 96: {

              period_ = input.readInt64();
              break;
            }
            case 104: {
              if (!((mutable_bitField0_ & 0x00001000) == 0x00001000)) {
                comment_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00001000;
              }
              comment_.add(input.readInt64());
              break;
            }
            case 106: {
              int length = input.readRawVarint32();
              int limit = input.pushLimit(length);
              if (!((mutable_bitField0_ & 0x00001000) == 0x00001000) && input.getBytesUntilLimit() > 0) {
                comment_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00001000;
              }
              while (input.getBytesUntilLimit() > 0) {
                comment_.add(input.readInt64());
              }
              input.popLimit(limit);
              break;
            }
            case 112: {

              defaultSampleType_ = input.readInt64();
              break;
            }
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
          sampleType_ = java.util.Collections.unmodifiableList(sampleType_);
        }
        if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
          sample_ = java.util.Collections.unmodifiableList(sample_);
        }
        if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
          mapping_ = java.util.Collections.unmodifiableList(mapping_);
        }
        if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
          location_ = java.util.Collections.unmodifiableList(location_);
        }
        if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
          function_ = java.util.Collections.unmodifiableList(function_);
        }
        if (((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
          stringTable_ = stringTable_.getUnmodifiableView();
        }
        if (((mutable_bitField0_ & 0x00001000) == 0x00001000)) {
          comment_ = java.util.Collections.unmodifiableList(comment_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_Profile_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_Profile_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              tensorflow.tfprof.pprof.ProfileOuterClass.Profile.class, tensorflow.tfprof.pprof.ProfileOuterClass.Profile.Builder.class);
    }

    private int bitField0_;
    public static final int SAMPLE_TYPE_FIELD_NUMBER = 1;
    private java.util.List sampleType_;
    /**
     * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
     */
    public java.util.List getSampleTypeList() {
      return sampleType_;
    }
    /**
     * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
     */
    public java.util.List 
        getSampleTypeOrBuilderList() {
      return sampleType_;
    }
    /**
     * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
     */
    public int getSampleTypeCount() {
      return sampleType_.size();
    }
    /**
     * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
     */
    public tensorflow.tfprof.pprof.ProfileOuterClass.ValueType getSampleType(int index) {
      return sampleType_.get(index);
    }
    /**
     * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
     */
    public tensorflow.tfprof.pprof.ProfileOuterClass.ValueTypeOrBuilder getSampleTypeOrBuilder(
        int index) {
      return sampleType_.get(index);
    }

    public static final int SAMPLE_FIELD_NUMBER = 2;
    private java.util.List sample_;
    /**
     * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
     */
    public java.util.List getSampleList() {
      return sample_;
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
     */
    public java.util.List 
        getSampleOrBuilderList() {
      return sample_;
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
     */
    public int getSampleCount() {
      return sample_.size();
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
     */
    public tensorflow.tfprof.pprof.ProfileOuterClass.Sample getSample(int index) {
      return sample_.get(index);
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
     */
    public tensorflow.tfprof.pprof.ProfileOuterClass.SampleOrBuilder getSampleOrBuilder(
        int index) {
      return sample_.get(index);
    }

    public static final int MAPPING_FIELD_NUMBER = 3;
    private java.util.List mapping_;
    /**
     * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
     */
    public java.util.List getMappingList() {
      return mapping_;
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
     */
    public java.util.List 
        getMappingOrBuilderList() {
      return mapping_;
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
     */
    public int getMappingCount() {
      return mapping_.size();
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
     */
    public tensorflow.tfprof.pprof.ProfileOuterClass.Mapping getMapping(int index) {
      return mapping_.get(index);
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
     */
    public tensorflow.tfprof.pprof.ProfileOuterClass.MappingOrBuilder getMappingOrBuilder(
        int index) {
      return mapping_.get(index);
    }

    public static final int LOCATION_FIELD_NUMBER = 4;
    private java.util.List location_;
    /**
     * repeated .tensorflow.tfprof.pprof.Location location = 4;
     */
    public java.util.List getLocationList() {
      return location_;
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Location location = 4;
     */
    public java.util.List 
        getLocationOrBuilderList() {
      return location_;
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Location location = 4;
     */
    public int getLocationCount() {
      return location_.size();
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Location location = 4;
     */
    public tensorflow.tfprof.pprof.ProfileOuterClass.Location getLocation(int index) {
      return location_.get(index);
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Location location = 4;
     */
    public tensorflow.tfprof.pprof.ProfileOuterClass.LocationOrBuilder getLocationOrBuilder(
        int index) {
      return location_.get(index);
    }

    public static final int FUNCTION_FIELD_NUMBER = 5;
    private java.util.List function_;
    /**
     * repeated .tensorflow.tfprof.pprof.Function function = 5;
     */
    public java.util.List getFunctionList() {
      return function_;
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Function function = 5;
     */
    public java.util.List 
        getFunctionOrBuilderList() {
      return function_;
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Function function = 5;
     */
    public int getFunctionCount() {
      return function_.size();
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Function function = 5;
     */
    public tensorflow.tfprof.pprof.ProfileOuterClass.Function getFunction(int index) {
      return function_.get(index);
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Function function = 5;
     */
    public tensorflow.tfprof.pprof.ProfileOuterClass.FunctionOrBuilder getFunctionOrBuilder(
        int index) {
      return function_.get(index);
    }

    public static final int STRING_TABLE_FIELD_NUMBER = 6;
    private com.google.protobuf.LazyStringList stringTable_;
    /**
     * repeated string string_table = 6;
     */
    public com.google.protobuf.ProtocolStringList
        getStringTableList() {
      return stringTable_;
    }
    /**
     * repeated string string_table = 6;
     */
    public int getStringTableCount() {
      return stringTable_.size();
    }
    /**
     * repeated string string_table = 6;
     */
    public java.lang.String getStringTable(int index) {
      return stringTable_.get(index);
    }
    /**
     * repeated string string_table = 6;
     */
    public com.google.protobuf.ByteString
        getStringTableBytes(int index) {
      return stringTable_.getByteString(index);
    }

    public static final int DROP_FRAMES_FIELD_NUMBER = 7;
    private long dropFrames_;
    /**
     * int64 drop_frames = 7;
     */
    public long getDropFrames() {
      return dropFrames_;
    }

    public static final int KEEP_FRAMES_FIELD_NUMBER = 8;
    private long keepFrames_;
    /**
     * int64 keep_frames = 8;
     */
    public long getKeepFrames() {
      return keepFrames_;
    }

    public static final int TIME_NANOS_FIELD_NUMBER = 9;
    private long timeNanos_;
    /**
     * int64 time_nanos = 9;
     */
    public long getTimeNanos() {
      return timeNanos_;
    }

    public static final int DURATION_NANOS_FIELD_NUMBER = 10;
    private long durationNanos_;
    /**
     * int64 duration_nanos = 10;
     */
    public long getDurationNanos() {
      return durationNanos_;
    }

    public static final int PERIOD_TYPE_FIELD_NUMBER = 11;
    private tensorflow.tfprof.pprof.ProfileOuterClass.ValueType periodType_;
    /**
     * .tensorflow.tfprof.pprof.ValueType period_type = 11;
     */
    public boolean hasPeriodType() {
      return periodType_ != null;
    }
    /**
     * .tensorflow.tfprof.pprof.ValueType period_type = 11;
     */
    public tensorflow.tfprof.pprof.ProfileOuterClass.ValueType getPeriodType() {
      return periodType_ == null ? tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.getDefaultInstance() : periodType_;
    }
    /**
     * .tensorflow.tfprof.pprof.ValueType period_type = 11;
     */
    public tensorflow.tfprof.pprof.ProfileOuterClass.ValueTypeOrBuilder getPeriodTypeOrBuilder() {
      return getPeriodType();
    }

    public static final int PERIOD_FIELD_NUMBER = 12;
    private long period_;
    /**
     * int64 period = 12;
     */
    public long getPeriod() {
      return period_;
    }

    public static final int COMMENT_FIELD_NUMBER = 13;
    private java.util.List comment_;
    /**
     * repeated int64 comment = 13;
     */
    public java.util.List
        getCommentList() {
      return comment_;
    }
    /**
     * repeated int64 comment = 13;
     */
    public int getCommentCount() {
      return comment_.size();
    }
    /**
     * repeated int64 comment = 13;
     */
    public long getComment(int index) {
      return comment_.get(index);
    }
    private int commentMemoizedSerializedSize = -1;

    public static final int DEFAULT_SAMPLE_TYPE_FIELD_NUMBER = 14;
    private long defaultSampleType_;
    /**
     * int64 default_sample_type = 14;
     */
    public long getDefaultSampleType() {
      return defaultSampleType_;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      for (int i = 0; i < sampleType_.size(); i++) {
        output.writeMessage(1, sampleType_.get(i));
      }
      for (int i = 0; i < sample_.size(); i++) {
        output.writeMessage(2, sample_.get(i));
      }
      for (int i = 0; i < mapping_.size(); i++) {
        output.writeMessage(3, mapping_.get(i));
      }
      for (int i = 0; i < location_.size(); i++) {
        output.writeMessage(4, location_.get(i));
      }
      for (int i = 0; i < function_.size(); i++) {
        output.writeMessage(5, function_.get(i));
      }
      for (int i = 0; i < stringTable_.size(); i++) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, stringTable_.getRaw(i));
      }
      if (dropFrames_ != 0L) {
        output.writeInt64(7, dropFrames_);
      }
      if (keepFrames_ != 0L) {
        output.writeInt64(8, keepFrames_);
      }
      if (timeNanos_ != 0L) {
        output.writeInt64(9, timeNanos_);
      }
      if (durationNanos_ != 0L) {
        output.writeInt64(10, durationNanos_);
      }
      if (periodType_ != null) {
        output.writeMessage(11, getPeriodType());
      }
      if (period_ != 0L) {
        output.writeInt64(12, period_);
      }
      if (getCommentList().size() > 0) {
        output.writeUInt32NoTag(106);
        output.writeUInt32NoTag(commentMemoizedSerializedSize);
      }
      for (int i = 0; i < comment_.size(); i++) {
        output.writeInt64NoTag(comment_.get(i));
      }
      if (defaultSampleType_ != 0L) {
        output.writeInt64(14, defaultSampleType_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      for (int i = 0; i < sampleType_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, sampleType_.get(i));
      }
      for (int i = 0; i < sample_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, sample_.get(i));
      }
      for (int i = 0; i < mapping_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, mapping_.get(i));
      }
      for (int i = 0; i < location_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, location_.get(i));
      }
      for (int i = 0; i < function_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(5, function_.get(i));
      }
      {
        int dataSize = 0;
        for (int i = 0; i < stringTable_.size(); i++) {
          dataSize += computeStringSizeNoTag(stringTable_.getRaw(i));
        }
        size += dataSize;
        size += 1 * getStringTableList().size();
      }
      if (dropFrames_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(7, dropFrames_);
      }
      if (keepFrames_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(8, keepFrames_);
      }
      if (timeNanos_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(9, timeNanos_);
      }
      if (durationNanos_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(10, durationNanos_);
      }
      if (periodType_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(11, getPeriodType());
      }
      if (period_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(12, period_);
      }
      {
        int dataSize = 0;
        for (int i = 0; i < comment_.size(); i++) {
          dataSize += com.google.protobuf.CodedOutputStream
            .computeInt64SizeNoTag(comment_.get(i));
        }
        size += dataSize;
        if (!getCommentList().isEmpty()) {
          size += 1;
          size += com.google.protobuf.CodedOutputStream
              .computeInt32SizeNoTag(dataSize);
        }
        commentMemoizedSerializedSize = dataSize;
      }
      if (defaultSampleType_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(14, defaultSampleType_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof tensorflow.tfprof.pprof.ProfileOuterClass.Profile)) {
        return super.equals(obj);
      }
      tensorflow.tfprof.pprof.ProfileOuterClass.Profile other = (tensorflow.tfprof.pprof.ProfileOuterClass.Profile) obj;

      boolean result = true;
      result = result && getSampleTypeList()
          .equals(other.getSampleTypeList());
      result = result && getSampleList()
          .equals(other.getSampleList());
      result = result && getMappingList()
          .equals(other.getMappingList());
      result = result && getLocationList()
          .equals(other.getLocationList());
      result = result && getFunctionList()
          .equals(other.getFunctionList());
      result = result && getStringTableList()
          .equals(other.getStringTableList());
      result = result && (getDropFrames()
          == other.getDropFrames());
      result = result && (getKeepFrames()
          == other.getKeepFrames());
      result = result && (getTimeNanos()
          == other.getTimeNanos());
      result = result && (getDurationNanos()
          == other.getDurationNanos());
      result = result && (hasPeriodType() == other.hasPeriodType());
      if (hasPeriodType()) {
        result = result && getPeriodType()
            .equals(other.getPeriodType());
      }
      result = result && (getPeriod()
          == other.getPeriod());
      result = result && getCommentList()
          .equals(other.getCommentList());
      result = result && (getDefaultSampleType()
          == other.getDefaultSampleType());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getSampleTypeCount() > 0) {
        hash = (37 * hash) + SAMPLE_TYPE_FIELD_NUMBER;
        hash = (53 * hash) + getSampleTypeList().hashCode();
      }
      if (getSampleCount() > 0) {
        hash = (37 * hash) + SAMPLE_FIELD_NUMBER;
        hash = (53 * hash) + getSampleList().hashCode();
      }
      if (getMappingCount() > 0) {
        hash = (37 * hash) + MAPPING_FIELD_NUMBER;
        hash = (53 * hash) + getMappingList().hashCode();
      }
      if (getLocationCount() > 0) {
        hash = (37 * hash) + LOCATION_FIELD_NUMBER;
        hash = (53 * hash) + getLocationList().hashCode();
      }
      if (getFunctionCount() > 0) {
        hash = (37 * hash) + FUNCTION_FIELD_NUMBER;
        hash = (53 * hash) + getFunctionList().hashCode();
      }
      if (getStringTableCount() > 0) {
        hash = (37 * hash) + STRING_TABLE_FIELD_NUMBER;
        hash = (53 * hash) + getStringTableList().hashCode();
      }
      hash = (37 * hash) + DROP_FRAMES_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getDropFrames());
      hash = (37 * hash) + KEEP_FRAMES_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getKeepFrames());
      hash = (37 * hash) + TIME_NANOS_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getTimeNanos());
      hash = (37 * hash) + DURATION_NANOS_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getDurationNanos());
      if (hasPeriodType()) {
        hash = (37 * hash) + PERIOD_TYPE_FIELD_NUMBER;
        hash = (53 * hash) + getPeriodType().hashCode();
      }
      hash = (37 * hash) + PERIOD_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getPeriod());
      if (getCommentCount() > 0) {
        hash = (37 * hash) + COMMENT_FIELD_NUMBER;
        hash = (53 * hash) + getCommentList().hashCode();
      }
      hash = (37 * hash) + DEFAULT_SAMPLE_TYPE_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getDefaultSampleType());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static tensorflow.tfprof.pprof.ProfileOuterClass.Profile parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Profile parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Profile parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Profile parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Profile parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Profile parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Profile parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Profile parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Profile parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Profile parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Profile parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Profile parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(tensorflow.tfprof.pprof.ProfileOuterClass.Profile prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code tensorflow.tfprof.pprof.Profile}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:tensorflow.tfprof.pprof.Profile)
        tensorflow.tfprof.pprof.ProfileOuterClass.ProfileOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_Profile_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_Profile_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                tensorflow.tfprof.pprof.ProfileOuterClass.Profile.class, tensorflow.tfprof.pprof.ProfileOuterClass.Profile.Builder.class);
      }

      // Construct using tensorflow.tfprof.pprof.ProfileOuterClass.Profile.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getSampleTypeFieldBuilder();
          getSampleFieldBuilder();
          getMappingFieldBuilder();
          getLocationFieldBuilder();
          getFunctionFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (sampleTypeBuilder_ == null) {
          sampleType_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          sampleTypeBuilder_.clear();
        }
        if (sampleBuilder_ == null) {
          sample_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
        } else {
          sampleBuilder_.clear();
        }
        if (mappingBuilder_ == null) {
          mapping_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);
        } else {
          mappingBuilder_.clear();
        }
        if (locationBuilder_ == null) {
          location_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000008);
        } else {
          locationBuilder_.clear();
        }
        if (functionBuilder_ == null) {
          function_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000010);
        } else {
          functionBuilder_.clear();
        }
        stringTable_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000020);
        dropFrames_ = 0L;

        keepFrames_ = 0L;

        timeNanos_ = 0L;

        durationNanos_ = 0L;

        if (periodTypeBuilder_ == null) {
          periodType_ = null;
        } else {
          periodType_ = null;
          periodTypeBuilder_ = null;
        }
        period_ = 0L;

        comment_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00001000);
        defaultSampleType_ = 0L;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_Profile_descriptor;
      }

      @java.lang.Override
      public tensorflow.tfprof.pprof.ProfileOuterClass.Profile getDefaultInstanceForType() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.Profile.getDefaultInstance();
      }

      @java.lang.Override
      public tensorflow.tfprof.pprof.ProfileOuterClass.Profile build() {
        tensorflow.tfprof.pprof.ProfileOuterClass.Profile result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public tensorflow.tfprof.pprof.ProfileOuterClass.Profile buildPartial() {
        tensorflow.tfprof.pprof.ProfileOuterClass.Profile result = new tensorflow.tfprof.pprof.ProfileOuterClass.Profile(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (sampleTypeBuilder_ == null) {
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            sampleType_ = java.util.Collections.unmodifiableList(sampleType_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.sampleType_ = sampleType_;
        } else {
          result.sampleType_ = sampleTypeBuilder_.build();
        }
        if (sampleBuilder_ == null) {
          if (((bitField0_ & 0x00000002) == 0x00000002)) {
            sample_ = java.util.Collections.unmodifiableList(sample_);
            bitField0_ = (bitField0_ & ~0x00000002);
          }
          result.sample_ = sample_;
        } else {
          result.sample_ = sampleBuilder_.build();
        }
        if (mappingBuilder_ == null) {
          if (((bitField0_ & 0x00000004) == 0x00000004)) {
            mapping_ = java.util.Collections.unmodifiableList(mapping_);
            bitField0_ = (bitField0_ & ~0x00000004);
          }
          result.mapping_ = mapping_;
        } else {
          result.mapping_ = mappingBuilder_.build();
        }
        if (locationBuilder_ == null) {
          if (((bitField0_ & 0x00000008) == 0x00000008)) {
            location_ = java.util.Collections.unmodifiableList(location_);
            bitField0_ = (bitField0_ & ~0x00000008);
          }
          result.location_ = location_;
        } else {
          result.location_ = locationBuilder_.build();
        }
        if (functionBuilder_ == null) {
          if (((bitField0_ & 0x00000010) == 0x00000010)) {
            function_ = java.util.Collections.unmodifiableList(function_);
            bitField0_ = (bitField0_ & ~0x00000010);
          }
          result.function_ = function_;
        } else {
          result.function_ = functionBuilder_.build();
        }
        if (((bitField0_ & 0x00000020) == 0x00000020)) {
          stringTable_ = stringTable_.getUnmodifiableView();
          bitField0_ = (bitField0_ & ~0x00000020);
        }
        result.stringTable_ = stringTable_;
        result.dropFrames_ = dropFrames_;
        result.keepFrames_ = keepFrames_;
        result.timeNanos_ = timeNanos_;
        result.durationNanos_ = durationNanos_;
        if (periodTypeBuilder_ == null) {
          result.periodType_ = periodType_;
        } else {
          result.periodType_ = periodTypeBuilder_.build();
        }
        result.period_ = period_;
        if (((bitField0_ & 0x00001000) == 0x00001000)) {
          comment_ = java.util.Collections.unmodifiableList(comment_);
          bitField0_ = (bitField0_ & ~0x00001000);
        }
        result.comment_ = comment_;
        result.defaultSampleType_ = defaultSampleType_;
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return (Builder) super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof tensorflow.tfprof.pprof.ProfileOuterClass.Profile) {
          return mergeFrom((tensorflow.tfprof.pprof.ProfileOuterClass.Profile)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(tensorflow.tfprof.pprof.ProfileOuterClass.Profile other) {
        if (other == tensorflow.tfprof.pprof.ProfileOuterClass.Profile.getDefaultInstance()) return this;
        if (sampleTypeBuilder_ == null) {
          if (!other.sampleType_.isEmpty()) {
            if (sampleType_.isEmpty()) {
              sampleType_ = other.sampleType_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureSampleTypeIsMutable();
              sampleType_.addAll(other.sampleType_);
            }
            onChanged();
          }
        } else {
          if (!other.sampleType_.isEmpty()) {
            if (sampleTypeBuilder_.isEmpty()) {
              sampleTypeBuilder_.dispose();
              sampleTypeBuilder_ = null;
              sampleType_ = other.sampleType_;
              bitField0_ = (bitField0_ & ~0x00000001);
              sampleTypeBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getSampleTypeFieldBuilder() : null;
            } else {
              sampleTypeBuilder_.addAllMessages(other.sampleType_);
            }
          }
        }
        if (sampleBuilder_ == null) {
          if (!other.sample_.isEmpty()) {
            if (sample_.isEmpty()) {
              sample_ = other.sample_;
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              ensureSampleIsMutable();
              sample_.addAll(other.sample_);
            }
            onChanged();
          }
        } else {
          if (!other.sample_.isEmpty()) {
            if (sampleBuilder_.isEmpty()) {
              sampleBuilder_.dispose();
              sampleBuilder_ = null;
              sample_ = other.sample_;
              bitField0_ = (bitField0_ & ~0x00000002);
              sampleBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getSampleFieldBuilder() : null;
            } else {
              sampleBuilder_.addAllMessages(other.sample_);
            }
          }
        }
        if (mappingBuilder_ == null) {
          if (!other.mapping_.isEmpty()) {
            if (mapping_.isEmpty()) {
              mapping_ = other.mapping_;
              bitField0_ = (bitField0_ & ~0x00000004);
            } else {
              ensureMappingIsMutable();
              mapping_.addAll(other.mapping_);
            }
            onChanged();
          }
        } else {
          if (!other.mapping_.isEmpty()) {
            if (mappingBuilder_.isEmpty()) {
              mappingBuilder_.dispose();
              mappingBuilder_ = null;
              mapping_ = other.mapping_;
              bitField0_ = (bitField0_ & ~0x00000004);
              mappingBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getMappingFieldBuilder() : null;
            } else {
              mappingBuilder_.addAllMessages(other.mapping_);
            }
          }
        }
        if (locationBuilder_ == null) {
          if (!other.location_.isEmpty()) {
            if (location_.isEmpty()) {
              location_ = other.location_;
              bitField0_ = (bitField0_ & ~0x00000008);
            } else {
              ensureLocationIsMutable();
              location_.addAll(other.location_);
            }
            onChanged();
          }
        } else {
          if (!other.location_.isEmpty()) {
            if (locationBuilder_.isEmpty()) {
              locationBuilder_.dispose();
              locationBuilder_ = null;
              location_ = other.location_;
              bitField0_ = (bitField0_ & ~0x00000008);
              locationBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getLocationFieldBuilder() : null;
            } else {
              locationBuilder_.addAllMessages(other.location_);
            }
          }
        }
        if (functionBuilder_ == null) {
          if (!other.function_.isEmpty()) {
            if (function_.isEmpty()) {
              function_ = other.function_;
              bitField0_ = (bitField0_ & ~0x00000010);
            } else {
              ensureFunctionIsMutable();
              function_.addAll(other.function_);
            }
            onChanged();
          }
        } else {
          if (!other.function_.isEmpty()) {
            if (functionBuilder_.isEmpty()) {
              functionBuilder_.dispose();
              functionBuilder_ = null;
              function_ = other.function_;
              bitField0_ = (bitField0_ & ~0x00000010);
              functionBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getFunctionFieldBuilder() : null;
            } else {
              functionBuilder_.addAllMessages(other.function_);
            }
          }
        }
        if (!other.stringTable_.isEmpty()) {
          if (stringTable_.isEmpty()) {
            stringTable_ = other.stringTable_;
            bitField0_ = (bitField0_ & ~0x00000020);
          } else {
            ensureStringTableIsMutable();
            stringTable_.addAll(other.stringTable_);
          }
          onChanged();
        }
        if (other.getDropFrames() != 0L) {
          setDropFrames(other.getDropFrames());
        }
        if (other.getKeepFrames() != 0L) {
          setKeepFrames(other.getKeepFrames());
        }
        if (other.getTimeNanos() != 0L) {
          setTimeNanos(other.getTimeNanos());
        }
        if (other.getDurationNanos() != 0L) {
          setDurationNanos(other.getDurationNanos());
        }
        if (other.hasPeriodType()) {
          mergePeriodType(other.getPeriodType());
        }
        if (other.getPeriod() != 0L) {
          setPeriod(other.getPeriod());
        }
        if (!other.comment_.isEmpty()) {
          if (comment_.isEmpty()) {
            comment_ = other.comment_;
            bitField0_ = (bitField0_ & ~0x00001000);
          } else {
            ensureCommentIsMutable();
            comment_.addAll(other.comment_);
          }
          onChanged();
        }
        if (other.getDefaultSampleType() != 0L) {
          setDefaultSampleType(other.getDefaultSampleType());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        tensorflow.tfprof.pprof.ProfileOuterClass.Profile parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (tensorflow.tfprof.pprof.ProfileOuterClass.Profile) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List sampleType_ =
        java.util.Collections.emptyList();
      private void ensureSampleTypeIsMutable() {
        if (!((bitField0_ & 0x00000001) == 0x00000001)) {
          sampleType_ = new java.util.ArrayList(sampleType_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          tensorflow.tfprof.pprof.ProfileOuterClass.ValueType, tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.ValueTypeOrBuilder> sampleTypeBuilder_;

      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public java.util.List getSampleTypeList() {
        if (sampleTypeBuilder_ == null) {
          return java.util.Collections.unmodifiableList(sampleType_);
        } else {
          return sampleTypeBuilder_.getMessageList();
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public int getSampleTypeCount() {
        if (sampleTypeBuilder_ == null) {
          return sampleType_.size();
        } else {
          return sampleTypeBuilder_.getCount();
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.ValueType getSampleType(int index) {
        if (sampleTypeBuilder_ == null) {
          return sampleType_.get(index);
        } else {
          return sampleTypeBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public Builder setSampleType(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.ValueType value) {
        if (sampleTypeBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSampleTypeIsMutable();
          sampleType_.set(index, value);
          onChanged();
        } else {
          sampleTypeBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public Builder setSampleType(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder builderForValue) {
        if (sampleTypeBuilder_ == null) {
          ensureSampleTypeIsMutable();
          sampleType_.set(index, builderForValue.build());
          onChanged();
        } else {
          sampleTypeBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public Builder addSampleType(tensorflow.tfprof.pprof.ProfileOuterClass.ValueType value) {
        if (sampleTypeBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSampleTypeIsMutable();
          sampleType_.add(value);
          onChanged();
        } else {
          sampleTypeBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public Builder addSampleType(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.ValueType value) {
        if (sampleTypeBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSampleTypeIsMutable();
          sampleType_.add(index, value);
          onChanged();
        } else {
          sampleTypeBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public Builder addSampleType(
          tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder builderForValue) {
        if (sampleTypeBuilder_ == null) {
          ensureSampleTypeIsMutable();
          sampleType_.add(builderForValue.build());
          onChanged();
        } else {
          sampleTypeBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public Builder addSampleType(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder builderForValue) {
        if (sampleTypeBuilder_ == null) {
          ensureSampleTypeIsMutable();
          sampleType_.add(index, builderForValue.build());
          onChanged();
        } else {
          sampleTypeBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public Builder addAllSampleType(
          java.lang.Iterable values) {
        if (sampleTypeBuilder_ == null) {
          ensureSampleTypeIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, sampleType_);
          onChanged();
        } else {
          sampleTypeBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public Builder clearSampleType() {
        if (sampleTypeBuilder_ == null) {
          sampleType_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          sampleTypeBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public Builder removeSampleType(int index) {
        if (sampleTypeBuilder_ == null) {
          ensureSampleTypeIsMutable();
          sampleType_.remove(index);
          onChanged();
        } else {
          sampleTypeBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder getSampleTypeBuilder(
          int index) {
        return getSampleTypeFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.ValueTypeOrBuilder getSampleTypeOrBuilder(
          int index) {
        if (sampleTypeBuilder_ == null) {
          return sampleType_.get(index);  } else {
          return sampleTypeBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public java.util.List 
           getSampleTypeOrBuilderList() {
        if (sampleTypeBuilder_ != null) {
          return sampleTypeBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(sampleType_);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder addSampleTypeBuilder() {
        return getSampleTypeFieldBuilder().addBuilder(
            tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.getDefaultInstance());
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder addSampleTypeBuilder(
          int index) {
        return getSampleTypeFieldBuilder().addBuilder(
            index, tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.getDefaultInstance());
      }
      /**
       * repeated .tensorflow.tfprof.pprof.ValueType sample_type = 1;
       */
      public java.util.List 
           getSampleTypeBuilderList() {
        return getSampleTypeFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          tensorflow.tfprof.pprof.ProfileOuterClass.ValueType, tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.ValueTypeOrBuilder> 
          getSampleTypeFieldBuilder() {
        if (sampleTypeBuilder_ == null) {
          sampleTypeBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              tensorflow.tfprof.pprof.ProfileOuterClass.ValueType, tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.ValueTypeOrBuilder>(
                  sampleType_,
                  ((bitField0_ & 0x00000001) == 0x00000001),
                  getParentForChildren(),
                  isClean());
          sampleType_ = null;
        }
        return sampleTypeBuilder_;
      }

      private java.util.List sample_ =
        java.util.Collections.emptyList();
      private void ensureSampleIsMutable() {
        if (!((bitField0_ & 0x00000002) == 0x00000002)) {
          sample_ = new java.util.ArrayList(sample_);
          bitField0_ |= 0x00000002;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          tensorflow.tfprof.pprof.ProfileOuterClass.Sample, tensorflow.tfprof.pprof.ProfileOuterClass.Sample.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.SampleOrBuilder> sampleBuilder_;

      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public java.util.List getSampleList() {
        if (sampleBuilder_ == null) {
          return java.util.Collections.unmodifiableList(sample_);
        } else {
          return sampleBuilder_.getMessageList();
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public int getSampleCount() {
        if (sampleBuilder_ == null) {
          return sample_.size();
        } else {
          return sampleBuilder_.getCount();
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Sample getSample(int index) {
        if (sampleBuilder_ == null) {
          return sample_.get(index);
        } else {
          return sampleBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public Builder setSample(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Sample value) {
        if (sampleBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSampleIsMutable();
          sample_.set(index, value);
          onChanged();
        } else {
          sampleBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public Builder setSample(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Sample.Builder builderForValue) {
        if (sampleBuilder_ == null) {
          ensureSampleIsMutable();
          sample_.set(index, builderForValue.build());
          onChanged();
        } else {
          sampleBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public Builder addSample(tensorflow.tfprof.pprof.ProfileOuterClass.Sample value) {
        if (sampleBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSampleIsMutable();
          sample_.add(value);
          onChanged();
        } else {
          sampleBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public Builder addSample(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Sample value) {
        if (sampleBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSampleIsMutable();
          sample_.add(index, value);
          onChanged();
        } else {
          sampleBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public Builder addSample(
          tensorflow.tfprof.pprof.ProfileOuterClass.Sample.Builder builderForValue) {
        if (sampleBuilder_ == null) {
          ensureSampleIsMutable();
          sample_.add(builderForValue.build());
          onChanged();
        } else {
          sampleBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public Builder addSample(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Sample.Builder builderForValue) {
        if (sampleBuilder_ == null) {
          ensureSampleIsMutable();
          sample_.add(index, builderForValue.build());
          onChanged();
        } else {
          sampleBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public Builder addAllSample(
          java.lang.Iterable values) {
        if (sampleBuilder_ == null) {
          ensureSampleIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, sample_);
          onChanged();
        } else {
          sampleBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public Builder clearSample() {
        if (sampleBuilder_ == null) {
          sample_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
        } else {
          sampleBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public Builder removeSample(int index) {
        if (sampleBuilder_ == null) {
          ensureSampleIsMutable();
          sample_.remove(index);
          onChanged();
        } else {
          sampleBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Sample.Builder getSampleBuilder(
          int index) {
        return getSampleFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.SampleOrBuilder getSampleOrBuilder(
          int index) {
        if (sampleBuilder_ == null) {
          return sample_.get(index);  } else {
          return sampleBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public java.util.List 
           getSampleOrBuilderList() {
        if (sampleBuilder_ != null) {
          return sampleBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(sample_);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Sample.Builder addSampleBuilder() {
        return getSampleFieldBuilder().addBuilder(
            tensorflow.tfprof.pprof.ProfileOuterClass.Sample.getDefaultInstance());
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Sample.Builder addSampleBuilder(
          int index) {
        return getSampleFieldBuilder().addBuilder(
            index, tensorflow.tfprof.pprof.ProfileOuterClass.Sample.getDefaultInstance());
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Sample sample = 2;
       */
      public java.util.List 
           getSampleBuilderList() {
        return getSampleFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          tensorflow.tfprof.pprof.ProfileOuterClass.Sample, tensorflow.tfprof.pprof.ProfileOuterClass.Sample.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.SampleOrBuilder> 
          getSampleFieldBuilder() {
        if (sampleBuilder_ == null) {
          sampleBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              tensorflow.tfprof.pprof.ProfileOuterClass.Sample, tensorflow.tfprof.pprof.ProfileOuterClass.Sample.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.SampleOrBuilder>(
                  sample_,
                  ((bitField0_ & 0x00000002) == 0x00000002),
                  getParentForChildren(),
                  isClean());
          sample_ = null;
        }
        return sampleBuilder_;
      }

      private java.util.List mapping_ =
        java.util.Collections.emptyList();
      private void ensureMappingIsMutable() {
        if (!((bitField0_ & 0x00000004) == 0x00000004)) {
          mapping_ = new java.util.ArrayList(mapping_);
          bitField0_ |= 0x00000004;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          tensorflow.tfprof.pprof.ProfileOuterClass.Mapping, tensorflow.tfprof.pprof.ProfileOuterClass.Mapping.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.MappingOrBuilder> mappingBuilder_;

      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public java.util.List getMappingList() {
        if (mappingBuilder_ == null) {
          return java.util.Collections.unmodifiableList(mapping_);
        } else {
          return mappingBuilder_.getMessageList();
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public int getMappingCount() {
        if (mappingBuilder_ == null) {
          return mapping_.size();
        } else {
          return mappingBuilder_.getCount();
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Mapping getMapping(int index) {
        if (mappingBuilder_ == null) {
          return mapping_.get(index);
        } else {
          return mappingBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public Builder setMapping(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Mapping value) {
        if (mappingBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureMappingIsMutable();
          mapping_.set(index, value);
          onChanged();
        } else {
          mappingBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public Builder setMapping(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Mapping.Builder builderForValue) {
        if (mappingBuilder_ == null) {
          ensureMappingIsMutable();
          mapping_.set(index, builderForValue.build());
          onChanged();
        } else {
          mappingBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public Builder addMapping(tensorflow.tfprof.pprof.ProfileOuterClass.Mapping value) {
        if (mappingBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureMappingIsMutable();
          mapping_.add(value);
          onChanged();
        } else {
          mappingBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public Builder addMapping(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Mapping value) {
        if (mappingBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureMappingIsMutable();
          mapping_.add(index, value);
          onChanged();
        } else {
          mappingBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public Builder addMapping(
          tensorflow.tfprof.pprof.ProfileOuterClass.Mapping.Builder builderForValue) {
        if (mappingBuilder_ == null) {
          ensureMappingIsMutable();
          mapping_.add(builderForValue.build());
          onChanged();
        } else {
          mappingBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public Builder addMapping(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Mapping.Builder builderForValue) {
        if (mappingBuilder_ == null) {
          ensureMappingIsMutable();
          mapping_.add(index, builderForValue.build());
          onChanged();
        } else {
          mappingBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public Builder addAllMapping(
          java.lang.Iterable values) {
        if (mappingBuilder_ == null) {
          ensureMappingIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, mapping_);
          onChanged();
        } else {
          mappingBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public Builder clearMapping() {
        if (mappingBuilder_ == null) {
          mapping_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);
          onChanged();
        } else {
          mappingBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public Builder removeMapping(int index) {
        if (mappingBuilder_ == null) {
          ensureMappingIsMutable();
          mapping_.remove(index);
          onChanged();
        } else {
          mappingBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Mapping.Builder getMappingBuilder(
          int index) {
        return getMappingFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.MappingOrBuilder getMappingOrBuilder(
          int index) {
        if (mappingBuilder_ == null) {
          return mapping_.get(index);  } else {
          return mappingBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public java.util.List 
           getMappingOrBuilderList() {
        if (mappingBuilder_ != null) {
          return mappingBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(mapping_);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Mapping.Builder addMappingBuilder() {
        return getMappingFieldBuilder().addBuilder(
            tensorflow.tfprof.pprof.ProfileOuterClass.Mapping.getDefaultInstance());
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Mapping.Builder addMappingBuilder(
          int index) {
        return getMappingFieldBuilder().addBuilder(
            index, tensorflow.tfprof.pprof.ProfileOuterClass.Mapping.getDefaultInstance());
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Mapping mapping = 3;
       */
      public java.util.List 
           getMappingBuilderList() {
        return getMappingFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          tensorflow.tfprof.pprof.ProfileOuterClass.Mapping, tensorflow.tfprof.pprof.ProfileOuterClass.Mapping.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.MappingOrBuilder> 
          getMappingFieldBuilder() {
        if (mappingBuilder_ == null) {
          mappingBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              tensorflow.tfprof.pprof.ProfileOuterClass.Mapping, tensorflow.tfprof.pprof.ProfileOuterClass.Mapping.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.MappingOrBuilder>(
                  mapping_,
                  ((bitField0_ & 0x00000004) == 0x00000004),
                  getParentForChildren(),
                  isClean());
          mapping_ = null;
        }
        return mappingBuilder_;
      }

      private java.util.List location_ =
        java.util.Collections.emptyList();
      private void ensureLocationIsMutable() {
        if (!((bitField0_ & 0x00000008) == 0x00000008)) {
          location_ = new java.util.ArrayList(location_);
          bitField0_ |= 0x00000008;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          tensorflow.tfprof.pprof.ProfileOuterClass.Location, tensorflow.tfprof.pprof.ProfileOuterClass.Location.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.LocationOrBuilder> locationBuilder_;

      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public java.util.List getLocationList() {
        if (locationBuilder_ == null) {
          return java.util.Collections.unmodifiableList(location_);
        } else {
          return locationBuilder_.getMessageList();
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public int getLocationCount() {
        if (locationBuilder_ == null) {
          return location_.size();
        } else {
          return locationBuilder_.getCount();
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Location getLocation(int index) {
        if (locationBuilder_ == null) {
          return location_.get(index);
        } else {
          return locationBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public Builder setLocation(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Location value) {
        if (locationBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureLocationIsMutable();
          location_.set(index, value);
          onChanged();
        } else {
          locationBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public Builder setLocation(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Location.Builder builderForValue) {
        if (locationBuilder_ == null) {
          ensureLocationIsMutable();
          location_.set(index, builderForValue.build());
          onChanged();
        } else {
          locationBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public Builder addLocation(tensorflow.tfprof.pprof.ProfileOuterClass.Location value) {
        if (locationBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureLocationIsMutable();
          location_.add(value);
          onChanged();
        } else {
          locationBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public Builder addLocation(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Location value) {
        if (locationBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureLocationIsMutable();
          location_.add(index, value);
          onChanged();
        } else {
          locationBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public Builder addLocation(
          tensorflow.tfprof.pprof.ProfileOuterClass.Location.Builder builderForValue) {
        if (locationBuilder_ == null) {
          ensureLocationIsMutable();
          location_.add(builderForValue.build());
          onChanged();
        } else {
          locationBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public Builder addLocation(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Location.Builder builderForValue) {
        if (locationBuilder_ == null) {
          ensureLocationIsMutable();
          location_.add(index, builderForValue.build());
          onChanged();
        } else {
          locationBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public Builder addAllLocation(
          java.lang.Iterable values) {
        if (locationBuilder_ == null) {
          ensureLocationIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, location_);
          onChanged();
        } else {
          locationBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public Builder clearLocation() {
        if (locationBuilder_ == null) {
          location_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000008);
          onChanged();
        } else {
          locationBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public Builder removeLocation(int index) {
        if (locationBuilder_ == null) {
          ensureLocationIsMutable();
          location_.remove(index);
          onChanged();
        } else {
          locationBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Location.Builder getLocationBuilder(
          int index) {
        return getLocationFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.LocationOrBuilder getLocationOrBuilder(
          int index) {
        if (locationBuilder_ == null) {
          return location_.get(index);  } else {
          return locationBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public java.util.List 
           getLocationOrBuilderList() {
        if (locationBuilder_ != null) {
          return locationBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(location_);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Location.Builder addLocationBuilder() {
        return getLocationFieldBuilder().addBuilder(
            tensorflow.tfprof.pprof.ProfileOuterClass.Location.getDefaultInstance());
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Location.Builder addLocationBuilder(
          int index) {
        return getLocationFieldBuilder().addBuilder(
            index, tensorflow.tfprof.pprof.ProfileOuterClass.Location.getDefaultInstance());
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Location location = 4;
       */
      public java.util.List 
           getLocationBuilderList() {
        return getLocationFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          tensorflow.tfprof.pprof.ProfileOuterClass.Location, tensorflow.tfprof.pprof.ProfileOuterClass.Location.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.LocationOrBuilder> 
          getLocationFieldBuilder() {
        if (locationBuilder_ == null) {
          locationBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              tensorflow.tfprof.pprof.ProfileOuterClass.Location, tensorflow.tfprof.pprof.ProfileOuterClass.Location.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.LocationOrBuilder>(
                  location_,
                  ((bitField0_ & 0x00000008) == 0x00000008),
                  getParentForChildren(),
                  isClean());
          location_ = null;
        }
        return locationBuilder_;
      }

      private java.util.List function_ =
        java.util.Collections.emptyList();
      private void ensureFunctionIsMutable() {
        if (!((bitField0_ & 0x00000010) == 0x00000010)) {
          function_ = new java.util.ArrayList(function_);
          bitField0_ |= 0x00000010;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          tensorflow.tfprof.pprof.ProfileOuterClass.Function, tensorflow.tfprof.pprof.ProfileOuterClass.Function.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.FunctionOrBuilder> functionBuilder_;

      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public java.util.List getFunctionList() {
        if (functionBuilder_ == null) {
          return java.util.Collections.unmodifiableList(function_);
        } else {
          return functionBuilder_.getMessageList();
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public int getFunctionCount() {
        if (functionBuilder_ == null) {
          return function_.size();
        } else {
          return functionBuilder_.getCount();
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Function getFunction(int index) {
        if (functionBuilder_ == null) {
          return function_.get(index);
        } else {
          return functionBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public Builder setFunction(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Function value) {
        if (functionBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureFunctionIsMutable();
          function_.set(index, value);
          onChanged();
        } else {
          functionBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public Builder setFunction(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Function.Builder builderForValue) {
        if (functionBuilder_ == null) {
          ensureFunctionIsMutable();
          function_.set(index, builderForValue.build());
          onChanged();
        } else {
          functionBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public Builder addFunction(tensorflow.tfprof.pprof.ProfileOuterClass.Function value) {
        if (functionBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureFunctionIsMutable();
          function_.add(value);
          onChanged();
        } else {
          functionBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public Builder addFunction(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Function value) {
        if (functionBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureFunctionIsMutable();
          function_.add(index, value);
          onChanged();
        } else {
          functionBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public Builder addFunction(
          tensorflow.tfprof.pprof.ProfileOuterClass.Function.Builder builderForValue) {
        if (functionBuilder_ == null) {
          ensureFunctionIsMutable();
          function_.add(builderForValue.build());
          onChanged();
        } else {
          functionBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public Builder addFunction(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Function.Builder builderForValue) {
        if (functionBuilder_ == null) {
          ensureFunctionIsMutable();
          function_.add(index, builderForValue.build());
          onChanged();
        } else {
          functionBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public Builder addAllFunction(
          java.lang.Iterable values) {
        if (functionBuilder_ == null) {
          ensureFunctionIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, function_);
          onChanged();
        } else {
          functionBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public Builder clearFunction() {
        if (functionBuilder_ == null) {
          function_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000010);
          onChanged();
        } else {
          functionBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public Builder removeFunction(int index) {
        if (functionBuilder_ == null) {
          ensureFunctionIsMutable();
          function_.remove(index);
          onChanged();
        } else {
          functionBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Function.Builder getFunctionBuilder(
          int index) {
        return getFunctionFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.FunctionOrBuilder getFunctionOrBuilder(
          int index) {
        if (functionBuilder_ == null) {
          return function_.get(index);  } else {
          return functionBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public java.util.List 
           getFunctionOrBuilderList() {
        if (functionBuilder_ != null) {
          return functionBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(function_);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Function.Builder addFunctionBuilder() {
        return getFunctionFieldBuilder().addBuilder(
            tensorflow.tfprof.pprof.ProfileOuterClass.Function.getDefaultInstance());
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Function.Builder addFunctionBuilder(
          int index) {
        return getFunctionFieldBuilder().addBuilder(
            index, tensorflow.tfprof.pprof.ProfileOuterClass.Function.getDefaultInstance());
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Function function = 5;
       */
      public java.util.List 
           getFunctionBuilderList() {
        return getFunctionFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          tensorflow.tfprof.pprof.ProfileOuterClass.Function, tensorflow.tfprof.pprof.ProfileOuterClass.Function.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.FunctionOrBuilder> 
          getFunctionFieldBuilder() {
        if (functionBuilder_ == null) {
          functionBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              tensorflow.tfprof.pprof.ProfileOuterClass.Function, tensorflow.tfprof.pprof.ProfileOuterClass.Function.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.FunctionOrBuilder>(
                  function_,
                  ((bitField0_ & 0x00000010) == 0x00000010),
                  getParentForChildren(),
                  isClean());
          function_ = null;
        }
        return functionBuilder_;
      }

      private com.google.protobuf.LazyStringList stringTable_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      private void ensureStringTableIsMutable() {
        if (!((bitField0_ & 0x00000020) == 0x00000020)) {
          stringTable_ = new com.google.protobuf.LazyStringArrayList(stringTable_);
          bitField0_ |= 0x00000020;
         }
      }
      /**
       * repeated string string_table = 6;
       */
      public com.google.protobuf.ProtocolStringList
          getStringTableList() {
        return stringTable_.getUnmodifiableView();
      }
      /**
       * repeated string string_table = 6;
       */
      public int getStringTableCount() {
        return stringTable_.size();
      }
      /**
       * repeated string string_table = 6;
       */
      public java.lang.String getStringTable(int index) {
        return stringTable_.get(index);
      }
      /**
       * repeated string string_table = 6;
       */
      public com.google.protobuf.ByteString
          getStringTableBytes(int index) {
        return stringTable_.getByteString(index);
      }
      /**
       * repeated string string_table = 6;
       */
      public Builder setStringTable(
          int index, java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureStringTableIsMutable();
        stringTable_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * repeated string string_table = 6;
       */
      public Builder addStringTable(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureStringTableIsMutable();
        stringTable_.add(value);
        onChanged();
        return this;
      }
      /**
       * repeated string string_table = 6;
       */
      public Builder addAllStringTable(
          java.lang.Iterable values) {
        ensureStringTableIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, stringTable_);
        onChanged();
        return this;
      }
      /**
       * repeated string string_table = 6;
       */
      public Builder clearStringTable() {
        stringTable_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000020);
        onChanged();
        return this;
      }
      /**
       * repeated string string_table = 6;
       */
      public Builder addStringTableBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        ensureStringTableIsMutable();
        stringTable_.add(value);
        onChanged();
        return this;
      }

      private long dropFrames_ ;
      /**
       * int64 drop_frames = 7;
       */
      public long getDropFrames() {
        return dropFrames_;
      }
      /**
       * int64 drop_frames = 7;
       */
      public Builder setDropFrames(long value) {
        
        dropFrames_ = value;
        onChanged();
        return this;
      }
      /**
       * int64 drop_frames = 7;
       */
      public Builder clearDropFrames() {
        
        dropFrames_ = 0L;
        onChanged();
        return this;
      }

      private long keepFrames_ ;
      /**
       * int64 keep_frames = 8;
       */
      public long getKeepFrames() {
        return keepFrames_;
      }
      /**
       * int64 keep_frames = 8;
       */
      public Builder setKeepFrames(long value) {
        
        keepFrames_ = value;
        onChanged();
        return this;
      }
      /**
       * int64 keep_frames = 8;
       */
      public Builder clearKeepFrames() {
        
        keepFrames_ = 0L;
        onChanged();
        return this;
      }

      private long timeNanos_ ;
      /**
       * int64 time_nanos = 9;
       */
      public long getTimeNanos() {
        return timeNanos_;
      }
      /**
       * int64 time_nanos = 9;
       */
      public Builder setTimeNanos(long value) {
        
        timeNanos_ = value;
        onChanged();
        return this;
      }
      /**
       * int64 time_nanos = 9;
       */
      public Builder clearTimeNanos() {
        
        timeNanos_ = 0L;
        onChanged();
        return this;
      }

      private long durationNanos_ ;
      /**
       * int64 duration_nanos = 10;
       */
      public long getDurationNanos() {
        return durationNanos_;
      }
      /**
       * int64 duration_nanos = 10;
       */
      public Builder setDurationNanos(long value) {
        
        durationNanos_ = value;
        onChanged();
        return this;
      }
      /**
       * int64 duration_nanos = 10;
       */
      public Builder clearDurationNanos() {
        
        durationNanos_ = 0L;
        onChanged();
        return this;
      }

      private tensorflow.tfprof.pprof.ProfileOuterClass.ValueType periodType_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          tensorflow.tfprof.pprof.ProfileOuterClass.ValueType, tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.ValueTypeOrBuilder> periodTypeBuilder_;
      /**
       * .tensorflow.tfprof.pprof.ValueType period_type = 11;
       */
      public boolean hasPeriodType() {
        return periodTypeBuilder_ != null || periodType_ != null;
      }
      /**
       * .tensorflow.tfprof.pprof.ValueType period_type = 11;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.ValueType getPeriodType() {
        if (periodTypeBuilder_ == null) {
          return periodType_ == null ? tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.getDefaultInstance() : periodType_;
        } else {
          return periodTypeBuilder_.getMessage();
        }
      }
      /**
       * .tensorflow.tfprof.pprof.ValueType period_type = 11;
       */
      public Builder setPeriodType(tensorflow.tfprof.pprof.ProfileOuterClass.ValueType value) {
        if (periodTypeBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          periodType_ = value;
          onChanged();
        } else {
          periodTypeBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * .tensorflow.tfprof.pprof.ValueType period_type = 11;
       */
      public Builder setPeriodType(
          tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder builderForValue) {
        if (periodTypeBuilder_ == null) {
          periodType_ = builderForValue.build();
          onChanged();
        } else {
          periodTypeBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * .tensorflow.tfprof.pprof.ValueType period_type = 11;
       */
      public Builder mergePeriodType(tensorflow.tfprof.pprof.ProfileOuterClass.ValueType value) {
        if (periodTypeBuilder_ == null) {
          if (periodType_ != null) {
            periodType_ =
              tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.newBuilder(periodType_).mergeFrom(value).buildPartial();
          } else {
            periodType_ = value;
          }
          onChanged();
        } else {
          periodTypeBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * .tensorflow.tfprof.pprof.ValueType period_type = 11;
       */
      public Builder clearPeriodType() {
        if (periodTypeBuilder_ == null) {
          periodType_ = null;
          onChanged();
        } else {
          periodType_ = null;
          periodTypeBuilder_ = null;
        }

        return this;
      }
      /**
       * .tensorflow.tfprof.pprof.ValueType period_type = 11;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder getPeriodTypeBuilder() {
        
        onChanged();
        return getPeriodTypeFieldBuilder().getBuilder();
      }
      /**
       * .tensorflow.tfprof.pprof.ValueType period_type = 11;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.ValueTypeOrBuilder getPeriodTypeOrBuilder() {
        if (periodTypeBuilder_ != null) {
          return periodTypeBuilder_.getMessageOrBuilder();
        } else {
          return periodType_ == null ?
              tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.getDefaultInstance() : periodType_;
        }
      }
      /**
       * .tensorflow.tfprof.pprof.ValueType period_type = 11;
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          tensorflow.tfprof.pprof.ProfileOuterClass.ValueType, tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.ValueTypeOrBuilder> 
          getPeriodTypeFieldBuilder() {
        if (periodTypeBuilder_ == null) {
          periodTypeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              tensorflow.tfprof.pprof.ProfileOuterClass.ValueType, tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.ValueTypeOrBuilder>(
                  getPeriodType(),
                  getParentForChildren(),
                  isClean());
          periodType_ = null;
        }
        return periodTypeBuilder_;
      }

      private long period_ ;
      /**
       * int64 period = 12;
       */
      public long getPeriod() {
        return period_;
      }
      /**
       * int64 period = 12;
       */
      public Builder setPeriod(long value) {
        
        period_ = value;
        onChanged();
        return this;
      }
      /**
       * int64 period = 12;
       */
      public Builder clearPeriod() {
        
        period_ = 0L;
        onChanged();
        return this;
      }

      private java.util.List comment_ = java.util.Collections.emptyList();
      private void ensureCommentIsMutable() {
        if (!((bitField0_ & 0x00001000) == 0x00001000)) {
          comment_ = new java.util.ArrayList(comment_);
          bitField0_ |= 0x00001000;
         }
      }
      /**
       * repeated int64 comment = 13;
       */
      public java.util.List
          getCommentList() {
        return java.util.Collections.unmodifiableList(comment_);
      }
      /**
       * repeated int64 comment = 13;
       */
      public int getCommentCount() {
        return comment_.size();
      }
      /**
       * repeated int64 comment = 13;
       */
      public long getComment(int index) {
        return comment_.get(index);
      }
      /**
       * repeated int64 comment = 13;
       */
      public Builder setComment(
          int index, long value) {
        ensureCommentIsMutable();
        comment_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * repeated int64 comment = 13;
       */
      public Builder addComment(long value) {
        ensureCommentIsMutable();
        comment_.add(value);
        onChanged();
        return this;
      }
      /**
       * repeated int64 comment = 13;
       */
      public Builder addAllComment(
          java.lang.Iterable values) {
        ensureCommentIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, comment_);
        onChanged();
        return this;
      }
      /**
       * repeated int64 comment = 13;
       */
      public Builder clearComment() {
        comment_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00001000);
        onChanged();
        return this;
      }

      private long defaultSampleType_ ;
      /**
       * int64 default_sample_type = 14;
       */
      public long getDefaultSampleType() {
        return defaultSampleType_;
      }
      /**
       * int64 default_sample_type = 14;
       */
      public Builder setDefaultSampleType(long value) {
        
        defaultSampleType_ = value;
        onChanged();
        return this;
      }
      /**
       * int64 default_sample_type = 14;
       */
      public Builder clearDefaultSampleType() {
        
        defaultSampleType_ = 0L;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:tensorflow.tfprof.pprof.Profile)
    }

    // @@protoc_insertion_point(class_scope:tensorflow.tfprof.pprof.Profile)
    private static final tensorflow.tfprof.pprof.ProfileOuterClass.Profile DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new tensorflow.tfprof.pprof.ProfileOuterClass.Profile();
    }

    public static tensorflow.tfprof.pprof.ProfileOuterClass.Profile getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public Profile parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new Profile(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public tensorflow.tfprof.pprof.ProfileOuterClass.Profile getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ValueTypeOrBuilder extends
      // @@protoc_insertion_point(interface_extends:tensorflow.tfprof.pprof.ValueType)
      com.google.protobuf.MessageOrBuilder {

    /**
     * int64 type = 1;
     */
    long getType();

    /**
     * int64 unit = 2;
     */
    long getUnit();
  }
  /**
   * Protobuf type {@code tensorflow.tfprof.pprof.ValueType}
   */
  public  static final class ValueType extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:tensorflow.tfprof.pprof.ValueType)
      ValueTypeOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ValueType.newBuilder() to construct.
    private ValueType(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private ValueType() {
      type_ = 0L;
      unit_ = 0L;
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ValueType(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 8: {

              type_ = input.readInt64();
              break;
            }
            case 16: {

              unit_ = input.readInt64();
              break;
            }
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_ValueType_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_ValueType_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.class, tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder.class);
    }

    public static final int TYPE_FIELD_NUMBER = 1;
    private long type_;
    /**
     * int64 type = 1;
     */
    public long getType() {
      return type_;
    }

    public static final int UNIT_FIELD_NUMBER = 2;
    private long unit_;
    /**
     * int64 unit = 2;
     */
    public long getUnit() {
      return unit_;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (type_ != 0L) {
        output.writeInt64(1, type_);
      }
      if (unit_ != 0L) {
        output.writeInt64(2, unit_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (type_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(1, type_);
      }
      if (unit_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(2, unit_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof tensorflow.tfprof.pprof.ProfileOuterClass.ValueType)) {
        return super.equals(obj);
      }
      tensorflow.tfprof.pprof.ProfileOuterClass.ValueType other = (tensorflow.tfprof.pprof.ProfileOuterClass.ValueType) obj;

      boolean result = true;
      result = result && (getType()
          == other.getType());
      result = result && (getUnit()
          == other.getUnit());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + TYPE_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getType());
      hash = (37 * hash) + UNIT_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getUnit());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static tensorflow.tfprof.pprof.ProfileOuterClass.ValueType parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.ValueType parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.ValueType parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.ValueType parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.ValueType parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.ValueType parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.ValueType parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.ValueType parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.ValueType parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.ValueType parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.ValueType parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.ValueType parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(tensorflow.tfprof.pprof.ProfileOuterClass.ValueType prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code tensorflow.tfprof.pprof.ValueType}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:tensorflow.tfprof.pprof.ValueType)
        tensorflow.tfprof.pprof.ProfileOuterClass.ValueTypeOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_ValueType_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_ValueType_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.class, tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.Builder.class);
      }

      // Construct using tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        type_ = 0L;

        unit_ = 0L;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_ValueType_descriptor;
      }

      @java.lang.Override
      public tensorflow.tfprof.pprof.ProfileOuterClass.ValueType getDefaultInstanceForType() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.getDefaultInstance();
      }

      @java.lang.Override
      public tensorflow.tfprof.pprof.ProfileOuterClass.ValueType build() {
        tensorflow.tfprof.pprof.ProfileOuterClass.ValueType result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public tensorflow.tfprof.pprof.ProfileOuterClass.ValueType buildPartial() {
        tensorflow.tfprof.pprof.ProfileOuterClass.ValueType result = new tensorflow.tfprof.pprof.ProfileOuterClass.ValueType(this);
        result.type_ = type_;
        result.unit_ = unit_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return (Builder) super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof tensorflow.tfprof.pprof.ProfileOuterClass.ValueType) {
          return mergeFrom((tensorflow.tfprof.pprof.ProfileOuterClass.ValueType)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(tensorflow.tfprof.pprof.ProfileOuterClass.ValueType other) {
        if (other == tensorflow.tfprof.pprof.ProfileOuterClass.ValueType.getDefaultInstance()) return this;
        if (other.getType() != 0L) {
          setType(other.getType());
        }
        if (other.getUnit() != 0L) {
          setUnit(other.getUnit());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        tensorflow.tfprof.pprof.ProfileOuterClass.ValueType parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (tensorflow.tfprof.pprof.ProfileOuterClass.ValueType) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private long type_ ;
      /**
       * int64 type = 1;
       */
      public long getType() {
        return type_;
      }
      /**
       * int64 type = 1;
       */
      public Builder setType(long value) {
        
        type_ = value;
        onChanged();
        return this;
      }
      /**
       * int64 type = 1;
       */
      public Builder clearType() {
        
        type_ = 0L;
        onChanged();
        return this;
      }

      private long unit_ ;
      /**
       * int64 unit = 2;
       */
      public long getUnit() {
        return unit_;
      }
      /**
       * int64 unit = 2;
       */
      public Builder setUnit(long value) {
        
        unit_ = value;
        onChanged();
        return this;
      }
      /**
       * int64 unit = 2;
       */
      public Builder clearUnit() {
        
        unit_ = 0L;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:tensorflow.tfprof.pprof.ValueType)
    }

    // @@protoc_insertion_point(class_scope:tensorflow.tfprof.pprof.ValueType)
    private static final tensorflow.tfprof.pprof.ProfileOuterClass.ValueType DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new tensorflow.tfprof.pprof.ProfileOuterClass.ValueType();
    }

    public static tensorflow.tfprof.pprof.ProfileOuterClass.ValueType getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public ValueType parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ValueType(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public tensorflow.tfprof.pprof.ProfileOuterClass.ValueType getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface SampleOrBuilder extends
      // @@protoc_insertion_point(interface_extends:tensorflow.tfprof.pprof.Sample)
      com.google.protobuf.MessageOrBuilder {

    /**
     * repeated uint64 location_id = 1;
     */
    java.util.List getLocationIdList();
    /**
     * repeated uint64 location_id = 1;
     */
    int getLocationIdCount();
    /**
     * repeated uint64 location_id = 1;
     */
    long getLocationId(int index);

    /**
     * repeated int64 value = 2;
     */
    java.util.List getValueList();
    /**
     * repeated int64 value = 2;
     */
    int getValueCount();
    /**
     * repeated int64 value = 2;
     */
    long getValue(int index);

    /**
     * repeated .tensorflow.tfprof.pprof.Label label = 3;
     */
    java.util.List 
        getLabelList();
    /**
     * repeated .tensorflow.tfprof.pprof.Label label = 3;
     */
    tensorflow.tfprof.pprof.ProfileOuterClass.Label getLabel(int index);
    /**
     * repeated .tensorflow.tfprof.pprof.Label label = 3;
     */
    int getLabelCount();
    /**
     * repeated .tensorflow.tfprof.pprof.Label label = 3;
     */
    java.util.List 
        getLabelOrBuilderList();
    /**
     * repeated .tensorflow.tfprof.pprof.Label label = 3;
     */
    tensorflow.tfprof.pprof.ProfileOuterClass.LabelOrBuilder getLabelOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code tensorflow.tfprof.pprof.Sample}
   */
  public  static final class Sample extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:tensorflow.tfprof.pprof.Sample)
      SampleOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Sample.newBuilder() to construct.
    private Sample(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private Sample() {
      locationId_ = java.util.Collections.emptyList();
      value_ = java.util.Collections.emptyList();
      label_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Sample(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 8: {
              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                locationId_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              locationId_.add(input.readUInt64());
              break;
            }
            case 10: {
              int length = input.readRawVarint32();
              int limit = input.pushLimit(length);
              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
                locationId_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              while (input.getBytesUntilLimit() > 0) {
                locationId_.add(input.readUInt64());
              }
              input.popLimit(limit);
              break;
            }
            case 16: {
              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                value_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000002;
              }
              value_.add(input.readInt64());
              break;
            }
            case 18: {
              int length = input.readRawVarint32();
              int limit = input.pushLimit(length);
              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
                value_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000002;
              }
              while (input.getBytesUntilLimit() > 0) {
                value_.add(input.readInt64());
              }
              input.popLimit(limit);
              break;
            }
            case 26: {
              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
                label_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000004;
              }
              label_.add(
                  input.readMessage(tensorflow.tfprof.pprof.ProfileOuterClass.Label.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
          locationId_ = java.util.Collections.unmodifiableList(locationId_);
        }
        if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
          value_ = java.util.Collections.unmodifiableList(value_);
        }
        if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
          label_ = java.util.Collections.unmodifiableList(label_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_Sample_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_Sample_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              tensorflow.tfprof.pprof.ProfileOuterClass.Sample.class, tensorflow.tfprof.pprof.ProfileOuterClass.Sample.Builder.class);
    }

    public static final int LOCATION_ID_FIELD_NUMBER = 1;
    private java.util.List locationId_;
    /**
     * repeated uint64 location_id = 1;
     */
    public java.util.List
        getLocationIdList() {
      return locationId_;
    }
    /**
     * repeated uint64 location_id = 1;
     */
    public int getLocationIdCount() {
      return locationId_.size();
    }
    /**
     * repeated uint64 location_id = 1;
     */
    public long getLocationId(int index) {
      return locationId_.get(index);
    }
    private int locationIdMemoizedSerializedSize = -1;

    public static final int VALUE_FIELD_NUMBER = 2;
    private java.util.List value_;
    /**
     * repeated int64 value = 2;
     */
    public java.util.List
        getValueList() {
      return value_;
    }
    /**
     * repeated int64 value = 2;
     */
    public int getValueCount() {
      return value_.size();
    }
    /**
     * repeated int64 value = 2;
     */
    public long getValue(int index) {
      return value_.get(index);
    }
    private int valueMemoizedSerializedSize = -1;

    public static final int LABEL_FIELD_NUMBER = 3;
    private java.util.List label_;
    /**
     * repeated .tensorflow.tfprof.pprof.Label label = 3;
     */
    public java.util.List getLabelList() {
      return label_;
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Label label = 3;
     */
    public java.util.List 
        getLabelOrBuilderList() {
      return label_;
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Label label = 3;
     */
    public int getLabelCount() {
      return label_.size();
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Label label = 3;
     */
    public tensorflow.tfprof.pprof.ProfileOuterClass.Label getLabel(int index) {
      return label_.get(index);
    }
    /**
     * repeated .tensorflow.tfprof.pprof.Label label = 3;
     */
    public tensorflow.tfprof.pprof.ProfileOuterClass.LabelOrBuilder getLabelOrBuilder(
        int index) {
      return label_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      if (getLocationIdList().size() > 0) {
        output.writeUInt32NoTag(10);
        output.writeUInt32NoTag(locationIdMemoizedSerializedSize);
      }
      for (int i = 0; i < locationId_.size(); i++) {
        output.writeUInt64NoTag(locationId_.get(i));
      }
      if (getValueList().size() > 0) {
        output.writeUInt32NoTag(18);
        output.writeUInt32NoTag(valueMemoizedSerializedSize);
      }
      for (int i = 0; i < value_.size(); i++) {
        output.writeInt64NoTag(value_.get(i));
      }
      for (int i = 0; i < label_.size(); i++) {
        output.writeMessage(3, label_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      {
        int dataSize = 0;
        for (int i = 0; i < locationId_.size(); i++) {
          dataSize += com.google.protobuf.CodedOutputStream
            .computeUInt64SizeNoTag(locationId_.get(i));
        }
        size += dataSize;
        if (!getLocationIdList().isEmpty()) {
          size += 1;
          size += com.google.protobuf.CodedOutputStream
              .computeInt32SizeNoTag(dataSize);
        }
        locationIdMemoizedSerializedSize = dataSize;
      }
      {
        int dataSize = 0;
        for (int i = 0; i < value_.size(); i++) {
          dataSize += com.google.protobuf.CodedOutputStream
            .computeInt64SizeNoTag(value_.get(i));
        }
        size += dataSize;
        if (!getValueList().isEmpty()) {
          size += 1;
          size += com.google.protobuf.CodedOutputStream
              .computeInt32SizeNoTag(dataSize);
        }
        valueMemoizedSerializedSize = dataSize;
      }
      for (int i = 0; i < label_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, label_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof tensorflow.tfprof.pprof.ProfileOuterClass.Sample)) {
        return super.equals(obj);
      }
      tensorflow.tfprof.pprof.ProfileOuterClass.Sample other = (tensorflow.tfprof.pprof.ProfileOuterClass.Sample) obj;

      boolean result = true;
      result = result && getLocationIdList()
          .equals(other.getLocationIdList());
      result = result && getValueList()
          .equals(other.getValueList());
      result = result && getLabelList()
          .equals(other.getLabelList());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getLocationIdCount() > 0) {
        hash = (37 * hash) + LOCATION_ID_FIELD_NUMBER;
        hash = (53 * hash) + getLocationIdList().hashCode();
      }
      if (getValueCount() > 0) {
        hash = (37 * hash) + VALUE_FIELD_NUMBER;
        hash = (53 * hash) + getValueList().hashCode();
      }
      if (getLabelCount() > 0) {
        hash = (37 * hash) + LABEL_FIELD_NUMBER;
        hash = (53 * hash) + getLabelList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static tensorflow.tfprof.pprof.ProfileOuterClass.Sample parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Sample parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Sample parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Sample parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Sample parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Sample parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Sample parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Sample parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Sample parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Sample parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Sample parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Sample parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(tensorflow.tfprof.pprof.ProfileOuterClass.Sample prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code tensorflow.tfprof.pprof.Sample}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:tensorflow.tfprof.pprof.Sample)
        tensorflow.tfprof.pprof.ProfileOuterClass.SampleOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_Sample_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_Sample_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                tensorflow.tfprof.pprof.ProfileOuterClass.Sample.class, tensorflow.tfprof.pprof.ProfileOuterClass.Sample.Builder.class);
      }

      // Construct using tensorflow.tfprof.pprof.ProfileOuterClass.Sample.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getLabelFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        locationId_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000001);
        value_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000002);
        if (labelBuilder_ == null) {
          label_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);
        } else {
          labelBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_Sample_descriptor;
      }

      @java.lang.Override
      public tensorflow.tfprof.pprof.ProfileOuterClass.Sample getDefaultInstanceForType() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.Sample.getDefaultInstance();
      }

      @java.lang.Override
      public tensorflow.tfprof.pprof.ProfileOuterClass.Sample build() {
        tensorflow.tfprof.pprof.ProfileOuterClass.Sample result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public tensorflow.tfprof.pprof.ProfileOuterClass.Sample buildPartial() {
        tensorflow.tfprof.pprof.ProfileOuterClass.Sample result = new tensorflow.tfprof.pprof.ProfileOuterClass.Sample(this);
        int from_bitField0_ = bitField0_;
        if (((bitField0_ & 0x00000001) == 0x00000001)) {
          locationId_ = java.util.Collections.unmodifiableList(locationId_);
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.locationId_ = locationId_;
        if (((bitField0_ & 0x00000002) == 0x00000002)) {
          value_ = java.util.Collections.unmodifiableList(value_);
          bitField0_ = (bitField0_ & ~0x00000002);
        }
        result.value_ = value_;
        if (labelBuilder_ == null) {
          if (((bitField0_ & 0x00000004) == 0x00000004)) {
            label_ = java.util.Collections.unmodifiableList(label_);
            bitField0_ = (bitField0_ & ~0x00000004);
          }
          result.label_ = label_;
        } else {
          result.label_ = labelBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return (Builder) super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof tensorflow.tfprof.pprof.ProfileOuterClass.Sample) {
          return mergeFrom((tensorflow.tfprof.pprof.ProfileOuterClass.Sample)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(tensorflow.tfprof.pprof.ProfileOuterClass.Sample other) {
        if (other == tensorflow.tfprof.pprof.ProfileOuterClass.Sample.getDefaultInstance()) return this;
        if (!other.locationId_.isEmpty()) {
          if (locationId_.isEmpty()) {
            locationId_ = other.locationId_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureLocationIdIsMutable();
            locationId_.addAll(other.locationId_);
          }
          onChanged();
        }
        if (!other.value_.isEmpty()) {
          if (value_.isEmpty()) {
            value_ = other.value_;
            bitField0_ = (bitField0_ & ~0x00000002);
          } else {
            ensureValueIsMutable();
            value_.addAll(other.value_);
          }
          onChanged();
        }
        if (labelBuilder_ == null) {
          if (!other.label_.isEmpty()) {
            if (label_.isEmpty()) {
              label_ = other.label_;
              bitField0_ = (bitField0_ & ~0x00000004);
            } else {
              ensureLabelIsMutable();
              label_.addAll(other.label_);
            }
            onChanged();
          }
        } else {
          if (!other.label_.isEmpty()) {
            if (labelBuilder_.isEmpty()) {
              labelBuilder_.dispose();
              labelBuilder_ = null;
              label_ = other.label_;
              bitField0_ = (bitField0_ & ~0x00000004);
              labelBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getLabelFieldBuilder() : null;
            } else {
              labelBuilder_.addAllMessages(other.label_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        tensorflow.tfprof.pprof.ProfileOuterClass.Sample parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (tensorflow.tfprof.pprof.ProfileOuterClass.Sample) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List locationId_ = java.util.Collections.emptyList();
      private void ensureLocationIdIsMutable() {
        if (!((bitField0_ & 0x00000001) == 0x00000001)) {
          locationId_ = new java.util.ArrayList(locationId_);
          bitField0_ |= 0x00000001;
         }
      }
      /**
       * repeated uint64 location_id = 1;
       */
      public java.util.List
          getLocationIdList() {
        return java.util.Collections.unmodifiableList(locationId_);
      }
      /**
       * repeated uint64 location_id = 1;
       */
      public int getLocationIdCount() {
        return locationId_.size();
      }
      /**
       * repeated uint64 location_id = 1;
       */
      public long getLocationId(int index) {
        return locationId_.get(index);
      }
      /**
       * repeated uint64 location_id = 1;
       */
      public Builder setLocationId(
          int index, long value) {
        ensureLocationIdIsMutable();
        locationId_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * repeated uint64 location_id = 1;
       */
      public Builder addLocationId(long value) {
        ensureLocationIdIsMutable();
        locationId_.add(value);
        onChanged();
        return this;
      }
      /**
       * repeated uint64 location_id = 1;
       */
      public Builder addAllLocationId(
          java.lang.Iterable values) {
        ensureLocationIdIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, locationId_);
        onChanged();
        return this;
      }
      /**
       * repeated uint64 location_id = 1;
       */
      public Builder clearLocationId() {
        locationId_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }

      private java.util.List value_ = java.util.Collections.emptyList();
      private void ensureValueIsMutable() {
        if (!((bitField0_ & 0x00000002) == 0x00000002)) {
          value_ = new java.util.ArrayList(value_);
          bitField0_ |= 0x00000002;
         }
      }
      /**
       * repeated int64 value = 2;
       */
      public java.util.List
          getValueList() {
        return java.util.Collections.unmodifiableList(value_);
      }
      /**
       * repeated int64 value = 2;
       */
      public int getValueCount() {
        return value_.size();
      }
      /**
       * repeated int64 value = 2;
       */
      public long getValue(int index) {
        return value_.get(index);
      }
      /**
       * repeated int64 value = 2;
       */
      public Builder setValue(
          int index, long value) {
        ensureValueIsMutable();
        value_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * repeated int64 value = 2;
       */
      public Builder addValue(long value) {
        ensureValueIsMutable();
        value_.add(value);
        onChanged();
        return this;
      }
      /**
       * repeated int64 value = 2;
       */
      public Builder addAllValue(
          java.lang.Iterable values) {
        ensureValueIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, value_);
        onChanged();
        return this;
      }
      /**
       * repeated int64 value = 2;
       */
      public Builder clearValue() {
        value_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000002);
        onChanged();
        return this;
      }

      private java.util.List label_ =
        java.util.Collections.emptyList();
      private void ensureLabelIsMutable() {
        if (!((bitField0_ & 0x00000004) == 0x00000004)) {
          label_ = new java.util.ArrayList(label_);
          bitField0_ |= 0x00000004;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          tensorflow.tfprof.pprof.ProfileOuterClass.Label, tensorflow.tfprof.pprof.ProfileOuterClass.Label.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.LabelOrBuilder> labelBuilder_;

      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public java.util.List getLabelList() {
        if (labelBuilder_ == null) {
          return java.util.Collections.unmodifiableList(label_);
        } else {
          return labelBuilder_.getMessageList();
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public int getLabelCount() {
        if (labelBuilder_ == null) {
          return label_.size();
        } else {
          return labelBuilder_.getCount();
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Label getLabel(int index) {
        if (labelBuilder_ == null) {
          return label_.get(index);
        } else {
          return labelBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public Builder setLabel(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Label value) {
        if (labelBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureLabelIsMutable();
          label_.set(index, value);
          onChanged();
        } else {
          labelBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public Builder setLabel(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Label.Builder builderForValue) {
        if (labelBuilder_ == null) {
          ensureLabelIsMutable();
          label_.set(index, builderForValue.build());
          onChanged();
        } else {
          labelBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public Builder addLabel(tensorflow.tfprof.pprof.ProfileOuterClass.Label value) {
        if (labelBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureLabelIsMutable();
          label_.add(value);
          onChanged();
        } else {
          labelBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public Builder addLabel(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Label value) {
        if (labelBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureLabelIsMutable();
          label_.add(index, value);
          onChanged();
        } else {
          labelBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public Builder addLabel(
          tensorflow.tfprof.pprof.ProfileOuterClass.Label.Builder builderForValue) {
        if (labelBuilder_ == null) {
          ensureLabelIsMutable();
          label_.add(builderForValue.build());
          onChanged();
        } else {
          labelBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public Builder addLabel(
          int index, tensorflow.tfprof.pprof.ProfileOuterClass.Label.Builder builderForValue) {
        if (labelBuilder_ == null) {
          ensureLabelIsMutable();
          label_.add(index, builderForValue.build());
          onChanged();
        } else {
          labelBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public Builder addAllLabel(
          java.lang.Iterable values) {
        if (labelBuilder_ == null) {
          ensureLabelIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, label_);
          onChanged();
        } else {
          labelBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public Builder clearLabel() {
        if (labelBuilder_ == null) {
          label_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000004);
          onChanged();
        } else {
          labelBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public Builder removeLabel(int index) {
        if (labelBuilder_ == null) {
          ensureLabelIsMutable();
          label_.remove(index);
          onChanged();
        } else {
          labelBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Label.Builder getLabelBuilder(
          int index) {
        return getLabelFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.LabelOrBuilder getLabelOrBuilder(
          int index) {
        if (labelBuilder_ == null) {
          return label_.get(index);  } else {
          return labelBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public java.util.List 
           getLabelOrBuilderList() {
        if (labelBuilder_ != null) {
          return labelBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(label_);
        }
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Label.Builder addLabelBuilder() {
        return getLabelFieldBuilder().addBuilder(
            tensorflow.tfprof.pprof.ProfileOuterClass.Label.getDefaultInstance());
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public tensorflow.tfprof.pprof.ProfileOuterClass.Label.Builder addLabelBuilder(
          int index) {
        return getLabelFieldBuilder().addBuilder(
            index, tensorflow.tfprof.pprof.ProfileOuterClass.Label.getDefaultInstance());
      }
      /**
       * repeated .tensorflow.tfprof.pprof.Label label = 3;
       */
      public java.util.List 
           getLabelBuilderList() {
        return getLabelFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          tensorflow.tfprof.pprof.ProfileOuterClass.Label, tensorflow.tfprof.pprof.ProfileOuterClass.Label.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.LabelOrBuilder> 
          getLabelFieldBuilder() {
        if (labelBuilder_ == null) {
          labelBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              tensorflow.tfprof.pprof.ProfileOuterClass.Label, tensorflow.tfprof.pprof.ProfileOuterClass.Label.Builder, tensorflow.tfprof.pprof.ProfileOuterClass.LabelOrBuilder>(
                  label_,
                  ((bitField0_ & 0x00000004) == 0x00000004),
                  getParentForChildren(),
                  isClean());
          label_ = null;
        }
        return labelBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:tensorflow.tfprof.pprof.Sample)
    }

    // @@protoc_insertion_point(class_scope:tensorflow.tfprof.pprof.Sample)
    private static final tensorflow.tfprof.pprof.ProfileOuterClass.Sample DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new tensorflow.tfprof.pprof.ProfileOuterClass.Sample();
    }

    public static tensorflow.tfprof.pprof.ProfileOuterClass.Sample getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser
        PARSER = new com.google.protobuf.AbstractParser() {
      @java.lang.Override
      public Sample parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new Sample(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public tensorflow.tfprof.pprof.ProfileOuterClass.Sample getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface LabelOrBuilder extends
      // @@protoc_insertion_point(interface_extends:tensorflow.tfprof.pprof.Label)
      com.google.protobuf.MessageOrBuilder {

    /**
     * int64 key = 1;
     */
    long getKey();

    /**
     * int64 str = 2;
     */
    long getStr();

    /**
     * int64 num = 3;
     */
    long getNum();
  }
  /**
   * Protobuf type {@code tensorflow.tfprof.pprof.Label}
   */
  public  static final class Label extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:tensorflow.tfprof.pprof.Label)
      LabelOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use Label.newBuilder() to construct.
    private Label(com.google.protobuf.GeneratedMessageV3.Builder builder) {
      super(builder);
    }
    private Label() {
      key_ = 0L;
      str_ = 0L;
      num_ = 0L;
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private Label(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 8: {

              key_ = input.readInt64();
              break;
            }
            case 16: {

              str_ = input.readInt64();
              break;
            }
            case 24: {

              num_ = input.readInt64();
              break;
            }
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_Label_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_Label_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              tensorflow.tfprof.pprof.ProfileOuterClass.Label.class, tensorflow.tfprof.pprof.ProfileOuterClass.Label.Builder.class);
    }

    public static final int KEY_FIELD_NUMBER = 1;
    private long key_;
    /**
     * int64 key = 1;
     */
    public long getKey() {
      return key_;
    }

    public static final int STR_FIELD_NUMBER = 2;
    private long str_;
    /**
     * int64 str = 2;
     */
    public long getStr() {
      return str_;
    }

    public static final int NUM_FIELD_NUMBER = 3;
    private long num_;
    /**
     * int64 num = 3;
     */
    public long getNum() {
      return num_;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (key_ != 0L) {
        output.writeInt64(1, key_);
      }
      if (str_ != 0L) {
        output.writeInt64(2, str_);
      }
      if (num_ != 0L) {
        output.writeInt64(3, num_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (key_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(1, key_);
      }
      if (str_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(2, str_);
      }
      if (num_ != 0L) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(3, num_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof tensorflow.tfprof.pprof.ProfileOuterClass.Label)) {
        return super.equals(obj);
      }
      tensorflow.tfprof.pprof.ProfileOuterClass.Label other = (tensorflow.tfprof.pprof.ProfileOuterClass.Label) obj;

      boolean result = true;
      result = result && (getKey()
          == other.getKey());
      result = result && (getStr()
          == other.getStr());
      result = result && (getNum()
          == other.getNum());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + KEY_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getKey());
      hash = (37 * hash) + STR_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getStr());
      hash = (37 * hash) + NUM_FIELD_NUMBER;
      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
          getNum());
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static tensorflow.tfprof.pprof.ProfileOuterClass.Label parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Label parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Label parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Label parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Label parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Label parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Label parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Label parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Label parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Label parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Label parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static tensorflow.tfprof.pprof.ProfileOuterClass.Label parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(tensorflow.tfprof.pprof.ProfileOuterClass.Label prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code tensorflow.tfprof.pprof.Label}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder implements
        // @@protoc_insertion_point(builder_implements:tensorflow.tfprof.pprof.Label)
        tensorflow.tfprof.pprof.ProfileOuterClass.LabelOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_Label_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_Label_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                tensorflow.tfprof.pprof.ProfileOuterClass.Label.class, tensorflow.tfprof.pprof.ProfileOuterClass.Label.Builder.class);
      }

      // Construct using tensorflow.tfprof.pprof.ProfileOuterClass.Label.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        key_ = 0L;

        str_ = 0L;

        num_ = 0L;

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.internal_static_tensorflow_tfprof_pprof_Label_descriptor;
      }

      @java.lang.Override
      public tensorflow.tfprof.pprof.ProfileOuterClass.Label getDefaultInstanceForType() {
        return tensorflow.tfprof.pprof.ProfileOuterClass.Label.getDefaultInstance();
      }

      @java.lang.Override
      public tensorflow.tfprof.pprof.ProfileOuterClass.Label build() {
        tensorflow.tfprof.pprof.ProfileOuterClass.Label result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public tensorflow.tfprof.pprof.ProfileOuterClass.Label buildPartial() {
        tensorflow.tfprof.pprof.ProfileOuterClass.Label result = new tensorflow.tfprof.pprof.ProfileOuterClass.Label(this);
        result.key_ = key_;
        result.str_ = str_;
        result.num_ = num_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return (Builder) super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof tensorflow.tfprof.pprof.ProfileOuterClass.Label) {
          return mergeFrom((tensorflow.tfprof.pprof.ProfileOuterClass.Label)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(tensorflow.tfprof.pprof.ProfileOuterClass.Label other) {
        if (other == tensorflow.tfprof.pprof.ProfileOuterClass.Label.getDefaultInstance()) return this;
        if (other.getKey() != 0L) {
          setKey(other.getKey());
        }
        if (other.getStr() != 0L) {
          setStr(other.getStr());
        }
        if (other.getNum() != 0L) {
          setNum(other.getNum());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        tensorflow.tfprof.pprof.ProfileOuterClass.Label parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (tensorflow.tfprof.pprof.ProfileOuterClass.Label) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private long key_ ;
      /**
       * int64 key = 1;
       */
      public long getKey() {
        return key_;
      }
      /**
       * int64 key = 1;
       */
      public Builder setKey(long value) {
        
        key_ = value;
        onChanged();
        return this;
      }
      /**
       * int64 key = 1;
       */
      public Builder clearKey() {
        
        key_ = 0L;
        onChanged();
        return this;
      }

      private long str_ ;
      /**
       * int64 str = 2;
       */
      public long getStr() {
        return str_;
      }
      /**
       * int64 str = 2;
       */
      public Builder setStr(long value) {
        
        str_ = value;
        onChanged();
        return this;
      }
      /**
       * int64 str = 2;
       */
      public Builder clearStr() {
        
        str_ = 0L;
        onChanged();
        return this;
      }

      private long num_ ;
      /**
       * int64 num = 3;
       */
      public long getNum() {
        return num_;
      }
      /**
       * int64 num = 3;
       */
      public Builder setNum(long value) {
        
        num_ = value;
        onChanged();
        return this;
      }
      /**
       * int64 num = 3;
       */
      public Builder clearNum() {
        
        num_ = 0L;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:tensorflow.tfprof.pprof.Label)
    }

    // @@protoc_insertion_point(class_scope:tensorflow.tfprof.pprof.Label)
    private static final tensorflow.tfprof.pprof.ProfileOuterClass.Label DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new tensorflow.tfprof.pprof.ProfileOuterClass.Label();
    }

    public static tensorflow.tfprof.pprof.ProfileOuterClass.Label getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser




© 2015 - 2024 Weber Informatics LLC | Privacy Policy