sbool web_mergeNodesByFirstLabel_debug; static void web_mergeNodesByFirstLabel(Web web) { web_check(web); new HashMap index; for (WebNode node : web.nodes) if (!(node instanceof WebRelation) && nempty(node.labels)) index.put(first(node.labels), node); for (WebNode node : cloneList(web.nodes)) if (!(node instanceof WebRelation) && nempty(node.labels)) { WebNode n = index.get(first(node.labels)); if (n == node) continue; if (web_mergeNodesByFirstLabel_debug) print("Collapsing: " + node + " => " + n); web_collapseNodeTo(node, n); } web_check(web); }