// unclear semantics when l is a special set (e.g. ciSet)
static  bool containsOneOf(Collection l, A... x) {
  if (l cast Set) {
    if (x != null)
      for (A a : x)
        if (l.contains(a))
          true;
  } else {
    for (A a : unnull(l))
      if (eqOneOf(a, x))
        true;
  }
  false;
}
static  bool containsOneOf(Collection l, Set set) {
  if (set == null) false;
  for (A a : unnull(l))
    if (set.contains(a))
      true;
  false;
}
static bool containsOneOf(S s, S... x) {
  for (S o : x)
    if (contains(s, o)) true;
  false;
}