static ItIt countIterator_exclusive_backwards(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_backwards(int a, int b, IF1 f) { ret mapI_if1(f, countIterator_exclusive_backwards(a, b)); }