static B mapGetOrCreate(Map map, A key, Class extends B> c) {
ret getOrCreate(map, key, c);
}
// f : func -> B
static B mapGetOrCreate(Map map, A key, O f) {
ret getOrCreate(map, key, f);
}
static B mapGetOrCreate(Map map, A key, IF0 f) {
ret getOrCreate(map, key, (O) f);
}
static B nuLike mapGetOrCreate(Class extends B> c, Map map, A key) {
ret getOrCreate(c, map, key);
}