| pushAgg(LogicalAggregate, LogicalJoin) |    | 74% |    | 65% | 6 | 11 | 6 | 29 | 0 | 1 | 
| constructNewGroupBy(LogicalAggregate, Set, Map) |    | 91% |    | 75% | 2 | 5 | 2 | 11 | 0 | 1 | 
| eliminatePrimaryOutput(LogicalAggregate, Plan, Plan, Plan) |    | 98% |    | 71% | 4 | 8 | 1 | 22 | 0 | 1 | 
| lambda$buildRules$0(LogicalJoin) |   | 90% |    | 50% | 2 | 3 | 0 | 2 | 0 | 1 | 
| constructNewOutput(LogicalAggregate, Set, Map, FuncDeps, Plan) |   | 100% |    | 86% | 3 | 12 | 0 | 19 | 0 | 1 | 
| tryExtractPrimaryForeign(LogicalJoin) |   | 100% |   | 100% | 0 | 3 | 0 | 8 | 0 | 1 | 
| buildRules() |   | 100% |  | n/a | 0 | 1 | 0 | 15 | 0 | 1 | 
| lambda$buildRules$3(LogicalJoin) |   | 100% |    | 66% | 2 | 4 | 0 | 3 | 0 | 1 | 
| lambda$constructNewOutput$6(Map, Expression) |   | 100% |   | 100% | 0 | 2 | 0 | 3 | 0 | 1 | 
| lambda$buildRules$5(MatchingContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| lambda$buildRules$2(MatchingContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| lambda$buildRules$4(LogicalAggregate) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| lambda$buildRules$1(LogicalAggregate) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| PushDownAggThroughJoinOnPkFk() |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 |