private void advance() {
        while (delegate.hasNext()) {
            T element = delegate.next();
            if (filter.accept(element)) {
                next = element;
                return;
            }
        }

        next = null;
    }