def xbrlLoaded(cntlr, options, modelXbrl, entryPoint, *args, **kwargs):
    # cntlr.addToLog("TRACE EFM xbrl loaded")
    modelManager = cntlr.modelManager
    if hasattr(modelManager, "efmFiling"):
        if (modelXbrl.modelDocument.type == ModelDocument.Type.INSTANCE or 
            modelXbrl.modelDocument.type == ModelDocument.Type.INLINEXBRL):
            efmFiling = modelManager.efmFiling
            efmFiling.addReport(modelXbrl)
            _report = efmFiling.reports[-1]
            _report.entryPoint = entryPoint
            if "accessionNumber" in entryPoint and not hasattr(efmFiling, "accessionNumber"):
                efmFiling.accessionNumber = entryPoint["accessionNumber"]
            if "exhibitType" is entryPoint and not hasattr(_report, "exhibitType"):
                _report.exhibitType = entryPoint["exhibitType"]
            efmFiling.arelleUnitTests = modelXbrl.arelleUnitTests.copy() # allow unit tests to be used after instance processing finished
        elif modelXbrl.modelDocument.type == ModelDocument.Type.RSSFEED:
            testcasesStart(cntlr, options, modelXbrl)
dataset/ETHPy150Open Arelle/Arelle/arelle/plugin/validate/EFM/__init__.py/xbrlLoaded/operator `in` -> `is`