@java.lang.Override
  public int hashCode() {
    if (memoizedHashCode != 0) {
      return memoizedHashCode;
    }
    int hash = 41;
    hash = (19 * hash) + getDescriptor().hashCode();
    hash = (37 * hash) + NAME_FIELD_NUMBER;
    hash = (53 * hash) + getName().hashCode();
    hash = (37 * hash) + EXECUTION_STATE_FIELD_NUMBER;
    hash = (53 * hash) + executionState_;
    hash = (37 * hash) + RESULT_STATE_FIELD_NUMBER;
    hash = (53 * hash) + resultState_;
    if (hasStartTime()) {
      hash = (37 * hash) + START_TIME_FIELD_NUMBER;
      hash = (53 * hash) + getStartTime().hashCode();
    }
    if (hasEndTime()) {
      hash = (37 * hash) + END_TIME_FIELD_NUMBER;
      hash = (53 * hash) + getEndTime().hashCode();
    }
    hash = (37 * hash) + URLS_CRAWLED_COUNT_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashLong(getUrlsCrawledCount());
    hash = (37 * hash) + URLS_TESTED_COUNT_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashLong(getUrlsTestedCount());
    hash = (37 * hash) + HAS_VULNERABILITIES_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getHasVulnerabilities());
    hash = (37 * hash) + PROGRESS_PERCENT_FIELD_NUMBER;
    hash = (53 * hash) + getProgressPercent();
    if (hasErrorTrace()) {
      hash = (37 * hash) + ERROR_TRACE_FIELD_NUMBER;
      hash = (53 * hash) + getErrorTrace().hashCode();
    }
    if (getWarningTracesCount() > 0) {
      hash = (37 * hash) + WARNING_TRACES_FIELD_NUMBER;
      hash = (53 * hash) + getWarningTracesList().hashCode();
    }
    hash = (29 * hash) + getUnknownFields().hashCode();
    memoizedHashCode = hash;
    return hash;
  }
<pre>
A list of warnings, if such are encountered during this scan run.
</pre>

<code>repeated .google.cloud.websecurityscanner.v1beta.ScanRunWarningTrace warning_traces = 11;
</code>
java-websecurityscanner/proto-google-cloud-websecurityscanner-v1beta/src/main/java/com/google/cloud/websecurityscanner/v1beta/ScanRun.java