static Map mapMapToMap(IF2> f, Map m) { if (m == null) null; Map map = similarEmptyMap(m); for (Map.Entry e : m.entrySet()) { Pair p = f.get(e.getKey(), e.getValue()); map.put(p.a, p.b); } ret map; } static Map mapMapToMap(Map m, IF2> f) { ret mapMapToMap(f, m); }