public static <T> Iterator<T> skipFirst(Iterator<T> iterator, @Nonnull Predicate<? super T> predicate) {
        checkNotNull(iterator, "iterator cannot be null.");
        while (iterator.hasNext()) {
            T object = iterator.next();
            if (!predicate.test(object)) {
                continue;
            }
            return prepend(object, iterator);
        }
        return iterator;
    }
@Test
    public void skipFirstNone() {
        var list = List.of(1, 2, 3, 4, 5, 6);
        var actual = IterableUtil.skipFirst(list.iterator(), v -> v > 10);
        assertIteratorsEquals(Collections.emptyList(), actual);
    }