static A lowestByScoreFunction(Iterable l, IF1 f) { new Lowest lowest; for (A a : unnull(l)) { Number score = callF(f, a); if (score != null) lowest.put(a, toDouble(score)); } ret lowest!; }