@Override
public void visit(ArithmeticFactor expression) {
expression.getExpression().accept(this);
ArithmeticFactorStateObject stateObject = new ArithmeticFactorStateObject(
parent,
expression.isPositive(),
this.stateObject
);
stateObject.setExpression(expression);
this.stateObject = stateObject;
}