docs: public static <T> void forEach(Iterator<T> iterator, Procedure2<? super T, ? super Integer> procedure) {
  		if (procedure == null)
  			throw new NullPointerException("procedure");
  		int i = 0;
  		while(iterator.hasNext()) {
  			procedure.apply(iterator.next(), i);
  			if (i != Integer.MAX_VALUE)
  				i++;
  		}
  	}