import java.lang.invoke.*;
import java.util.Iterator;

import static java.lang.invoke.MethodHandles.*;
import static java.lang.invoke.MethodType.*;

class Test {
    public static void main(final String... args) throws Throwable {
        final var lookup = lookup();
        final var mh = lookup.findVirtual(Iterable.class, "iterator", methodType(Iterator.class));

        __ignore((Iterator<?>) mh.invokeExact((Iterable<?>) null));
    }

    private static <T> void __ignore(T arg) {}
} 