changed function name for recursion