// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: tensorflow/core/protobuf/debug_event.proto

package org.tensorflow.proto.util;

/**
 * <pre>
 * An Event related to the debugging of a TensorFlow program.
 * </pre>
 *
 * Protobuf type {@code tensorflow.DebugEvent}
 */
public  final class DebugEvent extends
    com.google.protobuf.GeneratedMessageV3 implements
    // @@protoc_insertion_point(message_implements:tensorflow.DebugEvent)
    DebugEventOrBuilder {
private static final long serialVersionUID = 0L;
  // Use DebugEvent.newBuilder() to construct.
  private DebugEvent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
    super(builder);
  }
  private DebugEvent() {
  }

  @java.lang.Override
  @SuppressWarnings({"unused"})
  protected java.lang.Object newInstance(
      UnusedPrivateParameter unused) {
    return new DebugEvent();
  }

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

            wallTime_ = input.readDouble();
            break;
          }
          case 16: {

            step_ = input.readInt64();
            break;
          }
          case 26: {
            org.tensorflow.proto.util.DebugMetadata.Builder subBuilder = null;
            if (whatCase_ == 3) {
              subBuilder = ((org.tensorflow.proto.util.DebugMetadata) what_).toBuilder();
            }
            what_ =
                input.readMessage(org.tensorflow.proto.util.DebugMetadata.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom((org.tensorflow.proto.util.DebugMetadata) what_);
              what_ = subBuilder.buildPartial();
            }
            whatCase_ = 3;
            break;
          }
          case 34: {
            org.tensorflow.proto.util.SourceFile.Builder subBuilder = null;
            if (whatCase_ == 4) {
              subBuilder = ((org.tensorflow.proto.util.SourceFile) what_).toBuilder();
            }
            what_ =
                input.readMessage(org.tensorflow.proto.util.SourceFile.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom((org.tensorflow.proto.util.SourceFile) what_);
              what_ = subBuilder.buildPartial();
            }
            whatCase_ = 4;
            break;
          }
          case 50: {
            org.tensorflow.proto.util.StackFrameWithId.Builder subBuilder = null;
            if (whatCase_ == 6) {
              subBuilder = ((org.tensorflow.proto.util.StackFrameWithId) what_).toBuilder();
            }
            what_ =
                input.readMessage(org.tensorflow.proto.util.StackFrameWithId.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom((org.tensorflow.proto.util.StackFrameWithId) what_);
              what_ = subBuilder.buildPartial();
            }
            whatCase_ = 6;
            break;
          }
          case 58: {
            org.tensorflow.proto.util.GraphOpCreation.Builder subBuilder = null;
            if (whatCase_ == 7) {
              subBuilder = ((org.tensorflow.proto.util.GraphOpCreation) what_).toBuilder();
            }
            what_ =
                input.readMessage(org.tensorflow.proto.util.GraphOpCreation.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom((org.tensorflow.proto.util.GraphOpCreation) what_);
              what_ = subBuilder.buildPartial();
            }
            whatCase_ = 7;
            break;
          }
          case 66: {
            org.tensorflow.proto.util.DebuggedGraph.Builder subBuilder = null;
            if (whatCase_ == 8) {
              subBuilder = ((org.tensorflow.proto.util.DebuggedGraph) what_).toBuilder();
            }
            what_ =
                input.readMessage(org.tensorflow.proto.util.DebuggedGraph.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom((org.tensorflow.proto.util.DebuggedGraph) what_);
              what_ = subBuilder.buildPartial();
            }
            whatCase_ = 8;
            break;
          }
          case 74: {
            org.tensorflow.proto.util.Execution.Builder subBuilder = null;
            if (whatCase_ == 9) {
              subBuilder = ((org.tensorflow.proto.util.Execution) what_).toBuilder();
            }
            what_ =
                input.readMessage(org.tensorflow.proto.util.Execution.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom((org.tensorflow.proto.util.Execution) what_);
              what_ = subBuilder.buildPartial();
            }
            whatCase_ = 9;
            break;
          }
          case 82: {
            org.tensorflow.proto.util.GraphExecutionTrace.Builder subBuilder = null;
            if (whatCase_ == 10) {
              subBuilder = ((org.tensorflow.proto.util.GraphExecutionTrace) what_).toBuilder();
            }
            what_ =
                input.readMessage(org.tensorflow.proto.util.GraphExecutionTrace.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom((org.tensorflow.proto.util.GraphExecutionTrace) what_);
              what_ = subBuilder.buildPartial();
            }
            whatCase_ = 10;
            break;
          }
          case 90: {
            java.lang.String s = input.readStringRequireUtf8();
            whatCase_ = 11;
            what_ = s;
            break;
          }
          case 98: {
            org.tensorflow.proto.util.DebuggedDevice.Builder subBuilder = null;
            if (whatCase_ == 12) {
              subBuilder = ((org.tensorflow.proto.util.DebuggedDevice) what_).toBuilder();
            }
            what_ =
                input.readMessage(org.tensorflow.proto.util.DebuggedDevice.parser(), extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom((org.tensorflow.proto.util.DebuggedDevice) what_);
              what_ = subBuilder.buildPartial();
            }
            whatCase_ = 12;
            break;
          }
          default: {
            if (!parseUnknownField(
                input, unknownFields, extensionRegistry, tag)) {
              done = true;
            }
            break;
          }
        }
      }
    } catch (com.google.protobuf.InvalidProtocolBufferException e) {
      throw e.setUnfinishedMessage(this);
    } catch (java.io.IOException e) {
      throw new com.google.protobuf.InvalidProtocolBufferException(
          e).setUnfinishedMessage(this);
    } finally {
      this.unknownFields = unknownFields.build();
      makeExtensionsImmutable();
    }
  }
  public static final com.google.protobuf.Descriptors.Descriptor
      getDescriptor() {
    return org.tensorflow.proto.util.DebugEventProtos.internal_static_tensorflow_DebugEvent_descriptor;
  }

  @java.lang.Override
  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internalGetFieldAccessorTable() {
    return org.tensorflow.proto.util.DebugEventProtos.internal_static_tensorflow_DebugEvent_fieldAccessorTable
        .ensureFieldAccessorsInitialized(
            org.tensorflow.proto.util.DebugEvent.class, org.tensorflow.proto.util.DebugEvent.Builder.class);
  }

  private int whatCase_ = 0;
  private java.lang.Object what_;
  public enum WhatCase
      implements com.google.protobuf.Internal.EnumLite {
    DEBUG_METADATA(3),
    SOURCE_FILE(4),
    STACK_FRAME_WITH_ID(6),
    GRAPH_OP_CREATION(7),
    DEBUGGED_GRAPH(8),
    EXECUTION(9),
    GRAPH_EXECUTION_TRACE(10),
    GRAPH_ID(11),
    DEBUGGED_DEVICE(12),
    WHAT_NOT_SET(0);
    private final int value;
    private WhatCase(int value) {
      this.value = value;
    }
    /**
     * @deprecated Use {@link #forNumber(int)} instead.
     */
    @java.lang.Deprecated
    public static WhatCase valueOf(int value) {
      return forNumber(value);
    }

    public static WhatCase forNumber(int value) {
      switch (value) {
        case 3: return DEBUG_METADATA;
        case 4: return SOURCE_FILE;
        case 6: return STACK_FRAME_WITH_ID;
        case 7: return GRAPH_OP_CREATION;
        case 8: return DEBUGGED_GRAPH;
        case 9: return EXECUTION;
        case 10: return GRAPH_EXECUTION_TRACE;
        case 11: return GRAPH_ID;
        case 12: return DEBUGGED_DEVICE;
        case 0: return WHAT_NOT_SET;
        default: return null;
      }
    }
    public int getNumber() {
      return this.value;
    }
  };

  public WhatCase
  getWhatCase() {
    return WhatCase.forNumber(
        whatCase_);
  }

  public static final int WALL_TIME_FIELD_NUMBER = 1;
  private double wallTime_;
  /**
   * <pre>
   * Timestamp in seconds (with microsecond precision).
   * </pre>
   *
   * <code>double wall_time = 1;</code>
   */
  public double getWallTime() {
    return wallTime_;
  }

  public static final int STEP_FIELD_NUMBER = 2;
  private long step_;
  /**
   * <pre>
   * Step of training (if available).
   * </pre>
   *
   * <code>int64 step = 2;</code>
   */
  public long getStep() {
    return step_;
  }

  public static final int DEBUG_METADATA_FIELD_NUMBER = 3;
  /**
   * <pre>
   * Metadata related to this debugging data.
   * </pre>
   *
   * <code>.tensorflow.DebugMetadata debug_metadata = 3;</code>
   */
  public boolean hasDebugMetadata() {
    return whatCase_ == 3;
  }
  /**
   * <pre>
   * Metadata related to this debugging data.
   * </pre>
   *
   * <code>.tensorflow.DebugMetadata debug_metadata = 3;</code>
   */
  public org.tensorflow.proto.util.DebugMetadata getDebugMetadata() {
    if (whatCase_ == 3) {
       return (org.tensorflow.proto.util.DebugMetadata) what_;
    }
    return org.tensorflow.proto.util.DebugMetadata.getDefaultInstance();
  }
  /**
   * <pre>
   * Metadata related to this debugging data.
   * </pre>
   *
   * <code>.tensorflow.DebugMetadata debug_metadata = 3;</code>
   */
  public org.tensorflow.proto.util.DebugMetadataOrBuilder getDebugMetadataOrBuilder() {
    if (whatCase_ == 3) {
       return (org.tensorflow.proto.util.DebugMetadata) what_;
    }
    return org.tensorflow.proto.util.DebugMetadata.getDefaultInstance();
  }

  public static final int SOURCE_FILE_FIELD_NUMBER = 4;
  /**
   * <pre>
   * The content of a source file.
   * </pre>
   *
   * <code>.tensorflow.SourceFile source_file = 4;</code>
   */
  public boolean hasSourceFile() {
    return whatCase_ == 4;
  }
  /**
   * <pre>
   * The content of a source file.
   * </pre>
   *
   * <code>.tensorflow.SourceFile source_file = 4;</code>
   */
  public org.tensorflow.proto.util.SourceFile getSourceFile() {
    if (whatCase_ == 4) {
       return (org.tensorflow.proto.util.SourceFile) what_;
    }
    return org.tensorflow.proto.util.SourceFile.getDefaultInstance();
  }
  /**
   * <pre>
   * The content of a source file.
   * </pre>
   *
   * <code>.tensorflow.SourceFile source_file = 4;</code>
   */
  public org.tensorflow.proto.util.SourceFileOrBuilder getSourceFileOrBuilder() {
    if (whatCase_ == 4) {
       return (org.tensorflow.proto.util.SourceFile) what_;
    }
    return org.tensorflow.proto.util.SourceFile.getDefaultInstance();
  }

  public static final int STACK_FRAME_WITH_ID_FIELD_NUMBER = 6;
  /**
   * <pre>
   * A stack frame (filename, line number and column number, function name and
   * code string) with ID.
   * </pre>
   *
   * <code>.tensorflow.StackFrameWithId stack_frame_with_id = 6;</code>
   */
  public boolean hasStackFrameWithId() {
    return whatCase_ == 6;
  }
  /**
   * <pre>
   * A stack frame (filename, line number and column number, function name and
   * code string) with ID.
   * </pre>
   *
   * <code>.tensorflow.StackFrameWithId stack_frame_with_id = 6;</code>
   */
  public org.tensorflow.proto.util.StackFrameWithId getStackFrameWithId() {
    if (whatCase_ == 6) {
       return (org.tensorflow.proto.util.StackFrameWithId) what_;
    }
    return org.tensorflow.proto.util.StackFrameWithId.getDefaultInstance();
  }
  /**
   * <pre>
   * A stack frame (filename, line number and column number, function name and
   * code string) with ID.
   * </pre>
   *
   * <code>.tensorflow.StackFrameWithId stack_frame_with_id = 6;</code>
   */
  public org.tensorflow.proto.util.StackFrameWithIdOrBuilder getStackFrameWithIdOrBuilder() {
    if (whatCase_ == 6) {
       return (org.tensorflow.proto.util.StackFrameWithId) what_;
    }
    return org.tensorflow.proto.util.StackFrameWithId.getDefaultInstance();
  }

  public static final int GRAPH_OP_CREATION_FIELD_NUMBER = 7;
  /**
   * <pre>
   * The creation of an op within a graph (e.g., a FuncGraph compiled from
   * a Python function).
   * </pre>
   *
   * <code>.tensorflow.GraphOpCreation graph_op_creation = 7;</code>
   */
  public boolean hasGraphOpCreation() {
    return whatCase_ == 7;
  }
  /**
   * <pre>
   * The creation of an op within a graph (e.g., a FuncGraph compiled from
   * a Python function).
   * </pre>
   *
   * <code>.tensorflow.GraphOpCreation graph_op_creation = 7;</code>
   */
  public org.tensorflow.proto.util.GraphOpCreation getGraphOpCreation() {
    if (whatCase_ == 7) {
       return (org.tensorflow.proto.util.GraphOpCreation) what_;
    }
    return org.tensorflow.proto.util.GraphOpCreation.getDefaultInstance();
  }
  /**
   * <pre>
   * The creation of an op within a graph (e.g., a FuncGraph compiled from
   * a Python function).
   * </pre>
   *
   * <code>.tensorflow.GraphOpCreation graph_op_creation = 7;</code>
   */
  public org.tensorflow.proto.util.GraphOpCreationOrBuilder getGraphOpCreationOrBuilder() {
    if (whatCase_ == 7) {
       return (org.tensorflow.proto.util.GraphOpCreation) what_;
    }
    return org.tensorflow.proto.util.GraphOpCreation.getDefaultInstance();
  }

  public static final int DEBUGGED_GRAPH_FIELD_NUMBER = 8;
  /**
   * <pre>
   * Information about a debugged graph.
   * </pre>
   *
   * <code>.tensorflow.DebuggedGraph debugged_graph = 8;</code>
   */
  public boolean hasDebuggedGraph() {
    return whatCase_ == 8;
  }
  /**
   * <pre>
   * Information about a debugged graph.
   * </pre>
   *
   * <code>.tensorflow.DebuggedGraph debugged_graph = 8;</code>
   */
  public org.tensorflow.proto.util.DebuggedGraph getDebuggedGraph() {
    if (whatCase_ == 8) {
       return (org.tensorflow.proto.util.DebuggedGraph) what_;
    }
    return org.tensorflow.proto.util.DebuggedGraph.getDefaultInstance();
  }
  /**
   * <pre>
   * Information about a debugged graph.
   * </pre>
   *
   * <code>.tensorflow.DebuggedGraph debugged_graph = 8;</code>
   */
  public org.tensorflow.proto.util.DebuggedGraphOrBuilder getDebuggedGraphOrBuilder() {
    if (whatCase_ == 8) {
       return (org.tensorflow.proto.util.DebuggedGraph) what_;
    }
    return org.tensorflow.proto.util.DebuggedGraph.getDefaultInstance();
  }

  public static final int EXECUTION_FIELD_NUMBER = 9;
  /**
   * <pre>
   * Execution of an op or a Graph (e.g., a tf.function).
   * </pre>
   *
   * <code>.tensorflow.Execution execution = 9;</code>
   */
  public boolean hasExecution() {
    return whatCase_ == 9;
  }
  /**
   * <pre>
   * Execution of an op or a Graph (e.g., a tf.function).
   * </pre>
   *
   * <code>.tensorflow.Execution execution = 9;</code>
   */
  public org.tensorflow.proto.util.Execution getExecution() {
    if (whatCase_ == 9) {
       return (org.tensorflow.proto.util.Execution) what_;
    }
    return org.tensorflow.proto.util.Execution.getDefaultInstance();
  }
  /**
   * <pre>
   * Execution of an op or a Graph (e.g., a tf.function).
   * </pre>
   *
   * <code>.tensorflow.Execution execution = 9;</code>
   */
  public org.tensorflow.proto.util.ExecutionOrBuilder getExecutionOrBuilder() {
    if (whatCase_ == 9) {
       return (org.tensorflow.proto.util.Execution) what_;
    }
    return org.tensorflow.proto.util.Execution.getDefaultInstance();
  }

  public static final int GRAPH_EXECUTION_TRACE_FIELD_NUMBER = 10;
  /**
   * <pre>
   * A graph execution trace: Contains information about the intermediate
   * tensors computed during the graph execution.
   * </pre>
   *
   * <code>.tensorflow.GraphExecutionTrace graph_execution_trace = 10;</code>
   */
  public boolean hasGraphExecutionTrace() {
    return whatCase_ == 10;
  }
  /**
   * <pre>
   * A graph execution trace: Contains information about the intermediate
   * tensors computed during the graph execution.
   * </pre>
   *
   * <code>.tensorflow.GraphExecutionTrace graph_execution_trace = 10;</code>
   */
  public org.tensorflow.proto.util.GraphExecutionTrace getGraphExecutionTrace() {
    if (whatCase_ == 10) {
       return (org.tensorflow.proto.util.GraphExecutionTrace) what_;
    }
    return org.tensorflow.proto.util.GraphExecutionTrace.getDefaultInstance();
  }
  /**
   * <pre>
   * A graph execution trace: Contains information about the intermediate
   * tensors computed during the graph execution.
   * </pre>
   *
   * <code>.tensorflow.GraphExecutionTrace graph_execution_trace = 10;</code>
   */
  public org.tensorflow.proto.util.GraphExecutionTraceOrBuilder getGraphExecutionTraceOrBuilder() {
    if (whatCase_ == 10) {
       return (org.tensorflow.proto.util.GraphExecutionTrace) what_;
    }
    return org.tensorflow.proto.util.GraphExecutionTrace.getDefaultInstance();
  }

  public static final int GRAPH_ID_FIELD_NUMBER = 11;
  /**
   * <pre>
   * The ID of the graph (i.e., FuncGraph) executed here: applicable only
   * to the execution of a FuncGraph.
   * </pre>
   *
   * <code>string graph_id = 11;</code>
   */
  public java.lang.String getGraphId() {
    java.lang.Object ref = "";
    if (whatCase_ == 11) {
      ref = what_;
    }
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      if (whatCase_ == 11) {
        what_ = s;
      }
      return s;
    }
  }
  /**
   * <pre>
   * The ID of the graph (i.e., FuncGraph) executed here: applicable only
   * to the execution of a FuncGraph.
   * </pre>
   *
   * <code>string graph_id = 11;</code>
   */
  public com.google.protobuf.ByteString
      getGraphIdBytes() {
    java.lang.Object ref = "";
    if (whatCase_ == 11) {
      ref = what_;
    }
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      if (whatCase_ == 11) {
        what_ = b;
      }
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int DEBUGGED_DEVICE_FIELD_NUMBER = 12;
  /**
   * <pre>
   * A device on which debugger-instrumented ops and/or tensors reside.
   * </pre>
   *
   * <code>.tensorflow.DebuggedDevice debugged_device = 12;</code>
   */
  public boolean hasDebuggedDevice() {
    return whatCase_ == 12;
  }
  /**
   * <pre>
   * A device on which debugger-instrumented ops and/or tensors reside.
   * </pre>
   *
   * <code>.tensorflow.DebuggedDevice debugged_device = 12;</code>
   */
  public org.tensorflow.proto.util.DebuggedDevice getDebuggedDevice() {
    if (whatCase_ == 12) {
       return (org.tensorflow.proto.util.DebuggedDevice) what_;
    }
    return org.tensorflow.proto.util.DebuggedDevice.getDefaultInstance();
  }
  /**
   * <pre>
   * A device on which debugger-instrumented ops and/or tensors reside.
   * </pre>
   *
   * <code>.tensorflow.DebuggedDevice debugged_device = 12;</code>
   */
  public org.tensorflow.proto.util.DebuggedDeviceOrBuilder getDebuggedDeviceOrBuilder() {
    if (whatCase_ == 12) {
       return (org.tensorflow.proto.util.DebuggedDevice) what_;
    }
    return org.tensorflow.proto.util.DebuggedDevice.getDefaultInstance();
  }

  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 (wallTime_ != 0D) {
      output.writeDouble(1, wallTime_);
    }
    if (step_ != 0L) {
      output.writeInt64(2, step_);
    }
    if (whatCase_ == 3) {
      output.writeMessage(3, (org.tensorflow.proto.util.DebugMetadata) what_);
    }
    if (whatCase_ == 4) {
      output.writeMessage(4, (org.tensorflow.proto.util.SourceFile) what_);
    }
    if (whatCase_ == 6) {
      output.writeMessage(6, (org.tensorflow.proto.util.StackFrameWithId) what_);
    }
    if (whatCase_ == 7) {
      output.writeMessage(7, (org.tensorflow.proto.util.GraphOpCreation) what_);
    }
    if (whatCase_ == 8) {
      output.writeMessage(8, (org.tensorflow.proto.util.DebuggedGraph) what_);
    }
    if (whatCase_ == 9) {
      output.writeMessage(9, (org.tensorflow.proto.util.Execution) what_);
    }
    if (whatCase_ == 10) {
      output.writeMessage(10, (org.tensorflow.proto.util.GraphExecutionTrace) what_);
    }
    if (whatCase_ == 11) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 11, what_);
    }
    if (whatCase_ == 12) {
      output.writeMessage(12, (org.tensorflow.proto.util.DebuggedDevice) what_);
    }
    unknownFields.writeTo(output);
  }

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

    size = 0;
    if (wallTime_ != 0D) {
      size += com.google.protobuf.CodedOutputStream
        .computeDoubleSize(1, wallTime_);
    }
    if (step_ != 0L) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt64Size(2, step_);
    }
    if (whatCase_ == 3) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(3, (org.tensorflow.proto.util.DebugMetadata) what_);
    }
    if (whatCase_ == 4) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(4, (org.tensorflow.proto.util.SourceFile) what_);
    }
    if (whatCase_ == 6) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(6, (org.tensorflow.proto.util.StackFrameWithId) what_);
    }
    if (whatCase_ == 7) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(7, (org.tensorflow.proto.util.GraphOpCreation) what_);
    }
    if (whatCase_ == 8) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(8, (org.tensorflow.proto.util.DebuggedGraph) what_);
    }
    if (whatCase_ == 9) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(9, (org.tensorflow.proto.util.Execution) what_);
    }
    if (whatCase_ == 10) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(10, (org.tensorflow.proto.util.GraphExecutionTrace) what_);
    }
    if (whatCase_ == 11) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(11, what_);
    }
    if (whatCase_ == 12) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(12, (org.tensorflow.proto.util.DebuggedDevice) what_);
    }
    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 org.tensorflow.proto.util.DebugEvent)) {
      return super.equals(obj);
    }
    org.tensorflow.proto.util.DebugEvent other = (org.tensorflow.proto.util.DebugEvent) obj;

    if (java.lang.Double.doubleToLongBits(getWallTime())
        != java.lang.Double.doubleToLongBits(
            other.getWallTime())) return false;
    if (getStep()
        != other.getStep()) return false;
    if (!getWhatCase().equals(other.getWhatCase())) return false;
    switch (whatCase_) {
      case 3:
        if (!getDebugMetadata()
            .equals(other.getDebugMetadata())) return false;
        break;
      case 4:
        if (!getSourceFile()
            .equals(other.getSourceFile())) return false;
        break;
      case 6:
        if (!getStackFrameWithId()
            .equals(other.getStackFrameWithId())) return false;
        break;
      case 7:
        if (!getGraphOpCreation()
            .equals(other.getGraphOpCreation())) return false;
        break;
      case 8:
        if (!getDebuggedGraph()
            .equals(other.getDebuggedGraph())) return false;
        break;
      case 9:
        if (!getExecution()
            .equals(other.getExecution())) return false;
        break;
      case 10:
        if (!getGraphExecutionTrace()
            .equals(other.getGraphExecutionTrace())) return false;
        break;
      case 11:
        if (!getGraphId()
            .equals(other.getGraphId())) return false;
        break;
      case 12:
        if (!getDebuggedDevice()
            .equals(other.getDebuggedDevice())) return false;
        break;
      case 0:
      default:
    }
    if (!unknownFields.equals(other.unknownFields)) return false;
    return true;
  }

  @java.lang.Override
  public int hashCode() {
    if (memoizedHashCode != 0) {
      return memoizedHashCode;
    }
    int hash = 41;
    hash = (19 * hash) + getDescriptor().hashCode();
    hash = (37 * hash) + WALL_TIME_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
        java.lang.Double.doubleToLongBits(getWallTime()));
    hash = (37 * hash) + STEP_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
        getStep());
    switch (whatCase_) {
      case 3:
        hash = (37 * hash) + DEBUG_METADATA_FIELD_NUMBER;
        hash = (53 * hash) + getDebugMetadata().hashCode();
        break;
      case 4:
        hash = (37 * hash) + SOURCE_FILE_FIELD_NUMBER;
        hash = (53 * hash) + getSourceFile().hashCode();
        break;
      case 6:
        hash = (37 * hash) + STACK_FRAME_WITH_ID_FIELD_NUMBER;
        hash = (53 * hash) + getStackFrameWithId().hashCode();
        break;
      case 7:
        hash = (37 * hash) + GRAPH_OP_CREATION_FIELD_NUMBER;
        hash = (53 * hash) + getGraphOpCreation().hashCode();
        break;
      case 8:
        hash = (37 * hash) + DEBUGGED_GRAPH_FIELD_NUMBER;
        hash = (53 * hash) + getDebuggedGraph().hashCode();
        break;
      case 9:
        hash = (37 * hash) + EXECUTION_FIELD_NUMBER;
        hash = (53 * hash) + getExecution().hashCode();
        break;
      case 10:
        hash = (37 * hash) + GRAPH_EXECUTION_TRACE_FIELD_NUMBER;
        hash = (53 * hash) + getGraphExecutionTrace().hashCode();
        break;
      case 11:
        hash = (37 * hash) + GRAPH_ID_FIELD_NUMBER;
        hash = (53 * hash) + getGraphId().hashCode();
        break;
      case 12:
        hash = (37 * hash) + DEBUGGED_DEVICE_FIELD_NUMBER;
        hash = (53 * hash) + getDebuggedDevice().hashCode();
        break;
      case 0:
      default:
    }
    hash = (29 * hash) + unknownFields.hashCode();
    memoizedHashCode = hash;
    return hash;
  }

  public static org.tensorflow.proto.util.DebugEvent parseFrom(
      java.nio.ByteBuffer data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static org.tensorflow.proto.util.DebugEvent parseFrom(
      java.nio.ByteBuffer data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static org.tensorflow.proto.util.DebugEvent parseFrom(
      com.google.protobuf.ByteString data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static org.tensorflow.proto.util.DebugEvent parseFrom(
      com.google.protobuf.ByteString data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static org.tensorflow.proto.util.DebugEvent parseFrom(byte[] data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static org.tensorflow.proto.util.DebugEvent parseFrom(
      byte[] data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static org.tensorflow.proto.util.DebugEvent parseFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static org.tensorflow.proto.util.DebugEvent 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 org.tensorflow.proto.util.DebugEvent parseDelimitedFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseDelimitedWithIOException(PARSER, input);
  }
  public static org.tensorflow.proto.util.DebugEvent 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 org.tensorflow.proto.util.DebugEvent parseFrom(
      com.google.protobuf.CodedInputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static org.tensorflow.proto.util.DebugEvent 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(org.tensorflow.proto.util.DebugEvent 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;
  }
  /**
   * <pre>
   * An Event related to the debugging of a TensorFlow program.
   * </pre>
   *
   * Protobuf type {@code tensorflow.DebugEvent}
   */
  public static final class Builder extends
      com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
      // @@protoc_insertion_point(builder_implements:tensorflow.DebugEvent)
      org.tensorflow.proto.util.DebugEventOrBuilder {
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return org.tensorflow.proto.util.DebugEventProtos.internal_static_tensorflow_DebugEvent_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return org.tensorflow.proto.util.DebugEventProtos.internal_static_tensorflow_DebugEvent_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              org.tensorflow.proto.util.DebugEvent.class, org.tensorflow.proto.util.DebugEvent.Builder.class);
    }

    // Construct using org.tensorflow.proto.util.DebugEvent.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();
      wallTime_ = 0D;

      step_ = 0L;

      whatCase_ = 0;
      what_ = null;
      return this;
    }

    @java.lang.Override
    public com.google.protobuf.Descriptors.Descriptor
        getDescriptorForType() {
      return org.tensorflow.proto.util.DebugEventProtos.internal_static_tensorflow_DebugEvent_descriptor;
    }

    @java.lang.Override
    public org.tensorflow.proto.util.DebugEvent getDefaultInstanceForType() {
      return org.tensorflow.proto.util.DebugEvent.getDefaultInstance();
    }

    @java.lang.Override
    public org.tensorflow.proto.util.DebugEvent build() {
      org.tensorflow.proto.util.DebugEvent result = buildPartial();
      if (!result.isInitialized()) {
        throw newUninitializedMessageException(result);
      }
      return result;
    }

    @java.lang.Override
    public org.tensorflow.proto.util.DebugEvent buildPartial() {
      org.tensorflow.proto.util.DebugEvent result = new org.tensorflow.proto.util.DebugEvent(this);
      result.wallTime_ = wallTime_;
      result.step_ = step_;
      if (whatCase_ == 3) {
        if (debugMetadataBuilder_ == null) {
          result.what_ = what_;
        } else {
          result.what_ = debugMetadataBuilder_.build();
        }
      }
      if (whatCase_ == 4) {
        if (sourceFileBuilder_ == null) {
          result.what_ = what_;
        } else {
          result.what_ = sourceFileBuilder_.build();
        }
      }
      if (whatCase_ == 6) {
        if (stackFrameWithIdBuilder_ == null) {
          result.what_ = what_;
        } else {
          result.what_ = stackFrameWithIdBuilder_.build();
        }
      }
      if (whatCase_ == 7) {
        if (graphOpCreationBuilder_ == null) {
          result.what_ = what_;
        } else {
          result.what_ = graphOpCreationBuilder_.build();
        }
      }
      if (whatCase_ == 8) {
        if (debuggedGraphBuilder_ == null) {
          result.what_ = what_;
        } else {
          result.what_ = debuggedGraphBuilder_.build();
        }
      }
      if (whatCase_ == 9) {
        if (executionBuilder_ == null) {
          result.what_ = what_;
        } else {
          result.what_ = executionBuilder_.build();
        }
      }
      if (whatCase_ == 10) {
        if (graphExecutionTraceBuilder_ == null) {
          result.what_ = what_;
        } else {
          result.what_ = graphExecutionTraceBuilder_.build();
        }
      }
      if (whatCase_ == 11) {
        result.what_ = what_;
      }
      if (whatCase_ == 12) {
        if (debuggedDeviceBuilder_ == null) {
          result.what_ = what_;
        } else {
          result.what_ = debuggedDeviceBuilder_.build();
        }
      }
      result.whatCase_ = whatCase_;
      onBuilt();
      return result;
    }

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

    public Builder mergeFrom(org.tensorflow.proto.util.DebugEvent other) {
      if (other == org.tensorflow.proto.util.DebugEvent.getDefaultInstance()) return this;
      if (other.getWallTime() != 0D) {
        setWallTime(other.getWallTime());
      }
      if (other.getStep() != 0L) {
        setStep(other.getStep());
      }
      switch (other.getWhatCase()) {
        case DEBUG_METADATA: {
          mergeDebugMetadata(other.getDebugMetadata());
          break;
        }
        case SOURCE_FILE: {
          mergeSourceFile(other.getSourceFile());
          break;
        }
        case STACK_FRAME_WITH_ID: {
          mergeStackFrameWithId(other.getStackFrameWithId());
          break;
        }
        case GRAPH_OP_CREATION: {
          mergeGraphOpCreation(other.getGraphOpCreation());
          break;
        }
        case DEBUGGED_GRAPH: {
          mergeDebuggedGraph(other.getDebuggedGraph());
          break;
        }
        case EXECUTION: {
          mergeExecution(other.getExecution());
          break;
        }
        case GRAPH_EXECUTION_TRACE: {
          mergeGraphExecutionTrace(other.getGraphExecutionTrace());
          break;
        }
        case GRAPH_ID: {
          whatCase_ = 11;
          what_ = other.what_;
          onChanged();
          break;
        }
        case DEBUGGED_DEVICE: {
          mergeDebuggedDevice(other.getDebuggedDevice());
          break;
        }
        case WHAT_NOT_SET: {
          break;
        }
      }
      this.mergeUnknownFields(other.unknownFields);
      onChanged();
      return this;
    }

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

    @java.lang.Override
    public Builder mergeFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      org.tensorflow.proto.util.DebugEvent parsedMessage = null;
      try {
        parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        parsedMessage = (org.tensorflow.proto.util.DebugEvent) e.getUnfinishedMessage();
        throw e.unwrapIOException();
      } finally {
        if (parsedMessage != null) {
          mergeFrom(parsedMessage);
        }
      }
      return this;
    }
    private int whatCase_ = 0;
    private java.lang.Object what_;
    public WhatCase
        getWhatCase() {
      return WhatCase.forNumber(
          whatCase_);
    }

    public Builder clearWhat() {
      whatCase_ = 0;
      what_ = null;
      onChanged();
      return this;
    }


    private double wallTime_ ;
    /**
     * <pre>
     * Timestamp in seconds (with microsecond precision).
     * </pre>
     *
     * <code>double wall_time = 1;</code>
     */
    public double getWallTime() {
      return wallTime_;
    }
    /**
     * <pre>
     * Timestamp in seconds (with microsecond precision).
     * </pre>
     *
     * <code>double wall_time = 1;</code>
     */
    public Builder setWallTime(double value) {
      
      wallTime_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     * Timestamp in seconds (with microsecond precision).
     * </pre>
     *
     * <code>double wall_time = 1;</code>
     */
    public Builder clearWallTime() {
      
      wallTime_ = 0D;
      onChanged();
      return this;
    }

    private long step_ ;
    /**
     * <pre>
     * Step of training (if available).
     * </pre>
     *
     * <code>int64 step = 2;</code>
     */
    public long getStep() {
      return step_;
    }
    /**
     * <pre>
     * Step of training (if available).
     * </pre>
     *
     * <code>int64 step = 2;</code>
     */
    public Builder setStep(long value) {
      
      step_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     * Step of training (if available).
     * </pre>
     *
     * <code>int64 step = 2;</code>
     */
    public Builder clearStep() {
      
      step_ = 0L;
      onChanged();
      return this;
    }

    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.DebugMetadata, org.tensorflow.proto.util.DebugMetadata.Builder, org.tensorflow.proto.util.DebugMetadataOrBuilder> debugMetadataBuilder_;
    /**
     * <pre>
     * Metadata related to this debugging data.
     * </pre>
     *
     * <code>.tensorflow.DebugMetadata debug_metadata = 3;</code>
     */
    public boolean hasDebugMetadata() {
      return whatCase_ == 3;
    }
    /**
     * <pre>
     * Metadata related to this debugging data.
     * </pre>
     *
     * <code>.tensorflow.DebugMetadata debug_metadata = 3;</code>
     */
    public org.tensorflow.proto.util.DebugMetadata getDebugMetadata() {
      if (debugMetadataBuilder_ == null) {
        if (whatCase_ == 3) {
          return (org.tensorflow.proto.util.DebugMetadata) what_;
        }
        return org.tensorflow.proto.util.DebugMetadata.getDefaultInstance();
      } else {
        if (whatCase_ == 3) {
          return debugMetadataBuilder_.getMessage();
        }
        return org.tensorflow.proto.util.DebugMetadata.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * Metadata related to this debugging data.
     * </pre>
     *
     * <code>.tensorflow.DebugMetadata debug_metadata = 3;</code>
     */
    public Builder setDebugMetadata(org.tensorflow.proto.util.DebugMetadata value) {
      if (debugMetadataBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        what_ = value;
        onChanged();
      } else {
        debugMetadataBuilder_.setMessage(value);
      }
      whatCase_ = 3;
      return this;
    }
    /**
     * <pre>
     * Metadata related to this debugging data.
     * </pre>
     *
     * <code>.tensorflow.DebugMetadata debug_metadata = 3;</code>
     */
    public Builder setDebugMetadata(
        org.tensorflow.proto.util.DebugMetadata.Builder builderForValue) {
      if (debugMetadataBuilder_ == null) {
        what_ = builderForValue.build();
        onChanged();
      } else {
        debugMetadataBuilder_.setMessage(builderForValue.build());
      }
      whatCase_ = 3;
      return this;
    }
    /**
     * <pre>
     * Metadata related to this debugging data.
     * </pre>
     *
     * <code>.tensorflow.DebugMetadata debug_metadata = 3;</code>
     */
    public Builder mergeDebugMetadata(org.tensorflow.proto.util.DebugMetadata value) {
      if (debugMetadataBuilder_ == null) {
        if (whatCase_ == 3 &&
            what_ != org.tensorflow.proto.util.DebugMetadata.getDefaultInstance()) {
          what_ = org.tensorflow.proto.util.DebugMetadata.newBuilder((org.tensorflow.proto.util.DebugMetadata) what_)
              .mergeFrom(value).buildPartial();
        } else {
          what_ = value;
        }
        onChanged();
      } else {
        if (whatCase_ == 3) {
          debugMetadataBuilder_.mergeFrom(value);
        }
        debugMetadataBuilder_.setMessage(value);
      }
      whatCase_ = 3;
      return this;
    }
    /**
     * <pre>
     * Metadata related to this debugging data.
     * </pre>
     *
     * <code>.tensorflow.DebugMetadata debug_metadata = 3;</code>
     */
    public Builder clearDebugMetadata() {
      if (debugMetadataBuilder_ == null) {
        if (whatCase_ == 3) {
          whatCase_ = 0;
          what_ = null;
          onChanged();
        }
      } else {
        if (whatCase_ == 3) {
          whatCase_ = 0;
          what_ = null;
        }
        debugMetadataBuilder_.clear();
      }
      return this;
    }
    /**
     * <pre>
     * Metadata related to this debugging data.
     * </pre>
     *
     * <code>.tensorflow.DebugMetadata debug_metadata = 3;</code>
     */
    public org.tensorflow.proto.util.DebugMetadata.Builder getDebugMetadataBuilder() {
      return getDebugMetadataFieldBuilder().getBuilder();
    }
    /**
     * <pre>
     * Metadata related to this debugging data.
     * </pre>
     *
     * <code>.tensorflow.DebugMetadata debug_metadata = 3;</code>
     */
    public org.tensorflow.proto.util.DebugMetadataOrBuilder getDebugMetadataOrBuilder() {
      if ((whatCase_ == 3) && (debugMetadataBuilder_ != null)) {
        return debugMetadataBuilder_.getMessageOrBuilder();
      } else {
        if (whatCase_ == 3) {
          return (org.tensorflow.proto.util.DebugMetadata) what_;
        }
        return org.tensorflow.proto.util.DebugMetadata.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * Metadata related to this debugging data.
     * </pre>
     *
     * <code>.tensorflow.DebugMetadata debug_metadata = 3;</code>
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.DebugMetadata, org.tensorflow.proto.util.DebugMetadata.Builder, org.tensorflow.proto.util.DebugMetadataOrBuilder> 
        getDebugMetadataFieldBuilder() {
      if (debugMetadataBuilder_ == null) {
        if (!(whatCase_ == 3)) {
          what_ = org.tensorflow.proto.util.DebugMetadata.getDefaultInstance();
        }
        debugMetadataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            org.tensorflow.proto.util.DebugMetadata, org.tensorflow.proto.util.DebugMetadata.Builder, org.tensorflow.proto.util.DebugMetadataOrBuilder>(
                (org.tensorflow.proto.util.DebugMetadata) what_,
                getParentForChildren(),
                isClean());
        what_ = null;
      }
      whatCase_ = 3;
      onChanged();;
      return debugMetadataBuilder_;
    }

    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.SourceFile, org.tensorflow.proto.util.SourceFile.Builder, org.tensorflow.proto.util.SourceFileOrBuilder> sourceFileBuilder_;
    /**
     * <pre>
     * The content of a source file.
     * </pre>
     *
     * <code>.tensorflow.SourceFile source_file = 4;</code>
     */
    public boolean hasSourceFile() {
      return whatCase_ == 4;
    }
    /**
     * <pre>
     * The content of a source file.
     * </pre>
     *
     * <code>.tensorflow.SourceFile source_file = 4;</code>
     */
    public org.tensorflow.proto.util.SourceFile getSourceFile() {
      if (sourceFileBuilder_ == null) {
        if (whatCase_ == 4) {
          return (org.tensorflow.proto.util.SourceFile) what_;
        }
        return org.tensorflow.proto.util.SourceFile.getDefaultInstance();
      } else {
        if (whatCase_ == 4) {
          return sourceFileBuilder_.getMessage();
        }
        return org.tensorflow.proto.util.SourceFile.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * The content of a source file.
     * </pre>
     *
     * <code>.tensorflow.SourceFile source_file = 4;</code>
     */
    public Builder setSourceFile(org.tensorflow.proto.util.SourceFile value) {
      if (sourceFileBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        what_ = value;
        onChanged();
      } else {
        sourceFileBuilder_.setMessage(value);
      }
      whatCase_ = 4;
      return this;
    }
    /**
     * <pre>
     * The content of a source file.
     * </pre>
     *
     * <code>.tensorflow.SourceFile source_file = 4;</code>
     */
    public Builder setSourceFile(
        org.tensorflow.proto.util.SourceFile.Builder builderForValue) {
      if (sourceFileBuilder_ == null) {
        what_ = builderForValue.build();
        onChanged();
      } else {
        sourceFileBuilder_.setMessage(builderForValue.build());
      }
      whatCase_ = 4;
      return this;
    }
    /**
     * <pre>
     * The content of a source file.
     * </pre>
     *
     * <code>.tensorflow.SourceFile source_file = 4;</code>
     */
    public Builder mergeSourceFile(org.tensorflow.proto.util.SourceFile value) {
      if (sourceFileBuilder_ == null) {
        if (whatCase_ == 4 &&
            what_ != org.tensorflow.proto.util.SourceFile.getDefaultInstance()) {
          what_ = org.tensorflow.proto.util.SourceFile.newBuilder((org.tensorflow.proto.util.SourceFile) what_)
              .mergeFrom(value).buildPartial();
        } else {
          what_ = value;
        }
        onChanged();
      } else {
        if (whatCase_ == 4) {
          sourceFileBuilder_.mergeFrom(value);
        }
        sourceFileBuilder_.setMessage(value);
      }
      whatCase_ = 4;
      return this;
    }
    /**
     * <pre>
     * The content of a source file.
     * </pre>
     *
     * <code>.tensorflow.SourceFile source_file = 4;</code>
     */
    public Builder clearSourceFile() {
      if (sourceFileBuilder_ == null) {
        if (whatCase_ == 4) {
          whatCase_ = 0;
          what_ = null;
          onChanged();
        }
      } else {
        if (whatCase_ == 4) {
          whatCase_ = 0;
          what_ = null;
        }
        sourceFileBuilder_.clear();
      }
      return this;
    }
    /**
     * <pre>
     * The content of a source file.
     * </pre>
     *
     * <code>.tensorflow.SourceFile source_file = 4;</code>
     */
    public org.tensorflow.proto.util.SourceFile.Builder getSourceFileBuilder() {
      return getSourceFileFieldBuilder().getBuilder();
    }
    /**
     * <pre>
     * The content of a source file.
     * </pre>
     *
     * <code>.tensorflow.SourceFile source_file = 4;</code>
     */
    public org.tensorflow.proto.util.SourceFileOrBuilder getSourceFileOrBuilder() {
      if ((whatCase_ == 4) && (sourceFileBuilder_ != null)) {
        return sourceFileBuilder_.getMessageOrBuilder();
      } else {
        if (whatCase_ == 4) {
          return (org.tensorflow.proto.util.SourceFile) what_;
        }
        return org.tensorflow.proto.util.SourceFile.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * The content of a source file.
     * </pre>
     *
     * <code>.tensorflow.SourceFile source_file = 4;</code>
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.SourceFile, org.tensorflow.proto.util.SourceFile.Builder, org.tensorflow.proto.util.SourceFileOrBuilder> 
        getSourceFileFieldBuilder() {
      if (sourceFileBuilder_ == null) {
        if (!(whatCase_ == 4)) {
          what_ = org.tensorflow.proto.util.SourceFile.getDefaultInstance();
        }
        sourceFileBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            org.tensorflow.proto.util.SourceFile, org.tensorflow.proto.util.SourceFile.Builder, org.tensorflow.proto.util.SourceFileOrBuilder>(
                (org.tensorflow.proto.util.SourceFile) what_,
                getParentForChildren(),
                isClean());
        what_ = null;
      }
      whatCase_ = 4;
      onChanged();;
      return sourceFileBuilder_;
    }

    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.StackFrameWithId, org.tensorflow.proto.util.StackFrameWithId.Builder, org.tensorflow.proto.util.StackFrameWithIdOrBuilder> stackFrameWithIdBuilder_;
    /**
     * <pre>
     * A stack frame (filename, line number and column number, function name and
     * code string) with ID.
     * </pre>
     *
     * <code>.tensorflow.StackFrameWithId stack_frame_with_id = 6;</code>
     */
    public boolean hasStackFrameWithId() {
      return whatCase_ == 6;
    }
    /**
     * <pre>
     * A stack frame (filename, line number and column number, function name and
     * code string) with ID.
     * </pre>
     *
     * <code>.tensorflow.StackFrameWithId stack_frame_with_id = 6;</code>
     */
    public org.tensorflow.proto.util.StackFrameWithId getStackFrameWithId() {
      if (stackFrameWithIdBuilder_ == null) {
        if (whatCase_ == 6) {
          return (org.tensorflow.proto.util.StackFrameWithId) what_;
        }
        return org.tensorflow.proto.util.StackFrameWithId.getDefaultInstance();
      } else {
        if (whatCase_ == 6) {
          return stackFrameWithIdBuilder_.getMessage();
        }
        return org.tensorflow.proto.util.StackFrameWithId.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * A stack frame (filename, line number and column number, function name and
     * code string) with ID.
     * </pre>
     *
     * <code>.tensorflow.StackFrameWithId stack_frame_with_id = 6;</code>
     */
    public Builder setStackFrameWithId(org.tensorflow.proto.util.StackFrameWithId value) {
      if (stackFrameWithIdBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        what_ = value;
        onChanged();
      } else {
        stackFrameWithIdBuilder_.setMessage(value);
      }
      whatCase_ = 6;
      return this;
    }
    /**
     * <pre>
     * A stack frame (filename, line number and column number, function name and
     * code string) with ID.
     * </pre>
     *
     * <code>.tensorflow.StackFrameWithId stack_frame_with_id = 6;</code>
     */
    public Builder setStackFrameWithId(
        org.tensorflow.proto.util.StackFrameWithId.Builder builderForValue) {
      if (stackFrameWithIdBuilder_ == null) {
        what_ = builderForValue.build();
        onChanged();
      } else {
        stackFrameWithIdBuilder_.setMessage(builderForValue.build());
      }
      whatCase_ = 6;
      return this;
    }
    /**
     * <pre>
     * A stack frame (filename, line number and column number, function name and
     * code string) with ID.
     * </pre>
     *
     * <code>.tensorflow.StackFrameWithId stack_frame_with_id = 6;</code>
     */
    public Builder mergeStackFrameWithId(org.tensorflow.proto.util.StackFrameWithId value) {
      if (stackFrameWithIdBuilder_ == null) {
        if (whatCase_ == 6 &&
            what_ != org.tensorflow.proto.util.StackFrameWithId.getDefaultInstance()) {
          what_ = org.tensorflow.proto.util.StackFrameWithId.newBuilder((org.tensorflow.proto.util.StackFrameWithId) what_)
              .mergeFrom(value).buildPartial();
        } else {
          what_ = value;
        }
        onChanged();
      } else {
        if (whatCase_ == 6) {
          stackFrameWithIdBuilder_.mergeFrom(value);
        }
        stackFrameWithIdBuilder_.setMessage(value);
      }
      whatCase_ = 6;
      return this;
    }
    /**
     * <pre>
     * A stack frame (filename, line number and column number, function name and
     * code string) with ID.
     * </pre>
     *
     * <code>.tensorflow.StackFrameWithId stack_frame_with_id = 6;</code>
     */
    public Builder clearStackFrameWithId() {
      if (stackFrameWithIdBuilder_ == null) {
        if (whatCase_ == 6) {
          whatCase_ = 0;
          what_ = null;
          onChanged();
        }
      } else {
        if (whatCase_ == 6) {
          whatCase_ = 0;
          what_ = null;
        }
        stackFrameWithIdBuilder_.clear();
      }
      return this;
    }
    /**
     * <pre>
     * A stack frame (filename, line number and column number, function name and
     * code string) with ID.
     * </pre>
     *
     * <code>.tensorflow.StackFrameWithId stack_frame_with_id = 6;</code>
     */
    public org.tensorflow.proto.util.StackFrameWithId.Builder getStackFrameWithIdBuilder() {
      return getStackFrameWithIdFieldBuilder().getBuilder();
    }
    /**
     * <pre>
     * A stack frame (filename, line number and column number, function name and
     * code string) with ID.
     * </pre>
     *
     * <code>.tensorflow.StackFrameWithId stack_frame_with_id = 6;</code>
     */
    public org.tensorflow.proto.util.StackFrameWithIdOrBuilder getStackFrameWithIdOrBuilder() {
      if ((whatCase_ == 6) && (stackFrameWithIdBuilder_ != null)) {
        return stackFrameWithIdBuilder_.getMessageOrBuilder();
      } else {
        if (whatCase_ == 6) {
          return (org.tensorflow.proto.util.StackFrameWithId) what_;
        }
        return org.tensorflow.proto.util.StackFrameWithId.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * A stack frame (filename, line number and column number, function name and
     * code string) with ID.
     * </pre>
     *
     * <code>.tensorflow.StackFrameWithId stack_frame_with_id = 6;</code>
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.StackFrameWithId, org.tensorflow.proto.util.StackFrameWithId.Builder, org.tensorflow.proto.util.StackFrameWithIdOrBuilder> 
        getStackFrameWithIdFieldBuilder() {
      if (stackFrameWithIdBuilder_ == null) {
        if (!(whatCase_ == 6)) {
          what_ = org.tensorflow.proto.util.StackFrameWithId.getDefaultInstance();
        }
        stackFrameWithIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            org.tensorflow.proto.util.StackFrameWithId, org.tensorflow.proto.util.StackFrameWithId.Builder, org.tensorflow.proto.util.StackFrameWithIdOrBuilder>(
                (org.tensorflow.proto.util.StackFrameWithId) what_,
                getParentForChildren(),
                isClean());
        what_ = null;
      }
      whatCase_ = 6;
      onChanged();;
      return stackFrameWithIdBuilder_;
    }

    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.GraphOpCreation, org.tensorflow.proto.util.GraphOpCreation.Builder, org.tensorflow.proto.util.GraphOpCreationOrBuilder> graphOpCreationBuilder_;
    /**
     * <pre>
     * The creation of an op within a graph (e.g., a FuncGraph compiled from
     * a Python function).
     * </pre>
     *
     * <code>.tensorflow.GraphOpCreation graph_op_creation = 7;</code>
     */
    public boolean hasGraphOpCreation() {
      return whatCase_ == 7;
    }
    /**
     * <pre>
     * The creation of an op within a graph (e.g., a FuncGraph compiled from
     * a Python function).
     * </pre>
     *
     * <code>.tensorflow.GraphOpCreation graph_op_creation = 7;</code>
     */
    public org.tensorflow.proto.util.GraphOpCreation getGraphOpCreation() {
      if (graphOpCreationBuilder_ == null) {
        if (whatCase_ == 7) {
          return (org.tensorflow.proto.util.GraphOpCreation) what_;
        }
        return org.tensorflow.proto.util.GraphOpCreation.getDefaultInstance();
      } else {
        if (whatCase_ == 7) {
          return graphOpCreationBuilder_.getMessage();
        }
        return org.tensorflow.proto.util.GraphOpCreation.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * The creation of an op within a graph (e.g., a FuncGraph compiled from
     * a Python function).
     * </pre>
     *
     * <code>.tensorflow.GraphOpCreation graph_op_creation = 7;</code>
     */
    public Builder setGraphOpCreation(org.tensorflow.proto.util.GraphOpCreation value) {
      if (graphOpCreationBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        what_ = value;
        onChanged();
      } else {
        graphOpCreationBuilder_.setMessage(value);
      }
      whatCase_ = 7;
      return this;
    }
    /**
     * <pre>
     * The creation of an op within a graph (e.g., a FuncGraph compiled from
     * a Python function).
     * </pre>
     *
     * <code>.tensorflow.GraphOpCreation graph_op_creation = 7;</code>
     */
    public Builder setGraphOpCreation(
        org.tensorflow.proto.util.GraphOpCreation.Builder builderForValue) {
      if (graphOpCreationBuilder_ == null) {
        what_ = builderForValue.build();
        onChanged();
      } else {
        graphOpCreationBuilder_.setMessage(builderForValue.build());
      }
      whatCase_ = 7;
      return this;
    }
    /**
     * <pre>
     * The creation of an op within a graph (e.g., a FuncGraph compiled from
     * a Python function).
     * </pre>
     *
     * <code>.tensorflow.GraphOpCreation graph_op_creation = 7;</code>
     */
    public Builder mergeGraphOpCreation(org.tensorflow.proto.util.GraphOpCreation value) {
      if (graphOpCreationBuilder_ == null) {
        if (whatCase_ == 7 &&
            what_ != org.tensorflow.proto.util.GraphOpCreation.getDefaultInstance()) {
          what_ = org.tensorflow.proto.util.GraphOpCreation.newBuilder((org.tensorflow.proto.util.GraphOpCreation) what_)
              .mergeFrom(value).buildPartial();
        } else {
          what_ = value;
        }
        onChanged();
      } else {
        if (whatCase_ == 7) {
          graphOpCreationBuilder_.mergeFrom(value);
        }
        graphOpCreationBuilder_.setMessage(value);
      }
      whatCase_ = 7;
      return this;
    }
    /**
     * <pre>
     * The creation of an op within a graph (e.g., a FuncGraph compiled from
     * a Python function).
     * </pre>
     *
     * <code>.tensorflow.GraphOpCreation graph_op_creation = 7;</code>
     */
    public Builder clearGraphOpCreation() {
      if (graphOpCreationBuilder_ == null) {
        if (whatCase_ == 7) {
          whatCase_ = 0;
          what_ = null;
          onChanged();
        }
      } else {
        if (whatCase_ == 7) {
          whatCase_ = 0;
          what_ = null;
        }
        graphOpCreationBuilder_.clear();
      }
      return this;
    }
    /**
     * <pre>
     * The creation of an op within a graph (e.g., a FuncGraph compiled from
     * a Python function).
     * </pre>
     *
     * <code>.tensorflow.GraphOpCreation graph_op_creation = 7;</code>
     */
    public org.tensorflow.proto.util.GraphOpCreation.Builder getGraphOpCreationBuilder() {
      return getGraphOpCreationFieldBuilder().getBuilder();
    }
    /**
     * <pre>
     * The creation of an op within a graph (e.g., a FuncGraph compiled from
     * a Python function).
     * </pre>
     *
     * <code>.tensorflow.GraphOpCreation graph_op_creation = 7;</code>
     */
    public org.tensorflow.proto.util.GraphOpCreationOrBuilder getGraphOpCreationOrBuilder() {
      if ((whatCase_ == 7) && (graphOpCreationBuilder_ != null)) {
        return graphOpCreationBuilder_.getMessageOrBuilder();
      } else {
        if (whatCase_ == 7) {
          return (org.tensorflow.proto.util.GraphOpCreation) what_;
        }
        return org.tensorflow.proto.util.GraphOpCreation.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * The creation of an op within a graph (e.g., a FuncGraph compiled from
     * a Python function).
     * </pre>
     *
     * <code>.tensorflow.GraphOpCreation graph_op_creation = 7;</code>
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.GraphOpCreation, org.tensorflow.proto.util.GraphOpCreation.Builder, org.tensorflow.proto.util.GraphOpCreationOrBuilder> 
        getGraphOpCreationFieldBuilder() {
      if (graphOpCreationBuilder_ == null) {
        if (!(whatCase_ == 7)) {
          what_ = org.tensorflow.proto.util.GraphOpCreation.getDefaultInstance();
        }
        graphOpCreationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            org.tensorflow.proto.util.GraphOpCreation, org.tensorflow.proto.util.GraphOpCreation.Builder, org.tensorflow.proto.util.GraphOpCreationOrBuilder>(
                (org.tensorflow.proto.util.GraphOpCreation) what_,
                getParentForChildren(),
                isClean());
        what_ = null;
      }
      whatCase_ = 7;
      onChanged();;
      return graphOpCreationBuilder_;
    }

    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.DebuggedGraph, org.tensorflow.proto.util.DebuggedGraph.Builder, org.tensorflow.proto.util.DebuggedGraphOrBuilder> debuggedGraphBuilder_;
    /**
     * <pre>
     * Information about a debugged graph.
     * </pre>
     *
     * <code>.tensorflow.DebuggedGraph debugged_graph = 8;</code>
     */
    public boolean hasDebuggedGraph() {
      return whatCase_ == 8;
    }
    /**
     * <pre>
     * Information about a debugged graph.
     * </pre>
     *
     * <code>.tensorflow.DebuggedGraph debugged_graph = 8;</code>
     */
    public org.tensorflow.proto.util.DebuggedGraph getDebuggedGraph() {
      if (debuggedGraphBuilder_ == null) {
        if (whatCase_ == 8) {
          return (org.tensorflow.proto.util.DebuggedGraph) what_;
        }
        return org.tensorflow.proto.util.DebuggedGraph.getDefaultInstance();
      } else {
        if (whatCase_ == 8) {
          return debuggedGraphBuilder_.getMessage();
        }
        return org.tensorflow.proto.util.DebuggedGraph.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * Information about a debugged graph.
     * </pre>
     *
     * <code>.tensorflow.DebuggedGraph debugged_graph = 8;</code>
     */
    public Builder setDebuggedGraph(org.tensorflow.proto.util.DebuggedGraph value) {
      if (debuggedGraphBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        what_ = value;
        onChanged();
      } else {
        debuggedGraphBuilder_.setMessage(value);
      }
      whatCase_ = 8;
      return this;
    }
    /**
     * <pre>
     * Information about a debugged graph.
     * </pre>
     *
     * <code>.tensorflow.DebuggedGraph debugged_graph = 8;</code>
     */
    public Builder setDebuggedGraph(
        org.tensorflow.proto.util.DebuggedGraph.Builder builderForValue) {
      if (debuggedGraphBuilder_ == null) {
        what_ = builderForValue.build();
        onChanged();
      } else {
        debuggedGraphBuilder_.setMessage(builderForValue.build());
      }
      whatCase_ = 8;
      return this;
    }
    /**
     * <pre>
     * Information about a debugged graph.
     * </pre>
     *
     * <code>.tensorflow.DebuggedGraph debugged_graph = 8;</code>
     */
    public Builder mergeDebuggedGraph(org.tensorflow.proto.util.DebuggedGraph value) {
      if (debuggedGraphBuilder_ == null) {
        if (whatCase_ == 8 &&
            what_ != org.tensorflow.proto.util.DebuggedGraph.getDefaultInstance()) {
          what_ = org.tensorflow.proto.util.DebuggedGraph.newBuilder((org.tensorflow.proto.util.DebuggedGraph) what_)
              .mergeFrom(value).buildPartial();
        } else {
          what_ = value;
        }
        onChanged();
      } else {
        if (whatCase_ == 8) {
          debuggedGraphBuilder_.mergeFrom(value);
        }
        debuggedGraphBuilder_.setMessage(value);
      }
      whatCase_ = 8;
      return this;
    }
    /**
     * <pre>
     * Information about a debugged graph.
     * </pre>
     *
     * <code>.tensorflow.DebuggedGraph debugged_graph = 8;</code>
     */
    public Builder clearDebuggedGraph() {
      if (debuggedGraphBuilder_ == null) {
        if (whatCase_ == 8) {
          whatCase_ = 0;
          what_ = null;
          onChanged();
        }
      } else {
        if (whatCase_ == 8) {
          whatCase_ = 0;
          what_ = null;
        }
        debuggedGraphBuilder_.clear();
      }
      return this;
    }
    /**
     * <pre>
     * Information about a debugged graph.
     * </pre>
     *
     * <code>.tensorflow.DebuggedGraph debugged_graph = 8;</code>
     */
    public org.tensorflow.proto.util.DebuggedGraph.Builder getDebuggedGraphBuilder() {
      return getDebuggedGraphFieldBuilder().getBuilder();
    }
    /**
     * <pre>
     * Information about a debugged graph.
     * </pre>
     *
     * <code>.tensorflow.DebuggedGraph debugged_graph = 8;</code>
     */
    public org.tensorflow.proto.util.DebuggedGraphOrBuilder getDebuggedGraphOrBuilder() {
      if ((whatCase_ == 8) && (debuggedGraphBuilder_ != null)) {
        return debuggedGraphBuilder_.getMessageOrBuilder();
      } else {
        if (whatCase_ == 8) {
          return (org.tensorflow.proto.util.DebuggedGraph) what_;
        }
        return org.tensorflow.proto.util.DebuggedGraph.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * Information about a debugged graph.
     * </pre>
     *
     * <code>.tensorflow.DebuggedGraph debugged_graph = 8;</code>
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.DebuggedGraph, org.tensorflow.proto.util.DebuggedGraph.Builder, org.tensorflow.proto.util.DebuggedGraphOrBuilder> 
        getDebuggedGraphFieldBuilder() {
      if (debuggedGraphBuilder_ == null) {
        if (!(whatCase_ == 8)) {
          what_ = org.tensorflow.proto.util.DebuggedGraph.getDefaultInstance();
        }
        debuggedGraphBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            org.tensorflow.proto.util.DebuggedGraph, org.tensorflow.proto.util.DebuggedGraph.Builder, org.tensorflow.proto.util.DebuggedGraphOrBuilder>(
                (org.tensorflow.proto.util.DebuggedGraph) what_,
                getParentForChildren(),
                isClean());
        what_ = null;
      }
      whatCase_ = 8;
      onChanged();;
      return debuggedGraphBuilder_;
    }

    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.Execution, org.tensorflow.proto.util.Execution.Builder, org.tensorflow.proto.util.ExecutionOrBuilder> executionBuilder_;
    /**
     * <pre>
     * Execution of an op or a Graph (e.g., a tf.function).
     * </pre>
     *
     * <code>.tensorflow.Execution execution = 9;</code>
     */
    public boolean hasExecution() {
      return whatCase_ == 9;
    }
    /**
     * <pre>
     * Execution of an op or a Graph (e.g., a tf.function).
     * </pre>
     *
     * <code>.tensorflow.Execution execution = 9;</code>
     */
    public org.tensorflow.proto.util.Execution getExecution() {
      if (executionBuilder_ == null) {
        if (whatCase_ == 9) {
          return (org.tensorflow.proto.util.Execution) what_;
        }
        return org.tensorflow.proto.util.Execution.getDefaultInstance();
      } else {
        if (whatCase_ == 9) {
          return executionBuilder_.getMessage();
        }
        return org.tensorflow.proto.util.Execution.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * Execution of an op or a Graph (e.g., a tf.function).
     * </pre>
     *
     * <code>.tensorflow.Execution execution = 9;</code>
     */
    public Builder setExecution(org.tensorflow.proto.util.Execution value) {
      if (executionBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        what_ = value;
        onChanged();
      } else {
        executionBuilder_.setMessage(value);
      }
      whatCase_ = 9;
      return this;
    }
    /**
     * <pre>
     * Execution of an op or a Graph (e.g., a tf.function).
     * </pre>
     *
     * <code>.tensorflow.Execution execution = 9;</code>
     */
    public Builder setExecution(
        org.tensorflow.proto.util.Execution.Builder builderForValue) {
      if (executionBuilder_ == null) {
        what_ = builderForValue.build();
        onChanged();
      } else {
        executionBuilder_.setMessage(builderForValue.build());
      }
      whatCase_ = 9;
      return this;
    }
    /**
     * <pre>
     * Execution of an op or a Graph (e.g., a tf.function).
     * </pre>
     *
     * <code>.tensorflow.Execution execution = 9;</code>
     */
    public Builder mergeExecution(org.tensorflow.proto.util.Execution value) {
      if (executionBuilder_ == null) {
        if (whatCase_ == 9 &&
            what_ != org.tensorflow.proto.util.Execution.getDefaultInstance()) {
          what_ = org.tensorflow.proto.util.Execution.newBuilder((org.tensorflow.proto.util.Execution) what_)
              .mergeFrom(value).buildPartial();
        } else {
          what_ = value;
        }
        onChanged();
      } else {
        if (whatCase_ == 9) {
          executionBuilder_.mergeFrom(value);
        }
        executionBuilder_.setMessage(value);
      }
      whatCase_ = 9;
      return this;
    }
    /**
     * <pre>
     * Execution of an op or a Graph (e.g., a tf.function).
     * </pre>
     *
     * <code>.tensorflow.Execution execution = 9;</code>
     */
    public Builder clearExecution() {
      if (executionBuilder_ == null) {
        if (whatCase_ == 9) {
          whatCase_ = 0;
          what_ = null;
          onChanged();
        }
      } else {
        if (whatCase_ == 9) {
          whatCase_ = 0;
          what_ = null;
        }
        executionBuilder_.clear();
      }
      return this;
    }
    /**
     * <pre>
     * Execution of an op or a Graph (e.g., a tf.function).
     * </pre>
     *
     * <code>.tensorflow.Execution execution = 9;</code>
     */
    public org.tensorflow.proto.util.Execution.Builder getExecutionBuilder() {
      return getExecutionFieldBuilder().getBuilder();
    }
    /**
     * <pre>
     * Execution of an op or a Graph (e.g., a tf.function).
     * </pre>
     *
     * <code>.tensorflow.Execution execution = 9;</code>
     */
    public org.tensorflow.proto.util.ExecutionOrBuilder getExecutionOrBuilder() {
      if ((whatCase_ == 9) && (executionBuilder_ != null)) {
        return executionBuilder_.getMessageOrBuilder();
      } else {
        if (whatCase_ == 9) {
          return (org.tensorflow.proto.util.Execution) what_;
        }
        return org.tensorflow.proto.util.Execution.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * Execution of an op or a Graph (e.g., a tf.function).
     * </pre>
     *
     * <code>.tensorflow.Execution execution = 9;</code>
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.Execution, org.tensorflow.proto.util.Execution.Builder, org.tensorflow.proto.util.ExecutionOrBuilder> 
        getExecutionFieldBuilder() {
      if (executionBuilder_ == null) {
        if (!(whatCase_ == 9)) {
          what_ = org.tensorflow.proto.util.Execution.getDefaultInstance();
        }
        executionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            org.tensorflow.proto.util.Execution, org.tensorflow.proto.util.Execution.Builder, org.tensorflow.proto.util.ExecutionOrBuilder>(
                (org.tensorflow.proto.util.Execution) what_,
                getParentForChildren(),
                isClean());
        what_ = null;
      }
      whatCase_ = 9;
      onChanged();;
      return executionBuilder_;
    }

    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.GraphExecutionTrace, org.tensorflow.proto.util.GraphExecutionTrace.Builder, org.tensorflow.proto.util.GraphExecutionTraceOrBuilder> graphExecutionTraceBuilder_;
    /**
     * <pre>
     * A graph execution trace: Contains information about the intermediate
     * tensors computed during the graph execution.
     * </pre>
     *
     * <code>.tensorflow.GraphExecutionTrace graph_execution_trace = 10;</code>
     */
    public boolean hasGraphExecutionTrace() {
      return whatCase_ == 10;
    }
    /**
     * <pre>
     * A graph execution trace: Contains information about the intermediate
     * tensors computed during the graph execution.
     * </pre>
     *
     * <code>.tensorflow.GraphExecutionTrace graph_execution_trace = 10;</code>
     */
    public org.tensorflow.proto.util.GraphExecutionTrace getGraphExecutionTrace() {
      if (graphExecutionTraceBuilder_ == null) {
        if (whatCase_ == 10) {
          return (org.tensorflow.proto.util.GraphExecutionTrace) what_;
        }
        return org.tensorflow.proto.util.GraphExecutionTrace.getDefaultInstance();
      } else {
        if (whatCase_ == 10) {
          return graphExecutionTraceBuilder_.getMessage();
        }
        return org.tensorflow.proto.util.GraphExecutionTrace.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * A graph execution trace: Contains information about the intermediate
     * tensors computed during the graph execution.
     * </pre>
     *
     * <code>.tensorflow.GraphExecutionTrace graph_execution_trace = 10;</code>
     */
    public Builder setGraphExecutionTrace(org.tensorflow.proto.util.GraphExecutionTrace value) {
      if (graphExecutionTraceBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        what_ = value;
        onChanged();
      } else {
        graphExecutionTraceBuilder_.setMessage(value);
      }
      whatCase_ = 10;
      return this;
    }
    /**
     * <pre>
     * A graph execution trace: Contains information about the intermediate
     * tensors computed during the graph execution.
     * </pre>
     *
     * <code>.tensorflow.GraphExecutionTrace graph_execution_trace = 10;</code>
     */
    public Builder setGraphExecutionTrace(
        org.tensorflow.proto.util.GraphExecutionTrace.Builder builderForValue) {
      if (graphExecutionTraceBuilder_ == null) {
        what_ = builderForValue.build();
        onChanged();
      } else {
        graphExecutionTraceBuilder_.setMessage(builderForValue.build());
      }
      whatCase_ = 10;
      return this;
    }
    /**
     * <pre>
     * A graph execution trace: Contains information about the intermediate
     * tensors computed during the graph execution.
     * </pre>
     *
     * <code>.tensorflow.GraphExecutionTrace graph_execution_trace = 10;</code>
     */
    public Builder mergeGraphExecutionTrace(org.tensorflow.proto.util.GraphExecutionTrace value) {
      if (graphExecutionTraceBuilder_ == null) {
        if (whatCase_ == 10 &&
            what_ != org.tensorflow.proto.util.GraphExecutionTrace.getDefaultInstance()) {
          what_ = org.tensorflow.proto.util.GraphExecutionTrace.newBuilder((org.tensorflow.proto.util.GraphExecutionTrace) what_)
              .mergeFrom(value).buildPartial();
        } else {
          what_ = value;
        }
        onChanged();
      } else {
        if (whatCase_ == 10) {
          graphExecutionTraceBuilder_.mergeFrom(value);
        }
        graphExecutionTraceBuilder_.setMessage(value);
      }
      whatCase_ = 10;
      return this;
    }
    /**
     * <pre>
     * A graph execution trace: Contains information about the intermediate
     * tensors computed during the graph execution.
     * </pre>
     *
     * <code>.tensorflow.GraphExecutionTrace graph_execution_trace = 10;</code>
     */
    public Builder clearGraphExecutionTrace() {
      if (graphExecutionTraceBuilder_ == null) {
        if (whatCase_ == 10) {
          whatCase_ = 0;
          what_ = null;
          onChanged();
        }
      } else {
        if (whatCase_ == 10) {
          whatCase_ = 0;
          what_ = null;
        }
        graphExecutionTraceBuilder_.clear();
      }
      return this;
    }
    /**
     * <pre>
     * A graph execution trace: Contains information about the intermediate
     * tensors computed during the graph execution.
     * </pre>
     *
     * <code>.tensorflow.GraphExecutionTrace graph_execution_trace = 10;</code>
     */
    public org.tensorflow.proto.util.GraphExecutionTrace.Builder getGraphExecutionTraceBuilder() {
      return getGraphExecutionTraceFieldBuilder().getBuilder();
    }
    /**
     * <pre>
     * A graph execution trace: Contains information about the intermediate
     * tensors computed during the graph execution.
     * </pre>
     *
     * <code>.tensorflow.GraphExecutionTrace graph_execution_trace = 10;</code>
     */
    public org.tensorflow.proto.util.GraphExecutionTraceOrBuilder getGraphExecutionTraceOrBuilder() {
      if ((whatCase_ == 10) && (graphExecutionTraceBuilder_ != null)) {
        return graphExecutionTraceBuilder_.getMessageOrBuilder();
      } else {
        if (whatCase_ == 10) {
          return (org.tensorflow.proto.util.GraphExecutionTrace) what_;
        }
        return org.tensorflow.proto.util.GraphExecutionTrace.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * A graph execution trace: Contains information about the intermediate
     * tensors computed during the graph execution.
     * </pre>
     *
     * <code>.tensorflow.GraphExecutionTrace graph_execution_trace = 10;</code>
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.GraphExecutionTrace, org.tensorflow.proto.util.GraphExecutionTrace.Builder, org.tensorflow.proto.util.GraphExecutionTraceOrBuilder> 
        getGraphExecutionTraceFieldBuilder() {
      if (graphExecutionTraceBuilder_ == null) {
        if (!(whatCase_ == 10)) {
          what_ = org.tensorflow.proto.util.GraphExecutionTrace.getDefaultInstance();
        }
        graphExecutionTraceBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            org.tensorflow.proto.util.GraphExecutionTrace, org.tensorflow.proto.util.GraphExecutionTrace.Builder, org.tensorflow.proto.util.GraphExecutionTraceOrBuilder>(
                (org.tensorflow.proto.util.GraphExecutionTrace) what_,
                getParentForChildren(),
                isClean());
        what_ = null;
      }
      whatCase_ = 10;
      onChanged();;
      return graphExecutionTraceBuilder_;
    }

    /**
     * <pre>
     * The ID of the graph (i.e., FuncGraph) executed here: applicable only
     * to the execution of a FuncGraph.
     * </pre>
     *
     * <code>string graph_id = 11;</code>
     */
    public java.lang.String getGraphId() {
      java.lang.Object ref = "";
      if (whatCase_ == 11) {
        ref = what_;
      }
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (whatCase_ == 11) {
          what_ = s;
        }
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * <pre>
     * The ID of the graph (i.e., FuncGraph) executed here: applicable only
     * to the execution of a FuncGraph.
     * </pre>
     *
     * <code>string graph_id = 11;</code>
     */
    public com.google.protobuf.ByteString
        getGraphIdBytes() {
      java.lang.Object ref = "";
      if (whatCase_ == 11) {
        ref = what_;
      }
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        if (whatCase_ == 11) {
          what_ = b;
        }
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * <pre>
     * The ID of the graph (i.e., FuncGraph) executed here: applicable only
     * to the execution of a FuncGraph.
     * </pre>
     *
     * <code>string graph_id = 11;</code>
     */
    public Builder setGraphId(
        java.lang.String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  whatCase_ = 11;
      what_ = value;
      onChanged();
      return this;
    }
    /**
     * <pre>
     * The ID of the graph (i.e., FuncGraph) executed here: applicable only
     * to the execution of a FuncGraph.
     * </pre>
     *
     * <code>string graph_id = 11;</code>
     */
    public Builder clearGraphId() {
      if (whatCase_ == 11) {
        whatCase_ = 0;
        what_ = null;
        onChanged();
      }
      return this;
    }
    /**
     * <pre>
     * The ID of the graph (i.e., FuncGraph) executed here: applicable only
     * to the execution of a FuncGraph.
     * </pre>
     *
     * <code>string graph_id = 11;</code>
     */
    public Builder setGraphIdBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
      whatCase_ = 11;
      what_ = value;
      onChanged();
      return this;
    }

    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.DebuggedDevice, org.tensorflow.proto.util.DebuggedDevice.Builder, org.tensorflow.proto.util.DebuggedDeviceOrBuilder> debuggedDeviceBuilder_;
    /**
     * <pre>
     * A device on which debugger-instrumented ops and/or tensors reside.
     * </pre>
     *
     * <code>.tensorflow.DebuggedDevice debugged_device = 12;</code>
     */
    public boolean hasDebuggedDevice() {
      return whatCase_ == 12;
    }
    /**
     * <pre>
     * A device on which debugger-instrumented ops and/or tensors reside.
     * </pre>
     *
     * <code>.tensorflow.DebuggedDevice debugged_device = 12;</code>
     */
    public org.tensorflow.proto.util.DebuggedDevice getDebuggedDevice() {
      if (debuggedDeviceBuilder_ == null) {
        if (whatCase_ == 12) {
          return (org.tensorflow.proto.util.DebuggedDevice) what_;
        }
        return org.tensorflow.proto.util.DebuggedDevice.getDefaultInstance();
      } else {
        if (whatCase_ == 12) {
          return debuggedDeviceBuilder_.getMessage();
        }
        return org.tensorflow.proto.util.DebuggedDevice.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * A device on which debugger-instrumented ops and/or tensors reside.
     * </pre>
     *
     * <code>.tensorflow.DebuggedDevice debugged_device = 12;</code>
     */
    public Builder setDebuggedDevice(org.tensorflow.proto.util.DebuggedDevice value) {
      if (debuggedDeviceBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        what_ = value;
        onChanged();
      } else {
        debuggedDeviceBuilder_.setMessage(value);
      }
      whatCase_ = 12;
      return this;
    }
    /**
     * <pre>
     * A device on which debugger-instrumented ops and/or tensors reside.
     * </pre>
     *
     * <code>.tensorflow.DebuggedDevice debugged_device = 12;</code>
     */
    public Builder setDebuggedDevice(
        org.tensorflow.proto.util.DebuggedDevice.Builder builderForValue) {
      if (debuggedDeviceBuilder_ == null) {
        what_ = builderForValue.build();
        onChanged();
      } else {
        debuggedDeviceBuilder_.setMessage(builderForValue.build());
      }
      whatCase_ = 12;
      return this;
    }
    /**
     * <pre>
     * A device on which debugger-instrumented ops and/or tensors reside.
     * </pre>
     *
     * <code>.tensorflow.DebuggedDevice debugged_device = 12;</code>
     */
    public Builder mergeDebuggedDevice(org.tensorflow.proto.util.DebuggedDevice value) {
      if (debuggedDeviceBuilder_ == null) {
        if (whatCase_ == 12 &&
            what_ != org.tensorflow.proto.util.DebuggedDevice.getDefaultInstance()) {
          what_ = org.tensorflow.proto.util.DebuggedDevice.newBuilder((org.tensorflow.proto.util.DebuggedDevice) what_)
              .mergeFrom(value).buildPartial();
        } else {
          what_ = value;
        }
        onChanged();
      } else {
        if (whatCase_ == 12) {
          debuggedDeviceBuilder_.mergeFrom(value);
        }
        debuggedDeviceBuilder_.setMessage(value);
      }
      whatCase_ = 12;
      return this;
    }
    /**
     * <pre>
     * A device on which debugger-instrumented ops and/or tensors reside.
     * </pre>
     *
     * <code>.tensorflow.DebuggedDevice debugged_device = 12;</code>
     */
    public Builder clearDebuggedDevice() {
      if (debuggedDeviceBuilder_ == null) {
        if (whatCase_ == 12) {
          whatCase_ = 0;
          what_ = null;
          onChanged();
        }
      } else {
        if (whatCase_ == 12) {
          whatCase_ = 0;
          what_ = null;
        }
        debuggedDeviceBuilder_.clear();
      }
      return this;
    }
    /**
     * <pre>
     * A device on which debugger-instrumented ops and/or tensors reside.
     * </pre>
     *
     * <code>.tensorflow.DebuggedDevice debugged_device = 12;</code>
     */
    public org.tensorflow.proto.util.DebuggedDevice.Builder getDebuggedDeviceBuilder() {
      return getDebuggedDeviceFieldBuilder().getBuilder();
    }
    /**
     * <pre>
     * A device on which debugger-instrumented ops and/or tensors reside.
     * </pre>
     *
     * <code>.tensorflow.DebuggedDevice debugged_device = 12;</code>
     */
    public org.tensorflow.proto.util.DebuggedDeviceOrBuilder getDebuggedDeviceOrBuilder() {
      if ((whatCase_ == 12) && (debuggedDeviceBuilder_ != null)) {
        return debuggedDeviceBuilder_.getMessageOrBuilder();
      } else {
        if (whatCase_ == 12) {
          return (org.tensorflow.proto.util.DebuggedDevice) what_;
        }
        return org.tensorflow.proto.util.DebuggedDevice.getDefaultInstance();
      }
    }
    /**
     * <pre>
     * A device on which debugger-instrumented ops and/or tensors reside.
     * </pre>
     *
     * <code>.tensorflow.DebuggedDevice debugged_device = 12;</code>
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        org.tensorflow.proto.util.DebuggedDevice, org.tensorflow.proto.util.DebuggedDevice.Builder, org.tensorflow.proto.util.DebuggedDeviceOrBuilder> 
        getDebuggedDeviceFieldBuilder() {
      if (debuggedDeviceBuilder_ == null) {
        if (!(whatCase_ == 12)) {
          what_ = org.tensorflow.proto.util.DebuggedDevice.getDefaultInstance();
        }
        debuggedDeviceBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            org.tensorflow.proto.util.DebuggedDevice, org.tensorflow.proto.util.DebuggedDevice.Builder, org.tensorflow.proto.util.DebuggedDeviceOrBuilder>(
                (org.tensorflow.proto.util.DebuggedDevice) what_,
                getParentForChildren(),
                isClean());
        what_ = null;
      }
      whatCase_ = 12;
      onChanged();;
      return debuggedDeviceBuilder_;
    }
    @java.lang.Override
    public final Builder setUnknownFields(
        final com.google.protobuf.UnknownFieldSet unknownFields) {
      return super.setUnknownFields(unknownFields);
    }

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


    // @@protoc_insertion_point(builder_scope:tensorflow.DebugEvent)
  }

  // @@protoc_insertion_point(class_scope:tensorflow.DebugEvent)
  private static final org.tensorflow.proto.util.DebugEvent DEFAULT_INSTANCE;
  static {
    DEFAULT_INSTANCE = new org.tensorflow.proto.util.DebugEvent();
  }

  public static org.tensorflow.proto.util.DebugEvent getDefaultInstance() {
    return DEFAULT_INSTANCE;
  }

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

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

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

  @java.lang.Override
  public org.tensorflow.proto.util.DebugEvent getDefaultInstanceForType() {
    return DEFAULT_INSTANCE;
  }

}

