Utilze yield return to avoid IEnumerator implementation.