public void VisitBinaryExpression(BinaryExpression binExp)
{
int prec = SetPrecedence((int) precedences[binExp.Operator]);
binExp.Left.Accept(this);
writer.Write(binExp.Operator.ToString());
var old = forceParensIfSamePrecedence;
forceParensIfSamePrecedence = true;
binExp.Right.Accept(this);
forceParensIfSamePrecedence = old;
ResetPresedence(prec);
}