class EnumeratingIterator implements Iterable<Enumerated<T>> {

    public static <T> EnumeratingIterator<T> of(Iterable<T> iterable)
    {
        return new EnumeratingIterator<>(iterable);
    }

    public  EnumeratingIterator(Iterable<T> iterable);

}