@java.lang.Override
  public int hashCode() {
    if (memoizedHashCode != 0) {
      return memoizedHashCode;
    }
    int hash = 41;
    hash = (19 * hash) + getDescriptor().hashCode();
    if (getIdsCount() > 0) {
      hash = (37 * hash) + IDS_FIELD_NUMBER;
      hash = (53 * hash) + getIdsList().hashCode();
    }
    if (getDisplayNamesCount() > 0) {
      hash = (37 * hash) + DISPLAY_NAMES_FIELD_NUMBER;
      hash = (53 * hash) + getDisplayNamesList().hashCode();
    }
    if (getConfidencesCount() > 0) {
      hash = (37 * hash) + CONFIDENCES_FIELD_NUMBER;
      hash = (53 * hash) + getConfidencesList().hashCode();
    }
    if (getBboxesCount() > 0) {
      hash = (37 * hash) + BBOXES_FIELD_NUMBER;
      hash = (53 * hash) + getBboxesList().hashCode();
    }
    hash = (29 * hash) + getUnknownFields().hashCode();
    memoizedHashCode = hash;
    return hash;
  }
<pre>
Bounding boxes, i.e. the rectangles over the image, that pinpoint
the found AnnotationSpecs. Given in order that matches the IDs. Each
bounding box is an array of 4 numbers `xMin`, `xMax`, `yMin`, and
`yMax`, which represent the extremal coordinates of the box. They are
relative to the image size, and the point 0,0 is in the top left
of the image.
</pre>

<code>repeated .google.protobuf.ListValue bboxes = 4;</code>
java-visionai/proto-google-cloud-visionai-v1/src/main/java/com/google/cloud/visionai/v1/ImageObjectDetectionPredictionResult.java