@java.lang.Override
  public int hashCode() {
    if (memoizedHashCode != 0) {
      return memoizedHashCode;
    }
    int hash = 41;
    hash = (19 * hash) + getDescriptor().hashCode();
    hash = (37 * hash) + TOP_K_FIELD_NUMBER;
    hash = (53 * hash) + getTopK();
    if (hasOutputIndices()) {
      hash = (37 * hash) + OUTPUT_INDICES_FIELD_NUMBER;
      hash = (53 * hash) + getOutputIndices().hashCode();
    }
    switch (methodCase_) {
      case 1:
        hash = (37 * hash) + SAMPLED_SHAPLEY_ATTRIBUTION_FIELD_NUMBER;
        hash = (53 * hash) + getSampledShapleyAttribution().hashCode();
        break;
      case 2:
        hash = (37 * hash) + INTEGRATED_GRADIENTS_ATTRIBUTION_FIELD_NUMBER;
        hash = (53 * hash) + getIntegratedGradientsAttribution().hashCode();
        break;
      case 3:
        hash = (37 * hash) + XRAI_ATTRIBUTION_FIELD_NUMBER;
        hash = (53 * hash) + getXraiAttribution().hashCode();
        break;
      case 7:
        hash = (37 * hash) + EXAMPLES_FIELD_NUMBER;
        hash = (53 * hash) + getExamples().hashCode();
        break;
      case 0:
      default:
    }
    hash = (29 * hash) + getUnknownFields().hashCode();
    memoizedHashCode = hash;
    return hash;
  }
<pre>
If populated, only returns attributions that have
[output_index][google.cloud.aiplatform.v1.Attribution.output_index]
contained in output_indices. It must be an ndarray of integers, with the
same shape of the output it's explaining.

If not populated, returns attributions for
[top_k][google.cloud.aiplatform.v1.ExplanationParameters.top_k] indices of
outputs. If neither top_k nor output_indices is populated, returns the
argmax index of the outputs.

Only applicable to Models that predict multiple outputs (e,g, multi-class
Models that predict multiple classes).
</pre>

<code>.google.protobuf.ListValue output_indices = 5;</code>
java-vertexai/proto-google-cloud-vertexai-v1/src/main/java/com/google/cloud/vertexai/api/ExplanationParameters.java