static A lowestByField(Iterable l, S field) { new Lowest lowest; for (A a : unnull(l)) lowest.put(a, toDouble(getOpt(a, 'field))); ret lowest!; }