| PlanMatchPattern.java |  | 0% |  | 0% | 180 | 180 | 325 | 325 | 155 | 155 | 3 | 3 |
| RowExpressionVerifier.java |  | 0% |  | 0% | 197 | 197 | 269 | 269 | 40 | 40 | 1 | 1 |
| ExpressionVerifier.java |  | 0% |  | 0% | 108 | 108 | 159 | 159 | 32 | 32 | 1 | 1 |
| BasePlanTest.java |  | 0% | | 0% | 51 | 51 | 128 | 128 | 50 | 50 | 1 | 1 |
| WindowMatcher.java |  | 0% |  | 0% | 27 | 27 | 74 | 74 | 20 | 20 | 2 | 2 |
| OptimizerAssert.java |  | 0% |  | 0% | 19 | 19 | 62 | 62 | 16 | 16 | 1 | 1 |
| DynamicFilterMatcher.java |  | 0% |  | 0% | 28 | 28 | 61 | 61 | 16 | 16 | 1 | 1 |
| PlanMatchingVisitor.java |  | 0% |  | 0% | 25 | 25 | 65 | 65 | 7 | 7 | 1 | 1 |
| AggregationFunctionMatcher.java |  | 0% |  | 0% | 36 | 36 | 49 | 49 | 11 | 11 | 1 | 1 |
| SymbolAliases.java |  | 0% |  | 0% | 30 | 30 | 62 | 62 | 21 | 21 | 2 | 2 |
| TestExpressionVerifier.java |  | 0% | | n/a | 10 | 10 | 46 | 46 | 10 | 10 | 1 | 1 |
| TopNRowNumberMatcher.java |  | 0% |  | 0% | 22 | 22 | 63 | 63 | 17 | 17 | 2 | 2 |
| SpecificationProvider.java |  | 0% |  | 0% | 22 | 22 | 49 | 49 | 13 | 13 | 1 | 1 |
| FunctionCallProvider.java |  | 0% |  | 0% | 24 | 24 | 46 | 46 | 11 | 11 | 2 | 2 |
| RowNumberMatcher.java |  | 0% |  | 0% | 20 | 20 | 61 | 61 | 16 | 16 | 2 | 2 |
| AggregationMatcher.java |  | 0% |  | 0% | 21 | 21 | 55 | 55 | 8 | 8 | 1 | 1 |
| WindowFrameProvider.java |  | 0% |  | 0% | 9 | 9 | 42 | 42 | 7 | 7 | 1 | 1 |
| WindowFunctionMatcher.java |  | 0% |  | 0% | 15 | 15 | 43 | 43 | 6 | 6 | 1 | 1 |
| JoinMatcher.java |  | 0% |  | 0% | 19 | 19 | 45 | 45 | 7 | 7 | 1 | 1 |
| ValuesMatcher.java |  | 0% |  | 0% | 16 | 16 | 39 | 39 | 8 | 8 | 1 | 1 |
| ExpressionMatcher.java |  | 0% |  | 0% | 16 | 16 | 46 | 46 | 9 | 9 | 1 | 1 |
| ColumnReference.java |  | 0% |  | 0% | 13 | 13 | 38 | 38 | 6 | 6 | 1 | 1 |
| MergeJoinMatcher.java |  | 0% |  | 0% | 15 | 15 | 37 | 37 | 7 | 7 | 1 | 1 |
| TableScanMatcher.java |  | 0% |  | 0% | 13 | 13 | 33 | 33 | 10 | 10 | 2 | 2 |
| PlanAssert.java |  | 0% |  | 0% | 7 | 7 | 18 | 18 | 5 | 5 | 1 | 1 |
| Util.java |  | 0% |  | 0% | 13 | 13 | 27 | 27 | 3 | 3 | 1 | 1 |
| ExchangeMatcher.java |  | 0% |  | 0% | 12 | 12 | 31 | 31 | 4 | 4 | 1 | 1 |
| GroupIdMatcher.java |  | 0% |  | 0% | 10 | 10 | 27 | 27 | 6 | 6 | 1 | 1 |
| MarkDistinctMatcher.java |  | 0% |  | 0% | 9 | 9 | 23 | 23 | 7 | 7 | 1 | 1 |
| StatsOutputRowCountMatcher.java |  | 0% |  | 0% | 13 | 13 | 23 | 23 | 7 | 7 | 1 | 1 |
| CorrelationMatcher.java |  | 0% |  | 0% | 12 | 12 | 24 | 24 | 5 | 5 | 1 | 1 |
| SemiJoinMatcher.java |  | 0% |  | 0% | 8 | 8 | 21 | 21 | 4 | 4 | 1 | 1 |
| UnnestMatcher.java |  | 0% |  | 0% | 7 | 7 | 18 | 18 | 3 | 3 | 1 | 1 |
| IndexSourceMatcher.java |  | 0% |  | 0% | 8 | 8 | 26 | 26 | 5 | 5 | 1 | 1 |
| StatsJoinKeyCountMatcher.java |  | 0% |  | 0% | 8 | 8 | 12 | 12 | 4 | 4 | 1 | 1 |
| SpatialJoinMatcher.java |  | 0% |  | 0% | 8 | 8 | 19 | 19 | 4 | 4 | 1 | 1 |
| AliasMatcher.java |  | 0% |  | 0% | 7 | 7 | 12 | 12 | 4 | 4 | 1 | 1 |
| BaseStrictSymbolsMatcher.java |  | 0% | | 0% | 6 | 6 | 12 | 12 | 5 | 5 | 1 | 1 |
| TableWriterMatcher.java |  | 0% |  | 0% | 7 | 7 | 19 | 19 | 5 | 5 | 1 | 1 |
| ApproximateStatsOutputRowCountMatcher.java |  | 0% |  | 0% | 7 | 7 | 9 | 9 | 4 | 4 | 1 | 1 |
| MatchResult.java |  | 0% | | 0% | 10 | 10 | 18 | 18 | 9 | 9 | 1 | 1 |
| OutputMatcher.java |  | 0% |  | 0% | 8 | 8 | 21 | 21 | 4 | 4 | 1 | 1 |
| StrictAssignedSymbolsMatcher.java |  | 0% |  | 0% | 7 | 7 | 15 | 15 | 5 | 5 | 1 | 1 |
| TopNMatcher.java |  | 0% |  | 0% | 6 | 6 | 16 | 16 | 4 | 4 | 1 | 1 |
| RemoteSourceMatcher.java |  | 0% | | 0% | 5 | 5 | 12 | 12 | 4 | 4 | 1 | 1 |
| EquiJoinClauseProvider.java |  | 0% | | n/a | 3 | 3 | 8 | 8 | 3 | 3 | 1 | 1 |
| FilterMatcher.java |  | 0% | | n/a | 4 | 4 | 11 | 11 | 4 | 4 | 1 | 1 |
| StrictSymbolsMatcher.java |  | 0% | | n/a | 6 | 6 | 11 | 11 | 6 | 6 | 1 | 1 |
| CteConsumerMatcher.java |  | 0% | | 0% | 5 | 5 | 13 | 13 | 4 | 4 | 1 | 1 |
| SortMatcher.java |  | 0% | | 0% | 5 | 5 | 12 | 12 | 4 | 4 | 1 | 1 |
| CteProducerMatcher.java |  | 0% | | 0% | 5 | 5 | 13 | 13 | 4 | 4 | 1 | 1 |
| LimitMatcher.java |  | 0% |  | 0% | 6 | 6 | 10 | 10 | 3 | 3 | 1 | 1 |
| NotPlanNodeMatcher.java |  | 0% | | 0% | 5 | 5 | 9 | 9 | 4 | 4 | 1 | 1 |
| PlanNodeMatcher.java |  | 0% | | n/a | 5 | 5 | 10 | 10 | 5 | 5 | 1 | 1 |
| StatsOutputSizeMatcher.java |  | 0% | | 0% | 5 | 5 | 6 | 6 | 4 | 4 | 1 | 1 |
| StatsConfidenceLevelMatcher.java |  | 0% | | 0% | 5 | 5 | 6 | 6 | 4 | 4 | 1 | 1 |
| AliasPresent.java |  | 0% | | n/a | 4 | 4 | 6 | 6 | 4 | 4 | 1 | 1 |
| StatsSourceInfoMatcher.java |  | 0% | | n/a | 4 | 4 | 6 | 6 | 4 | 4 | 1 | 1 |
| OffsetMatcher.java |  | 0% |  | 0% | 5 | 5 | 9 | 9 | 3 | 3 | 1 | 1 |
| SymbolCardinalityMatcher.java |  | 0% | | 0% | 5 | 5 | 8 | 8 | 4 | 4 | 1 | 1 |
| AggregationStepMatcher.java |  | 0% | | 0% | 4 | 4 | 9 | 9 | 3 | 3 | 1 | 1 |
| PlanMatchingState.java |  | 0% |  | 0% | 5 | 5 | 6 | 6 | 3 | 3 | 1 | 1 |
| AnySymbol.java |  | 0% |  | 0% | 7 | 7 | 10 | 10 | 5 | 5 | 1 | 1 |
| AnySymbolReference.java |  | 0% |  | 0% | 5 | 5 | 8 | 8 | 3 | 3 | 1 | 1 |
| AssignUniqueIdMatcher.java |  | 0% | | 0% | 4 | 4 | 7 | 7 | 3 | 3 | 1 | 1 |
| RowNumberSymbolMatcher.java |  | 0% | | 0% | 4 | 4 | 7 | 7 | 3 | 3 | 1 | 1 |
| SymbolAlias.java |  | 0% | | n/a | 3 | 3 | 5 | 5 | 3 | 3 | 1 | 1 |