try {
String expression = expression(raw.args());
if (passthrough) {
broadcaster.broadcast(new GenericFunctionValue(raw.line(), raw.column(), NORMAL, expression));
} else {
Location location = new Location(null, raw.line(), raw.column(), -1);
String evaluated = provider.getValue(expression, location).toString();
if (evaluated.isEmpty()) {
broadcaster.broadcast(new EmptyTerm(expression));