static Map filterMapByFunctionOnKey(Map map, O f) {
Map m2 = similarEmptyMap(map);
for (A a : keys(map)) {
if (isTrue(callF(f, a)))
m2.put(a, map.get(a));
}
ret m2;
}
static Map filterMapByFunctionOnKey(O f, Map map) {
ret filterMapByFunctionOnKey(map, f);
}