ExpressionVisitor completed
client-server outline