unicode everything
in too deep so dropping recursion