iter can stop early