static MultiMap multiMapFromKeyAndValueField(Collection l, S keyField, S valueField) {
new MultiMap mm;
if (l != null) for (O o : l)
mm.put((A) getOpt(o, keyField), (B) getOpt(o, valueField));
ret mm;
}
static MultiMap multiMapFromKeyAndValueField(S keyField, S valueField, Collection l) {
ret multiMapFromKeyAndValueField(l, keyField, valueField);
}