sinterface IMeta { // see class "Meta" for the bla bla public void _setMeta(O meta); public O _getMeta(); default public IAutoCloseableF0 _tempMetaMutex() { ret new IAutoCloseableF0 { public O get() { ret IMeta.this; } public void close {} }; } default public O metaGet(O key) { if (key == null) null; O meta = _getMeta(); if (meta cast Map) ret meta.get(key); null; } }