removed level form recursion calls