first recursive iteration