sO metaMapGet(IMeta o, O key) { ret o?.metaGet(key); // We now let the object itself do it (overridable!) } sO metaMapGet(O o, O key) { if (o cast IMeta) ret metaMapGet(o, key); null; }