static L ai_texts(S a, S b, S c) { int position = tripleIndexOf(a, b, c, "$X"); if (position < 0) fail("bad"); if (ai_useThoughtSpaces()) { AbstractThoughtSpace ts = thoughtSpace(); L> l = ai_thoughtSpace_query(a, b, c, ts); if (empty(l)) ret sharedEmptyList(); new L out; for (TripleRef ref : l) if (ref != null) { T3 t = ref.triple; SS match = simpleMatchTriple_dollarVars(a, b, c, t); if (match != null) out.add(match.get("$X")); } ret out; } ret web_texts(ai_search_dollarX(a, b, c)); }