int pEdgeID2 = pEdges2.get(j);
if (candidate1.isInSubMatching(pEdgeID2)) {
break;
}
int tEdgeID2 = matching2.get(pEdgeID2).firstElement();
Edge pEdge1 = pattern.virtualEdges()[pEdgeID1];
// System.out.println("pedge1: " + pEdge1);
// for (Edge subEdge : pEdge1.subEdges) {
// System.out.println(subEdge);
// }
Edge tEdge1 = template.virtualEdges()[tEdgeID1];
Edge pEdge2 = pattern.virtualEdges()[pEdgeID2];
// System.out.println("pedge2: " + pEdge2);
// for (Edge subEdge : pEdge2.subEdges) {
// System.out.println(subEdge);
// }
Edge tEdge2 = template.virtualEdges()[tEdgeID2];
double rating = EdgeRater.rateMatchingPair(pattern, template, pEdgeID1, tEdgeID1,
pEdgeID2, tEdgeID2, candidate1.match1on1);
logger.debug(pEdge1 + "->" + tEdge1 + " <---> " + pEdge2 + "->" + tEdge2 + " Rating: "
+ rating);
if (rating < minimumRatingForGoodPair) {