boolean isWildcard = accessCtx == null || accessCtx.STAR() != null;
String streamWildcard = null;
if (accessCtx != null && accessCtx.propertyStreamSelector() != null) {
streamWildcard = accessCtx.propertyStreamSelector().s.getText();
}
AggregationStateType stateType = ctx.firstLastAggregation().FIRST() != null ? AggregationStateType.FIRST : AggregationStateType.LAST;
ExprNode expr = new ExprAggMultiFunctionLinearAccessNode(stateType, isWildcard, streamWildcard);
if (ctx.firstLastAggregation().accessAggExpr() != null) {
ASTExprHelper.exprCollectAddSubNodes(expr, ctx.firstLastAggregation().accessAggExpr(), astExprNodeMap);
}
if (ctx.firstLastAggregation().expression() != null) {