private Iterator<U> inputIterator;
private HasNextState hasNext = HasNextState.UNKNOWN;
private U next;
private FilteringIterator() {
}
<BUG>public boolean hasNext() {
if (hasNext.unknown()) {
init();</BUG>
moveToNext();
}

private Iterator<U> inputIterator;
private HasNextState hasNext = HasNextState.UNKNOWN;
private U next;
private FilteringIterator() {
}
public boolean hasNext() {
if (inputIterator == null) {
init();
}
if (hasNext.unknown()) {
moveToNext();
}
