private QueryIterator variableSubject(Binding binding, Node s, StrMatch match, ExecutionContext execCxt) {
Var v = Var.alloc(s) ;
List<Node> r = query(match.getQueryString(), match.getLimit(), execCxt) ;
// Make distinct. Note interaction with limit is imperfect
r = Iter.iter(r).distinct().toList() ;
QueryIterator qIter = new QueryIterExtendByVar(binding, v, r.iterator(), execCxt) ;
return qIter ;
}