iterative and recursive processes