seperate Parser from Evaluator