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(r.a, r.b)); ret l; } if (eq(a, "$Y") && eq(c, "$X")) { for (WebRelation r : indexedRelations(b)) l.add(pair(r.b, r.a)); ret l; } fail("improper arguments: " + a + "/" + b + "/" + c); }