multiple recursion levels.