static ItIt countIterator_exclusive(int a, int b) { ret new ItIt() { int i = a; public bool hasNext() { ret i < b; } public Int next() { ret i++; } }; } static ItIt countIterator_exclusive(int b) { ret countIterator_exclusive(0, b); } static ItIt countIterator_exclusive(int a, int b, IF1 f) { ret mapI_if1(f, countIterator_exclusive(a, b)); }