rename unfold to iterate