Improved ExpressionParser