Fix the parser to work. TODO: handle parenthesis correctly