Better, but hits max resursion depth