two tasks with recursion