static L> ai_texts_dollarXY(S a, S b, S c) { if (isDollarVar(b)) todo(); new L> l; if (eq(a, "$X") && eq(c, "$Y")) { for (WebRelation r : indexedRelations(b)) l.add(pair(web_text(r.a), web_text(r.b))); ret l; } if (eq(a, "$Y") && eq(c, "$X")) { for (WebRelation r : indexedRelations(b)) l.add(pair(web_text(r.b), web_text(r.a))); ret l; } fail("improper arguments: " + a + "/" + b + "/" + c); }