Added caching for iterative phase 3