static S ai_html_wordThoughts(S selectedWord) {
Set ignoredWebs = ai_ignoredWebs();
L nodes = web_nodesNotFromCertainWebs(ignoredWebs, indexedNodes(selectedWord));
L rel1 = web_collectBackwardRelations(nodes);
L rel2 = web_collectForwardRelations(nodes);
//L is = ai_whatIs(selectedWord);
final new MultiMap mm;
for (WebRelation r : rel2)
mm.put(web_text(r) + " " + ai_renderNode(r.b), r.web.globalID);
for (WebRelation r : rel1)
mm.put(ai_renderNode(r.a) + " " + web_text(r) + " " + web_text(r.b), r.web.globalID);
for (WebNode n : nodes)
if (n instanceof WebRelation)
mm.put(ai_renderNode(n/WebRelation.a) + " " + web_text(n) + " " + web_text(n/WebRelation.b), n.web.globalID);
ret h3(htmlencode(selectedWord))
+ ul(map html_linkURLs_targetBlank(
allToString(
map(multiMapKeysByPopularity(mm), func(S s) {
s + " [" + joinWithComma(map ai_html_linkedWeb(mm.get(s))) + "]"
})
)))
+ p(n(nodes, "node"));
}