fixed provider pool iteration