How about pulling out the underlying `NSArray` and using `-enumerateObjectsUsingBlock:` instead? That way we don't have to track the index ourselves.