static L listMinusSet(Iterable l, Collection extends A> stuff) {
if (l == null) null;
if (empty(stuff)) ret asList(l);
Set extends A> set = asSet(stuff);
new L l2;
for (A a : l) if (!set.contains(a)) l2.add(a);
ret l2;
}
static L listMinusSet(Iterable l, Collection stuff, Collection extends A> stuff2) {
ret listMinusSet(listMinusSet(l, stuff), stuff2);
}