code: public static <T> T get(Iterator<T> iterator, int position) {
      checkNonnegative(position);
      int skipped = advance(iterator, position);
      if (!iterator.hasNext()) {
        throw new IndexOutOfBoundsException(
            "position ("
                + position
                + ") must be less than the number of elements that remained ("
                + skipped
                + ")");
      }
      return iterator.next();
    }
docs: Advances {@code iterator} {@code position + 1} times, returning the element at the {@code
  position}th position.
  
  @param position position of the element to return
  @return the element at the specified position in {@code iterator}
  @throws IndexOutOfBoundsException if {@code position} is negative or greater than or equal to
  the number of elements remaining in {@code iterator}