down to fixing left-recursion more-or-less