add 2-2 iter and yield learning