Add iteration support