silently catch StopIteration