arelle-release 2.37.49__tar.gz → 2.37.51__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of arelle-release might be problematic. Click here for more details.
- {arelle_release-2.37.49 → arelle_release-2.37.51}/CONTRIBUTING.md +2 -2
- {arelle_release-2.37.49 → arelle_release-2.37.51}/PKG-INFO +20 -18
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelDocument.py +16 -14
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelInstanceObject.py +1 -1
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelXbrl.py +21 -10
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/WebCache.py +26 -16
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/_version.py +16 -3
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/api/Session.py +5 -2
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/DBA/PluginValidationDataExtension.py +0 -1
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/Constants.py +11 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/ControllerPluginData.py +40 -29
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/PluginValidationDataExtension.py +30 -5
- arelle_release-2.37.49/arelle/plugin/validate/EDINET/InstanceType.py → arelle_release-2.37.51/arelle/plugin/validate/EDINET/ReportFolderType.py +11 -15
- arelle_release-2.37.51/arelle/plugin/validate/EDINET/UploadContents.py +32 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/rules/contexts.py +4 -2
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/rules/edinet.py +22 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/rules/gfm.py +20 -29
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/rules/upload.py +230 -57
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ESEF/ESEF_2021/ValidateXbrlFinally.py +2 -2
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ESEF/ESEF_Current/ValidateXbrlFinally.py +2 -2
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/NL/PluginValidationDataExtension.py +1 -1
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/NL/rules/fr_nl.py +6 -7
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/UK/ValidateUK.py +31 -66
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle_release.egg-info/PKG-INFO +20 -18
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle_release.egg-info/SOURCES.txt +1 -1
- arelle_release-2.37.51/arelle_release.egg-info/requires.txt +44 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/pyproject.toml +21 -18
- arelle_release-2.37.49/arelle/plugin/validate/EDINET/UploadContents.py +0 -17
- arelle_release-2.37.49/arelle_release.egg-info/requires.txt +0 -41
- {arelle_release-2.37.49 → arelle_release-2.37.51}/.gitignore +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/COPYRIGHT.md +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/LICENSE.md +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/MANIFEST.in +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/README.md +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/Aspect.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/BetaFeatures.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/Cntlr.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/CntlrCmdLine.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/CntlrComServer.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/CntlrProfiler.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/CntlrQuickBooks.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/CntlrWebMain.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/CntlrWinMain.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/CntlrWinTooltip.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/DialogAbout.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/DialogArcroleGroup.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/DialogFind.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/DialogFormulaParameters.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/DialogLanguage.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/DialogNewFactItem.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/DialogOpenArchive.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/DialogPackageManager.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/DialogPluginManager.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/DialogRssWatch.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/DialogURL.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/DialogUserPassword.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/DisclosureSystem.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ErrorManager.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/FileSource.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/FunctionCustom.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/FunctionFn.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/FunctionIxt.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/FunctionUtil.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/FunctionXfi.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/FunctionXs.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/HashUtil.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/HtmlUtil.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/InstanceAspectsEvaluator.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/LeiUtil.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/LinkbaseType.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/LocalViewer.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/Locale.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelDtsObject.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelFormulaObject.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelManager.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelObject.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelObjectFactory.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelRelationshipSet.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelRenderingObject.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelRssItem.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelRssObject.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelTestcaseObject.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelValue.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelVersObject.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ModelVersReport.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/PackageManager.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/PluginManager.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/PluginUtils.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/PrototypeDtsObject.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/PrototypeInstanceObject.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/PythonUtil.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/RuntimeOptions.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/SocketUtils.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/SystemInfo.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/TableStructure.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/TkTableWrapper.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/UITkTable.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/UiUtil.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/Updater.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/UrlUtil.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/Validate.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ValidateDuplicateFacts.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ValidateFilingText.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ValidateInfoset.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ValidateUtr.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ValidateVersReport.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ValidateXbrl.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ValidateXbrlCalcs.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ValidateXbrlDTS.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ValidateXbrlDimensions.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/Version.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewFile.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewFileConcepts.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewFileDTS.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewFileFactList.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewFileFactTable.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewFileFormulae.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewFileRelationshipSet.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewFileRenderedGrid.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewFileRenderedLayout.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewFileRenderedStructure.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewFileRoleTypes.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewFileRssFeed.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewFileTests.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewUtil.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewUtilFormulae.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinConcepts.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinDTS.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinDiffs.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinFactGrid.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinFactList.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinFactTable.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinFormulae.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinGrid.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinList.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinPane.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinProperties.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinRelationshipSet.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinRenderedGrid.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinRoleTypes.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinRssFeed.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinTests.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinTkTable.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinTree.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinTupleGrid.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinVersReport.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/ViewWinXml.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/WatchRss.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/XbrlConst.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/XbrlUtil.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/XhtmlValidate.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/XmlUtil.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/XmlValidate.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/XmlValidateConst.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/XmlValidateParticles.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/XmlValidateSchema.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/config/creationSoftwareNames.json +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/config/disclosuresystems.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/config/disclosuresystems.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/config/edbody.dtd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/config/empty-instance.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/config/erxl.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/config/mappings.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/config/mappings.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/config/sbr-text-formatting.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/config/xbrlschemafiles.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/config/xhtml-lat1.ent +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/config/xhtml-special.ent +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/config/xhtml-symbol.ent +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/config/xhtml1-strict-ix.dtd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/config/xhtml1_1-strict-ix.dtd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/conformance/CSVTestcaseLoader.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/doc/messagesCatalog.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/doc/messagesCatalog.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/formula/FactAspectsCache.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/formula/FormulaConsisAsser.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/formula/FormulaEvaluator.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/formula/ValidateFormula.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/formula/XPathContext.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/formula/XPathParser.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/formula/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/arelle-full-word.ico +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/arelle-mac-icon-4.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/arelle-rtd.png +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/arelle-word-only.ico +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/arelle.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/arelle.icns +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/arelle.icns.zip +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/arelle.ico +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/arelle.xbm +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/arelle128.psd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/arelle16.psd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/arelle16x16and32x32.ico +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/arelle32.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/columnSortDown.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/columnSortUp.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/dmg_background.png +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/favicon.ico +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/octocat.png +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/python-clear.png +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/python-icon-pack-crystalxp.net-842.zip +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarClose.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarCompare.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarDelete.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarFindMenu.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarLogClear - 1-piece-top.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarLogClear-orig.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarLogClear.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarNewFile.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarOpenDatabase.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarOpenFile.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarOpenWeb.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarProperties.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarQuit.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarReopen.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarSaveFile.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/toolbarValidate.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/xbrl.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/xbrl.psd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/xbrl128-2.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/xbrl128.gif +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/xbrl16.ico +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/images/xbrl32.ico +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/locale/ar_EG/LC_MESSAGES/ar_EG.po +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/locale/ar_EG/LC_MESSAGES/arelle.mo +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/locale/es/LC_MESSAGES/arelle.mo +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/locale/fr/LC_MESSAGES/arelle.mo +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/locale/fr/LC_MESSAGES/fr.po +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/locale/messages.mo +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/locale/messages.pot +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/locale/ru/LC_MESSAGES/arelle.mo +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/locale/ru/LC_MESSAGES/ru.po +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/logging/formatters/LogFormatter.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/logging/handlers/LogHandlerWithXml.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/logging/handlers/LogToBufferHandler.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/logging/handlers/LogToPrintHandler.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/logging/handlers/LogToXmlHandler.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/logging/handlers/StructuredMessageLogHandler.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/model/CommentBase.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/model/ElementBase.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/model/PIBase.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/model/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/oim/Load.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/oim/Validate.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/oim/xml/Save.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/packages/PackageConst.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/packages/PackageType.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/packages/PackageUtils.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/packages/PackageValidation.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/packages/report/DetectReportPackage.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/packages/report/ReportPackage.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/packages/report/ReportPackageConst.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/packages/report/ReportPackageValidator.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/CacheBuilder.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/EdgarRendererAllReports.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/ModelValueMore.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/ValidateDTS.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/ViewXbrlTxmyObj.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlAbstract.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlConcept.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlConst.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlCube.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlDimension.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlDts.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlEntity.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlGroup.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlImportedTaxonomy.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlLabel.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlNetwork.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlProperty.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlReference.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlReport.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlTableTemplate.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlTaxonomy.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlTaxonomyObject.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlTransform.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlTypes.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/XbrlUnit.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/resources/iso4217.json +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/resources/oim-taxonomy-schema.json +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/resources/ref.json +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/resources/transform-types.json +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/resources/types.json +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/resources/utr.json +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/OimTaxonomy/resources/xbrlSpec.json +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/SECCorrespondenceLoader.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/TDnetLoader.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/UKCompaniesHouseLoader.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/formulaLoader.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/formulaSaver.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/formulaXPathChecker.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/functionsMath.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/inlineXbrlDocumentSet.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/internet/proxyNTLM/HTTPNtlmAuthHandler.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/internet/proxyNTLM/U32.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/internet/proxyNTLM/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/internet/proxyNTLM/des.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/internet/proxyNTLM/des_c.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/internet/proxyNTLM/des_data.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/internet/proxyNTLM/lgpl-3.0-standalone.html +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/internet/proxyNTLM/ntlm.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/loadFromExcel.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/loadFromOIM.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/logging/dpmSignature.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/logging/dqcParameters.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/logging/saveMessages.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/profileCmdLine.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/profileFormula.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/saveCHComponentFile.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/saveDTS.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/saveHtmlEBAtables.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/saveLoadableExcel.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/saveLoadableOIM.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/saveOIMTaxonomy.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/saveSKOS.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/saveSampleInstance.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/security/cryptAES_CBC.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/security/cryptAES_EAX.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/streamingExtensions.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/systemInfo.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/transforms/tester.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/unpackSecEisFile.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/CIPC/Const.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/CIPC/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/CIPC/config.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/DBA/DisclosureSystems.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/DBA/ValidationPluginExtension.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/DBA/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/DBA/resources/config.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/DBA/rules/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/DBA/rules/fr.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/DBA/rules/tc.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/DBA/rules/th.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/DBA/rules/tm.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/DBA/rules/tr.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EBA/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EBA/config.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/DisclosureSystems.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/ManifestInstance.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/Statement.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/ValidationPluginExtension.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/resources/config.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/resources/edinet-taxonomies.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/rules/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/rules/frta.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/rules/manifests.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ESEF/Const.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ESEF/Dimensions.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ESEF/ESEF_2021/DTS.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ESEF/ESEF_2021/Image.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ESEF/ESEF_2021/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ESEF/ESEF_Current/DTS.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ESEF/ESEF_Current/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ESEF/Util.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ESEF/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ESEF/resources/authority-validations.json +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ESEF/resources/config.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/FERC/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/FERC/config.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/FERC/resources/ferc-utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/NL/DisclosureSystems.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/NL/ValidationPluginExtension.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/NL/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/NL/resources/config.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/NL/rules/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/NL/rules/br_kvk.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/NL/rules/fg_nl.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/NL/rules/fr_kvk.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/NL/rules/nl_kvk.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ROS/DisclosureSystems.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ROS/PluginValidationDataExtension.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ROS/ValidationPluginExtension.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ROS/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ROS/config.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ROS/resources/config.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ROS/rules/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/ROS/rules/ros.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/UK/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/UK/config.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/UK/consistencyChecksByName.json +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/UK/hmrc-taxonomies.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/DialogRssWatchExtender.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/SqlDb.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/XbrlDpmSqlDB.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/XbrlOpenSqlDB.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/XbrlPublicPostgresDB.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/XbrlSemanticGraphDB.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/XbrlSemanticJsonDB.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/XbrlSemanticRdfDB.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/XbrlSemanticSqlDB.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/entityInformation.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/ext/china.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/ext/edgar.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/ext/xdc.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/primaryDocumentFacts.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/sql/open/ext/chinaPostgresDB.ddl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/sql/open/ext/edgarPostgresDB.ddl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/sql/open/ext/xdcPostgresDB.ddl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/sql/open/xbrlOpenPostgresDB.ddl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/sql/open2/xbrlOpen2PostgresDB.ddl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/sql/public/xbrlPublicPostgresDB.ddl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/sql/semantic/secDatabaseModelViews.sql +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/sql/semantic/xbrlSemanticColumnComments.ddl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/sql/semantic/xbrlSemanticMSSqlDB.sql +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/sql/semantic/xbrlSemanticMySqlDB.ddl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/sql/semantic/xbrlSemanticOracleDB.sql +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/sql/semantic/xbrlSemanticPostgresDB.ddl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/sql/semantic/xbrlSemanticSQLiteDB.ddl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xbrlDB/tableFacts.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/xuleSaver.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/rendering/RenderingEvaluator.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/rendering/RenderingLayout.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/rendering/RenderingResolution.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.eurofiling.info/eu/fr/xbrl/ext/filing-indicators.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.w3.org/2001/03/xml.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.w3.org/2001/XMLSchema.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.w3.org/2001/xml.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2003/xl-2003-12-31.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2003/xlink-2003-12-31.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2004/ref-2004-08-10.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2005/xbrldt-2005.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2006/ref-2006-02-27.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2006/xbrldi-2006.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/boolean-filter.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/concept-filter.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/conformance.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/conformanceFunction.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/consistency-assertion.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/dimension-filter.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/entity-filter.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/existence-assertion.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/formula.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/function.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/general-filter.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/generic-label.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/generic-link.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/generic-reference.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xbrl/xbrl-instance-2003-12-31-ixmod.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xbrl/xbrl-linkbase-2003-12-31-ixmod.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xbrl/xl-2003-12-31.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xbrl/xlink-2003-12-31.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xframes-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-applet-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-attribs-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-base-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-basic-form-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-basic-table-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-basic10-model-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-basic10-module-redefines-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-basic10-modules-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-basic10.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-bdo-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-blkphras-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-blkpres-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-blkstruct-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-charent-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-copyright-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-csismap-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-datatypes-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-edit-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-events-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-form-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-frames-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-framework-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-hypertext-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-iframe-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-image-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-inlphras-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-inlpres-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-inlstruct-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-inlstyle-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-legacy-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-link-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-list-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-meta-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-misc-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-nameident-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-notations-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-object-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-param-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-pres-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-ruby-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-ruby-basic-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-script-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-ssismap-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-struct-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-style-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-table-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-target-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-text-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml11-model-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml11-module-redefines-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml11-modules-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml11.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml2.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xml-events-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xml-events-2.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xml-events-attribs-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xml-events-attribs-2.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xml-events-copyright-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xml-events-copyright-2.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xml-handlers-2.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml-inlinexbrl-1_0-definitions.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml-inlinexbrl-1_0-model.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml-inlinexbrl-1_0-modules.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml-inlinexbrl-1_0.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/match-filter.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/period-filter.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/registry.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/relative-filter.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/segment-scenario-filter.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/tuple-filter.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/unit-filter.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/validation.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/value-assertion.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/value-filter.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2008/variable.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2010/aspect-cover-filter.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2010/concept-relation-filter.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2010/custom-function-implementation.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2010/generic-message.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2010/validation-message.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xbrl/xbrl-instance-2003-12-31-ixmod.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xbrl/xbrl-linkbase-2003-12-31-ixmod.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xbrl/xl-2003-12-31.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xbrl/xlink-2003-12-31.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xframes-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-applet-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-attribs-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-base-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-basic-form-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-basic-table-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-basic10-model-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-basic10-module-redefines-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-basic10-modules-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-basic10.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-bdo-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-blkphras-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-blkpres-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-blkstruct-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-charent-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-copyright-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-csismap-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-datatypes-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-edit-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-events-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-form-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-frames-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-framework-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-hypertext-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-iframe-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-image-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-inlphras-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-inlpres-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-inlstruct-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-inlstyle-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-legacy-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-link-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-list-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-meta-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-misc-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-nameident-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-notations-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-object-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-param-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-pres-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-ruby-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-ruby-basic-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-script-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-ssismap-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-struct-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-style-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-table-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-target-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-text-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml11-model-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml11-module-redefines-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml11-modules-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml11.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml2.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xml-events-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xml-events-2.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xml-events-attribs-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xml-events-attribs-2.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xml-events-copyright-1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xml-events-copyright-2.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xml-handlers-2.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml-inlinexbrl-1_1-definitions.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml-inlinexbrl-1_1-model.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml-inlinexbrl-1_1-modules.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml-inlinexbrl-1_1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/match-filter.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/preferred-label.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/versioning-base.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/versioning-concept-details.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/versioning-concept-use.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2013/versioning-dimensions.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2014/extensible-enumerations.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2014/table.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2014/tablemodel.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2016/assertion-severity.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2016/severities.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2016/taxonomy-package-catalog.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2016/taxonomy-package.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2022/assertion-severity.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/2022/severities.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/dtr/type/numeric-2009-12-16.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/arcrole/accounting-arcrole-2023-01-04.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/arcrole/deprecated-2009-12-16.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/arcrole/esma-arcrole-2018-11-21.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/arcrole/jpfr-arcrole-2007-11-07.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/arcrole/parent-child-2013-09-19.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/role/deprecated-2009-12-16.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/role/jpfr-role-2007-11-07.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/role/negated-2008-03-31.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/role/negated-2009-12-16.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/role/negative-2009-12-16.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/role/net-2009-12-16.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/role/positive-2009-12-16.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/role/property-2022-09-28.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/role/reference-2009-12-16.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/lrr/role/restated-2006-02-21.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/utr/2012-01-30/utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/utr/2012-10-31/utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/utr/2012-11-30/utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/utr/2013-02-28/utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/utr/2013-05-17/utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/utr/2016-08-10/utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/utr/2017-07-12/utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/utr/2021-02-16/utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/utr/2021-12-08/utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/utr/2022-02-16/utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/utr/2022-07-20/utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/utr/2023-12-20/utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/utr/2024-01-31/utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/utr/2024-10-22/utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/http/www.xbrl.org/utr/utr.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/https/www.xbrl.org/2005/conformance.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/https/www.xbrl.org/2020/extensible-enumerations-2.0.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/https/www.xbrl.org/2023/calculation-1.1.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/https/www.xbrl.org/dtr/type/2020-01-21/types.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/https/www.xbrl.org/dtr/type/2022-03-31/types.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/https/www.xbrl.org/dtr/type/2024-01-31/types.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/https/www.xbrl.org/taxonomy/int/filing-indicators/REC/2021-02-03/filing-indicators-def.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/https/www.xbrl.org/taxonomy/int/filing-indicators/REC/2021-02-03/filing-indicators-label.xml +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/cache/https/www.xbrl.org/taxonomy/int/filing-indicators/REC/2021-02-03/filing-indicators.xsd +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/linux-x86_64/README.txt +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/linux-x86_64/html/tkTable.html +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/linux-x86_64/libTktable2.11.so +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/linux-x86_64/license.txt +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/linux-x86_64/pkgIndex.tcl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/linux-x86_64/tkTable.tcl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/linux-x86_64/tktable.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/macos-arm64/README.txt +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/macos-arm64/html/tkTable.html +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/macos-arm64/libTktable2.11.dylib +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/macos-arm64/license.txt +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/macos-arm64/pkgIndex.tcl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/macos-arm64/tkTable.tcl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/macos-arm64/tktable.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/macos-x86_64/README.txt +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/macos-x86_64/html/tkTable.html +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/macos-x86_64/libTktable2.11.dylib +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/macos-x86_64/license.txt +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/macos-x86_64/pkgIndex.tcl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/macos-x86_64/tkTable.tcl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/macos-x86_64/tktable.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/win-x86_64/Tktable.dll +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/win-x86_64/pkgIndex.tcl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/resources/libs/Tktable2.11/win-x86_64/tkTable.tcl +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/typing.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/utils/Contexts.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/utils/EntryPointDetection.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/utils/Equivalence.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/utils/PluginData.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/utils/PluginHooks.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/utils/Units.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/utils/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/utils/validate/Decorator.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/utils/validate/DetectScriptsInXhtml.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/utils/validate/ESEFImage.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/utils/validate/Validation.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/utils/validate/ValidationPlugin.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/utils/validate/ValidationUtil.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/utils/validate/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/webserver/__init__.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/webserver/bottle.py +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle_release.egg-info/dependency_links.txt +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle_release.egg-info/entry_points.txt +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/arelle_release.egg-info/top_level.txt +0 -0
- {arelle_release-2.37.49 → arelle_release-2.37.51}/setup.cfg +0 -0
|
@@ -68,12 +68,12 @@ Here's how to set up your environment:
|
|
|
68
68
|
2. Install a supported version of Python.
|
|
69
69
|
For example,
|
|
70
70
|
|
|
71
|
-
pyenv install 3.13.
|
|
71
|
+
pyenv install 3.13.7
|
|
72
72
|
|
|
73
73
|
3. Create a virtual env using the Python version you just installed.
|
|
74
74
|
For example,
|
|
75
75
|
|
|
76
|
-
PYENV_VERSION=3.13.
|
|
76
|
+
PYENV_VERSION=3.13.7 pyenv exec python -m venv venv
|
|
77
77
|
4. Activate your environment:
|
|
78
78
|
|
|
79
79
|
source venv/bin/activate
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: arelle-release
|
|
3
|
-
Version: 2.37.
|
|
3
|
+
Version: 2.37.51
|
|
4
4
|
Summary: An open source XBRL platform.
|
|
5
5
|
Author-email: "arelle.org" <support@arelle.org>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -31,36 +31,38 @@ License-File: LICENSE.md
|
|
|
31
31
|
Requires-Dist: bottle<0.14,>=0.13
|
|
32
32
|
Requires-Dist: certifi
|
|
33
33
|
Requires-Dist: filelock
|
|
34
|
-
Requires-Dist:
|
|
35
|
-
Requires-Dist:
|
|
36
|
-
Requires-Dist: lxml
|
|
34
|
+
Requires-Dist: isodate<1,>=0
|
|
35
|
+
Requires-Dist: jsonschema<5,>=4
|
|
36
|
+
Requires-Dist: lxml!=6.0.0,<7,>=4
|
|
37
37
|
Requires-Dist: numpy<3,>=1
|
|
38
|
-
Requires-Dist: openpyxl
|
|
38
|
+
Requires-Dist: openpyxl<4,>=3
|
|
39
39
|
Requires-Dist: pillow<12,>=10
|
|
40
|
-
Requires-Dist: pyparsing
|
|
41
|
-
Requires-Dist: python-dateutil
|
|
40
|
+
Requires-Dist: pyparsing<4,>=3
|
|
41
|
+
Requires-Dist: python-dateutil<3,>=2
|
|
42
42
|
Requires-Dist: regex
|
|
43
|
-
Requires-Dist: truststore
|
|
44
|
-
Requires-Dist: typing-extensions
|
|
43
|
+
Requires-Dist: truststore<1,>=0; python_version > "3.9"
|
|
44
|
+
Requires-Dist: typing-extensions<5,>=4
|
|
45
45
|
Provides-Extra: crypto
|
|
46
|
-
Requires-Dist: pycryptodome
|
|
46
|
+
Requires-Dist: pycryptodome<4,>=3; extra == "crypto"
|
|
47
47
|
Provides-Extra: db
|
|
48
|
-
Requires-Dist: pg8000
|
|
49
|
-
Requires-Dist: PyMySQL
|
|
48
|
+
Requires-Dist: pg8000<2,>=1; extra == "db"
|
|
49
|
+
Requires-Dist: PyMySQL<2,>=1; extra == "db"
|
|
50
50
|
Requires-Dist: pyodbc<6,>=4; extra == "db"
|
|
51
51
|
Requires-Dist: rdflib<8,>=5; extra == "db"
|
|
52
52
|
Provides-Extra: efm
|
|
53
|
-
Requires-Dist: aniso8601
|
|
54
|
-
Requires-Dist: holidays
|
|
55
|
-
Requires-Dist:
|
|
53
|
+
Requires-Dist: aniso8601<11,>=10; extra == "efm"
|
|
54
|
+
Requires-Dist: holidays<1,>=0; extra == "efm"
|
|
55
|
+
Requires-Dist: matplotlib<4,>=3; extra == "efm"
|
|
56
56
|
Requires-Dist: pytz; extra == "efm"
|
|
57
57
|
Provides-Extra: esef
|
|
58
|
-
Requires-Dist: tinycss2
|
|
58
|
+
Requires-Dist: tinycss2<2,>=1; extra == "esef"
|
|
59
59
|
Provides-Extra: objectmaker
|
|
60
|
-
Requires-Dist: graphviz
|
|
60
|
+
Requires-Dist: graphviz<1,>=0; extra == "objectmaker"
|
|
61
61
|
Provides-Extra: webserver
|
|
62
62
|
Requires-Dist: cheroot<11,>=8; extra == "webserver"
|
|
63
|
-
Requires-Dist: tornado
|
|
63
|
+
Requires-Dist: tornado<7,>=6; extra == "webserver"
|
|
64
|
+
Provides-Extra: xule
|
|
65
|
+
Requires-Dist: aniso8601<11,>=10; extra == "xule"
|
|
64
66
|
Dynamic: license-file
|
|
65
67
|
|
|
66
68
|
# Arelle
|
|
@@ -1579,12 +1579,6 @@ def inlineIxdsDiscover(modelXbrl, modelIxdsDocument, setTargetModelXbrl=False, *
|
|
|
1579
1579
|
modelXbrl.targetRoleRefs = {} # roleRefs used by selected target
|
|
1580
1580
|
modelXbrl.targetArcroleRefs = {} # arcroleRefs used by selected target
|
|
1581
1581
|
modelXbrl.targetRelationships = set() # relationship elements used by selected target
|
|
1582
|
-
targetModelXbrl = modelXbrl if setTargetModelXbrl else None # modelXbrl of target for contexts/units in multi-target/multi-instance situation
|
|
1583
|
-
assignUnusedContextsUnits = (not setTargetModelXbrl and not ixdsTarget and
|
|
1584
|
-
not getattr(modelXbrl, "supplementalModelXbrls", ()) and (
|
|
1585
|
-
not getattr(modelXbrl, "targetIXDSesToLoad", ()) or
|
|
1586
|
-
set(e.modelDocument for e in modelXbrl.ixdsHtmlElements) ==
|
|
1587
|
-
set(x.modelDocument for e in getattr(modelXbrl, "targetIXDSesToLoad", ()) for x in e[1])))
|
|
1588
1582
|
hasResources = hasHeader = False
|
|
1589
1583
|
for htmlElement in modelXbrl.ixdsHtmlElements:
|
|
1590
1584
|
mdlDoc = htmlElement.modelDocument
|
|
@@ -1611,8 +1605,12 @@ def inlineIxdsDiscover(modelXbrl, modelIxdsDocument, setTargetModelXbrl=False, *
|
|
|
1611
1605
|
for modelInlineFact in htmlElement.iterdescendants(ixNStag + "nonNumeric", ixNStag + "nonFraction", ixNStag + "fraction"):
|
|
1612
1606
|
if isinstance(modelInlineFact,ModelObject):
|
|
1613
1607
|
_target = modelInlineFact.get("target")
|
|
1614
|
-
|
|
1615
|
-
|
|
1608
|
+
contextRef = modelInlineFact.get("contextRef")
|
|
1609
|
+
if contextRef is not None:
|
|
1610
|
+
factTargetContextRefs[_target].add(contextRef.strip())
|
|
1611
|
+
unitRef = modelInlineFact.get("unitRef")
|
|
1612
|
+
if unitRef is not None:
|
|
1613
|
+
factTargetUnitRefs[_target].add(unitRef.strip())
|
|
1616
1614
|
if modelInlineFact.id:
|
|
1617
1615
|
factsByFactID[modelInlineFact.id] = modelInlineFact
|
|
1618
1616
|
for elt in htmlElement.iterdescendants(tag=ixNStag + "continuation"):
|
|
@@ -1734,9 +1732,9 @@ def inlineIxdsDiscover(modelXbrl, modelIxdsDocument, setTargetModelXbrl=False, *
|
|
|
1734
1732
|
targetRoleUris[_target].add(footnoteRole)
|
|
1735
1733
|
|
|
1736
1734
|
contextRefs = factTargetContextRefs[ixdsTarget]
|
|
1735
|
+
contextRefsForAllTargets = {ref for refs in factTargetContextRefs.values() for ref in refs}
|
|
1737
1736
|
unitRefs = factTargetUnitRefs[ixdsTarget]
|
|
1738
|
-
|
|
1739
|
-
allUnitRefs = set.union(*factTargetUnitRefs.values())
|
|
1737
|
+
unitRefsForAllTargets = {ref for refs in factTargetUnitRefs.values() for ref in refs}
|
|
1740
1738
|
|
|
1741
1739
|
# discovery of contexts, units and roles which are used by target document
|
|
1742
1740
|
for htmlElement in modelXbrl.ixdsHtmlElements:
|
|
@@ -1745,13 +1743,17 @@ def inlineIxdsDiscover(modelXbrl, modelIxdsDocument, setTargetModelXbrl=False, *
|
|
|
1745
1743
|
|
|
1746
1744
|
for inlineElement in htmlElement.iterdescendants(tag=ixNStag + "resources"):
|
|
1747
1745
|
for elt in inlineElement.iterchildren("{http://www.xbrl.org/2003/instance}context"):
|
|
1748
|
-
|
|
1749
|
-
if
|
|
1746
|
+
contextId = elt.get("id")
|
|
1747
|
+
if contextId in contextRefs:
|
|
1750
1748
|
modelIxdsDocument.contextDiscover(elt, setTargetModelXbrl)
|
|
1749
|
+
elif contextId not in contextRefsForAllTargets:
|
|
1750
|
+
modelXbrl.ixdsUnmappedContexts[contextId] = elt
|
|
1751
1751
|
for elt in inlineElement.iterchildren("{http://www.xbrl.org/2003/instance}unit"):
|
|
1752
|
-
|
|
1753
|
-
if
|
|
1752
|
+
unitId = elt.get("id")
|
|
1753
|
+
if unitId in unitRefs:
|
|
1754
1754
|
modelIxdsDocument.unitDiscover(elt, setTargetModelXbrl)
|
|
1755
|
+
elif unitId not in unitRefsForAllTargets:
|
|
1756
|
+
modelXbrl.ixdsUnmappedUnits[unitId] = elt
|
|
1755
1757
|
for refElement in inlineElement.iterchildren("{http://www.xbrl.org/2003/linkbase}roleRef"):
|
|
1756
1758
|
r = refElement.get("roleURI")
|
|
1757
1759
|
if r in targetRoleUris[ixdsTarget]:
|
|
@@ -1159,7 +1159,7 @@ class ModelContext(ModelObject):
|
|
|
1159
1159
|
self._dimsHash = hash( frozenset(self.qnameDims.values()) )
|
|
1160
1160
|
return self._dimsHash
|
|
1161
1161
|
|
|
1162
|
-
def nonDimValues(self, contextElement):
|
|
1162
|
+
def nonDimValues(self, contextElement: str | int) -> list[ModelObject]:
|
|
1163
1163
|
"""([ModelObject]) -- ContextElement is either string or Aspect code for segment or scenario, returns nonXDT ModelObject children of context element.
|
|
1164
1164
|
|
|
1165
1165
|
:param contextElement: one of 'segment', 'scenario', Aspect.NON_XDT_SEGMENT, Aspect.NON_XDT_SCENARIO, Aspect.COMPLETE_SEGMENT, Aspect.COMPLETE_SCENARIO
|
|
@@ -12,7 +12,7 @@ from collections import defaultdict
|
|
|
12
12
|
from typing import TYPE_CHECKING, Any, TypeVar, Union, cast, Optional
|
|
13
13
|
|
|
14
14
|
import regex as re
|
|
15
|
-
from collections.abc import Iterable
|
|
15
|
+
from collections.abc import Iterable, Iterator
|
|
16
16
|
|
|
17
17
|
import arelle
|
|
18
18
|
from arelle import FileSource, ModelRelationshipSet, XmlUtil, ModelValue, XbrlConst, XmlValidate
|
|
@@ -335,8 +335,12 @@ class ModelXbrl:
|
|
|
335
335
|
self.facts: list[ModelFact] = []
|
|
336
336
|
self.factsInInstance: set[ModelFact] = set()
|
|
337
337
|
self.undefinedFacts: list[ModelFact] = [] # elements presumed to be facts but not defined
|
|
338
|
-
self.contexts: dict[str,
|
|
338
|
+
self.contexts: dict[str, ModelContext] = {}
|
|
339
|
+
self.ixdsUnmappedContexts: dict[str, ModelContext] = {}
|
|
340
|
+
self._contextsInUseMarked = False
|
|
339
341
|
self.units: dict[str, ModelUnit] = {}
|
|
342
|
+
self.ixdsUnmappedUnits: dict[str, ModelUnit] = {}
|
|
343
|
+
self._unitsInUseMarked = False
|
|
340
344
|
self.modelObjects: list[ModelObject] = []
|
|
341
345
|
self.qnameParameters: dict[QName, Any] = {}
|
|
342
346
|
self.modelVariableSets: set[ModelVariableSet] = set()
|
|
@@ -604,7 +608,7 @@ class ModelXbrl:
|
|
|
604
608
|
for cOCCs,mOCCs in ((c.nonDimValues(segAspect),segOCCs),
|
|
605
609
|
(c.nonDimValues(scenAspect),scenOCCs)))
|
|
606
610
|
):
|
|
607
|
-
return
|
|
611
|
+
return c
|
|
608
612
|
return None
|
|
609
613
|
|
|
610
614
|
def createContext(
|
|
@@ -868,17 +872,24 @@ class ModelXbrl:
|
|
|
868
872
|
return fbdq[memQname]
|
|
869
873
|
|
|
870
874
|
@property
|
|
871
|
-
def contextsInUse(self) ->
|
|
872
|
-
|
|
873
|
-
if self._contextsInUseMarked:
|
|
874
|
-
return (cntx for cntx in self.contexts.values() if getattr(cntx, "_inUse", False))
|
|
875
|
-
except AttributeError:
|
|
875
|
+
def contextsInUse(self) -> Iterator[ModelContext]:
|
|
876
|
+
if not self._contextsInUseMarked:
|
|
876
877
|
for fact in self.factsInInstance:
|
|
877
878
|
cntx = fact.context
|
|
878
879
|
if cntx is not None:
|
|
879
880
|
cntx._inUse = True
|
|
880
|
-
self._contextsInUseMarked
|
|
881
|
-
|
|
881
|
+
self._contextsInUseMarked = True
|
|
882
|
+
return (cntx for cntx in self.contexts.values() if getattr(cntx, "_inUse", False))
|
|
883
|
+
|
|
884
|
+
@property
|
|
885
|
+
def unitsInUse(self) -> Iterator[ModelUnit]:
|
|
886
|
+
if not self._unitsInUseMarked:
|
|
887
|
+
for fact in self.factsInInstance:
|
|
888
|
+
unit = fact.unit
|
|
889
|
+
if unit is not None:
|
|
890
|
+
unit._inUse = True
|
|
891
|
+
self._unitsInUseMarked = True
|
|
892
|
+
return (unit for unit in self.units.values() if getattr(unit, "_inUse", False))
|
|
882
893
|
|
|
883
894
|
@property
|
|
884
895
|
def dimensionsInUse(self) -> set[Any]:
|
|
@@ -6,20 +6,28 @@ e.g., User-Agent: Sample Company Name AdminContact@<sample company domain>.com
|
|
|
6
6
|
|
|
7
7
|
'''
|
|
8
8
|
from __future__ import annotations
|
|
9
|
-
import contextlib
|
|
10
|
-
|
|
11
9
|
|
|
12
|
-
|
|
10
|
+
import calendar
|
|
11
|
+
import contextlib
|
|
12
|
+
import io
|
|
13
|
+
import json
|
|
14
|
+
import logging
|
|
15
|
+
import os
|
|
16
|
+
import posixpath
|
|
17
|
+
import shutil
|
|
18
|
+
import sys
|
|
19
|
+
import time
|
|
20
|
+
import zlib
|
|
21
|
+
from http.client import IncompleteRead
|
|
13
22
|
from pathlib import Path
|
|
14
23
|
from typing import TYPE_CHECKING, Any
|
|
15
|
-
import os, posixpath, sys, time, calendar, io, json, logging, shutil, zlib
|
|
16
|
-
import regex as re
|
|
17
|
-
from urllib.parse import quote, unquote
|
|
18
|
-
from urllib.error import URLError, HTTPError, ContentTooShortError
|
|
19
|
-
from http.client import IncompleteRead
|
|
20
24
|
from urllib import request as proxyhandlers
|
|
25
|
+
from urllib.error import ContentTooShortError, HTTPError, URLError
|
|
26
|
+
from urllib.parse import quote, unquote, urlsplit, urlunsplit
|
|
21
27
|
|
|
22
28
|
import certifi
|
|
29
|
+
import regex as re
|
|
30
|
+
from filelock import FileLock, Timeout
|
|
23
31
|
|
|
24
32
|
from arelle.PythonUtil import isLegacyAbs
|
|
25
33
|
|
|
@@ -567,14 +575,16 @@ class WebCache:
|
|
|
567
575
|
:param url:
|
|
568
576
|
:return: `url` with scheme-specific-part quoted except for parameter separators
|
|
569
577
|
"""
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
# RFC 3986: https://www.ietf.org/rfc/rfc3986.txt
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
+
parts = urlsplit(url)
|
|
579
|
+
|
|
580
|
+
# RFC 3986 safe characters: https://www.ietf.org/rfc/rfc3986.txt
|
|
581
|
+
pathSafe = "/:@!$&'()*+,;=" # path allows sub-delims, ":" and "@"
|
|
582
|
+
querySafe = "&=:/?@!$'()*+,;[]" # query allows pchar + "/" + "?"
|
|
583
|
+
|
|
584
|
+
quotedPath = quote(parts.path, safe=pathSafe)
|
|
585
|
+
quotedQuery = quote(parts.query, safe=querySafe)
|
|
586
|
+
|
|
587
|
+
return urlunsplit((parts.scheme, parts.netloc, quotedPath, quotedQuery, parts.fragment))
|
|
578
588
|
|
|
579
589
|
@staticmethod
|
|
580
590
|
def _getFileTimestamp(path: str) -> float:
|
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
# file generated by setuptools-scm
|
|
2
2
|
# don't change, don't track in version control
|
|
3
3
|
|
|
4
|
-
__all__ = [
|
|
4
|
+
__all__ = [
|
|
5
|
+
"__version__",
|
|
6
|
+
"__version_tuple__",
|
|
7
|
+
"version",
|
|
8
|
+
"version_tuple",
|
|
9
|
+
"__commit_id__",
|
|
10
|
+
"commit_id",
|
|
11
|
+
]
|
|
5
12
|
|
|
6
13
|
TYPE_CHECKING = False
|
|
7
14
|
if TYPE_CHECKING:
|
|
@@ -9,13 +16,19 @@ if TYPE_CHECKING:
|
|
|
9
16
|
from typing import Union
|
|
10
17
|
|
|
11
18
|
VERSION_TUPLE = Tuple[Union[int, str], ...]
|
|
19
|
+
COMMIT_ID = Union[str, None]
|
|
12
20
|
else:
|
|
13
21
|
VERSION_TUPLE = object
|
|
22
|
+
COMMIT_ID = object
|
|
14
23
|
|
|
15
24
|
version: str
|
|
16
25
|
__version__: str
|
|
17
26
|
__version_tuple__: VERSION_TUPLE
|
|
18
27
|
version_tuple: VERSION_TUPLE
|
|
28
|
+
commit_id: COMMIT_ID
|
|
29
|
+
__commit_id__: COMMIT_ID
|
|
19
30
|
|
|
20
|
-
__version__ = version = '2.37.
|
|
21
|
-
__version_tuple__ = version_tuple = (2, 37,
|
|
31
|
+
__version__ = version = '2.37.51'
|
|
32
|
+
__version_tuple__ = version_tuple = (2, 37, 51)
|
|
33
|
+
|
|
34
|
+
__commit_id__ = commit_id = 'gbe8fa5702'
|
|
@@ -8,7 +8,7 @@ from __future__ import annotations
|
|
|
8
8
|
import logging
|
|
9
9
|
import threading
|
|
10
10
|
from types import TracebackType
|
|
11
|
-
from typing import Any, BinaryIO
|
|
11
|
+
from typing import Any, BinaryIO, TypeVar
|
|
12
12
|
|
|
13
13
|
from arelle import PackageManager, PluginManager
|
|
14
14
|
from arelle.CntlrCmdLine import CntlrCmdLine, createCntlrAndPreloadPlugins
|
|
@@ -18,6 +18,9 @@ from arelle.RuntimeOptions import RuntimeOptions
|
|
|
18
18
|
|
|
19
19
|
_session_lock = threading.Lock()
|
|
20
20
|
|
|
21
|
+
# typing.Self can be used once Python 3.10 support is dropped.
|
|
22
|
+
Self = TypeVar("Self", bound="Session")
|
|
23
|
+
|
|
21
24
|
|
|
22
25
|
class Session:
|
|
23
26
|
"""
|
|
@@ -46,7 +49,7 @@ class Session:
|
|
|
46
49
|
"Session objects cannot be shared between threads. Create a new Session instance in each thread."
|
|
47
50
|
)
|
|
48
51
|
|
|
49
|
-
def __enter__(self) ->
|
|
52
|
+
def __enter__(self: Self) -> Self:
|
|
50
53
|
return self
|
|
51
54
|
|
|
52
55
|
def __exit__(
|
|
@@ -146,7 +146,6 @@ class PluginValidationDataExtension(PluginData):
|
|
|
146
146
|
return self._reportingPeriodContexts
|
|
147
147
|
contexts = []
|
|
148
148
|
for context in modelXbrl.contexts.values():
|
|
149
|
-
context = cast(ModelContext, context)
|
|
150
149
|
if context.isInstantPeriod or context.isForeverPeriod:
|
|
151
150
|
continue # Reporting period contexts can't be instant/forever contexts
|
|
152
151
|
if len(context.qnameDims) > 0:
|
{arelle_release-2.37.49 → arelle_release-2.37.51}/arelle/plugin/validate/EDINET/Constants.py
RENAMED
|
@@ -14,12 +14,21 @@ class FormType(Enum):
|
|
|
14
14
|
FORM_2_4 = '第二号の四様式'
|
|
15
15
|
FORM_2_7 = '第二号の七様式'
|
|
16
16
|
FORM_3 = '第三号様式'
|
|
17
|
+
FORM_4 = '第四号様式'
|
|
18
|
+
|
|
19
|
+
@property
|
|
20
|
+
def isStockReport(self) -> bool:
|
|
21
|
+
return self in STOCK_REPORT_FORMS
|
|
17
22
|
|
|
18
23
|
CORPORATE_FORMS =frozenset([
|
|
19
24
|
FormType.FORM_2_4,
|
|
20
25
|
FormType.FORM_2_7,
|
|
21
26
|
FormType.FORM_3,
|
|
22
27
|
])
|
|
28
|
+
STOCK_REPORT_FORMS = frozenset([
|
|
29
|
+
FormType.FORM_3,
|
|
30
|
+
FormType.FORM_4,
|
|
31
|
+
])
|
|
23
32
|
qnEdinetManifestInsert = qname("{http://disclosure.edinet-fsa.go.jp/2013/manifest}insert")
|
|
24
33
|
qnEdinetManifestInstance = qname("{http://disclosure.edinet-fsa.go.jp/2013/manifest}instance")
|
|
25
34
|
qnEdinetManifestItem = qname("{http://disclosure.edinet-fsa.go.jp/2013/manifest}item")
|
|
@@ -28,3 +37,5 @@ qnEdinetManifestList = qname("{http://disclosure.edinet-fsa.go.jp/2013/manifest}
|
|
|
28
37
|
qnEdinetManifestTitle = qname("{http://disclosure.edinet-fsa.go.jp/2013/manifest}title")
|
|
29
38
|
qnEdinetManifestTocComposition = qname("{http://disclosure.edinet-fsa.go.jp/2013/manifest}tocComposition")
|
|
30
39
|
xhtmlDtdExtension = "xhtml1-strict-ix.dtd"
|
|
40
|
+
|
|
41
|
+
COVER_PAGE_FILENAME_PREFIX = "0000000_header_"
|
|
@@ -12,11 +12,11 @@ from typing import TYPE_CHECKING
|
|
|
12
12
|
|
|
13
13
|
from arelle.Cntlr import Cntlr
|
|
14
14
|
from arelle.FileSource import FileSource
|
|
15
|
-
from arelle.ModelXbrl import ModelXbrl
|
|
16
15
|
from arelle.typing import TypeGetText
|
|
17
16
|
from arelle.utils.PluginData import PluginData
|
|
18
|
-
from .
|
|
19
|
-
from .
|
|
17
|
+
from . import Constants
|
|
18
|
+
from .ReportFolderType import ReportFolderType
|
|
19
|
+
from .UploadContents import UploadContents, UploadPathInfo
|
|
20
20
|
|
|
21
21
|
if TYPE_CHECKING:
|
|
22
22
|
from .ManifestInstance import ManifestInstance
|
|
@@ -50,35 +50,46 @@ class ControllerPluginData(PluginData):
|
|
|
50
50
|
@lru_cache(1)
|
|
51
51
|
def getUploadContents(self, fileSource: FileSource) -> UploadContents:
|
|
52
52
|
uploadFilepaths = self.getUploadFilepaths(fileSource)
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
directories = []
|
|
56
|
-
forms = defaultdict(list)
|
|
53
|
+
reports = defaultdict(list)
|
|
54
|
+
uploadPaths = {}
|
|
57
55
|
for path in uploadFilepaths:
|
|
58
|
-
|
|
59
|
-
if len(parents) == 0:
|
|
60
|
-
continue
|
|
61
|
-
if parents[0] == 'XBRL':
|
|
62
|
-
if len(parents) > 1:
|
|
63
|
-
formName = parents[1]
|
|
64
|
-
instanceType = InstanceType.parse(formName)
|
|
65
|
-
if instanceType is not None:
|
|
66
|
-
forms[instanceType].append(path)
|
|
67
|
-
continue
|
|
68
|
-
formName = parents[0]
|
|
69
|
-
instanceType = InstanceType.parse(formName)
|
|
70
|
-
if instanceType is not None:
|
|
71
|
-
amendmentPaths[instanceType].append(path)
|
|
56
|
+
if len(path.parts) == 0:
|
|
72
57
|
continue
|
|
73
|
-
if len(
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
58
|
+
parents = list(reversed([p.name for p in path.parents if len(p.name) > 0]))
|
|
59
|
+
reportFolderType = None
|
|
60
|
+
isCorrection = True
|
|
61
|
+
isDirectory = len(path.suffix) == 0
|
|
62
|
+
isInSubdirectory = False
|
|
63
|
+
reportPath = None
|
|
64
|
+
if len(parents) > 0:
|
|
65
|
+
isCorrection = parents[0] != 'XBRL'
|
|
66
|
+
if not isCorrection:
|
|
67
|
+
if len(parents) > 1:
|
|
68
|
+
formName = parents[1]
|
|
69
|
+
isInSubdirectory = len(parents) > 2
|
|
70
|
+
reportFolderType = ReportFolderType.parse(formName)
|
|
71
|
+
if reportFolderType is None:
|
|
72
|
+
formName = parents[0]
|
|
73
|
+
isInSubdirectory = len(parents) > 1
|
|
74
|
+
reportFolderType = ReportFolderType.parse(formName)
|
|
75
|
+
if reportFolderType is not None:
|
|
76
|
+
reportPath = Path(reportFolderType.value) if isCorrection else Path("XBRL") / reportFolderType.value
|
|
77
|
+
if not isCorrection:
|
|
78
|
+
reports[reportFolderType].append(path)
|
|
79
|
+
uploadPaths[path] = UploadPathInfo(
|
|
80
|
+
isAttachment=reportFolderType is not None and reportFolderType.isAttachment,
|
|
81
|
+
isCorrection=isCorrection,
|
|
82
|
+
isCoverPage=not isDirectory and path.stem.startswith(Constants.COVER_PAGE_FILENAME_PREFIX),
|
|
83
|
+
isDirectory=len(path.suffix) == 0,
|
|
84
|
+
isRoot=len(path.parts) == 1,
|
|
85
|
+
isSubdirectory=isInSubdirectory or (isDirectory and reportFolderType is not None),
|
|
86
|
+
path=path,
|
|
87
|
+
reportFolderType=reportFolderType,
|
|
88
|
+
reportPath=reportPath,
|
|
89
|
+
)
|
|
77
90
|
return UploadContents(
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
instances={k: frozenset(v) for k, v in forms.items() if len(v) > 0},
|
|
81
|
-
unknownPaths=frozenset(unknownPaths)
|
|
91
|
+
reports={k: frozenset(v) for k, v in reports.items() if len(v) > 0},
|
|
92
|
+
uploadPaths=uploadPaths
|
|
82
93
|
)
|
|
83
94
|
|
|
84
95
|
@lru_cache(1)
|
|
@@ -7,15 +7,17 @@ from collections import defaultdict
|
|
|
7
7
|
from dataclasses import dataclass
|
|
8
8
|
from decimal import Decimal
|
|
9
9
|
from functools import lru_cache
|
|
10
|
+
from lxml.etree import DTD, XML
|
|
10
11
|
from operator import attrgetter
|
|
11
12
|
from typing import Callable, Hashable, Iterable, cast
|
|
12
13
|
|
|
14
|
+
import os
|
|
13
15
|
import regex
|
|
14
16
|
|
|
15
17
|
from arelle.LinkbaseType import LinkbaseType
|
|
16
18
|
from arelle.ModelDocument import Type as ModelDocumentType
|
|
17
19
|
from arelle.ModelDtsObject import ModelConcept
|
|
18
|
-
from arelle.ModelInstanceObject import ModelFact, ModelUnit, ModelContext
|
|
20
|
+
from arelle.ModelInstanceObject import ModelFact, ModelUnit, ModelContext, ModelInlineFact
|
|
19
21
|
from arelle.ModelObject import ModelObject
|
|
20
22
|
from arelle.ModelValue import QName, qname
|
|
21
23
|
from arelle.ModelXbrl import ModelXbrl
|
|
@@ -24,7 +26,7 @@ from arelle.ValidateDuplicateFacts import getDeduplicatedFacts, DeduplicationTyp
|
|
|
24
26
|
from arelle.XmlValidate import VALID
|
|
25
27
|
from arelle.typing import TypeGetText
|
|
26
28
|
from arelle.utils.PluginData import PluginData
|
|
27
|
-
from .Constants import CORPORATE_FORMS
|
|
29
|
+
from .Constants import CORPORATE_FORMS, FormType, xhtmlDtdExtension
|
|
28
30
|
from .ControllerPluginData import ControllerPluginData
|
|
29
31
|
from .ManifestInstance import ManifestInstance
|
|
30
32
|
from .Statement import Statement, STATEMENTS, BalanceSheet, StatementInstance, StatementType
|
|
@@ -54,7 +56,7 @@ class PluginValidationDataExtension(PluginData):
|
|
|
54
56
|
def __init__(self, name: str):
|
|
55
57
|
super().__init__(name)
|
|
56
58
|
jpcrpEsrNamespace = "http://disclosure.edinet-fsa.go.jp/taxonomy/jpcrp-esr/2024-11-01/jpcrp-esr_cor"
|
|
57
|
-
jpcrpNamespace = 'http://disclosure.edinet-fsa.go.jp/taxonomy/jpcrp/2024-11-01/jpcrp_cor'
|
|
59
|
+
self.jpcrpNamespace = 'http://disclosure.edinet-fsa.go.jp/taxonomy/jpcrp/2024-11-01/jpcrp_cor'
|
|
58
60
|
jpdeiNamespace = 'http://disclosure.edinet-fsa.go.jp/taxonomy/jpdei/2013-08-31/jpdei_cor'
|
|
59
61
|
jpigpNamespace = "http://disclosure.edinet-fsa.go.jp/taxonomy/jpigp/2024-11-01/jpigp_cor"
|
|
60
62
|
jppfsNamespace = "http://disclosure.edinet-fsa.go.jp/taxonomy/jppfs/2024-11-01/jppfs_cor"
|
|
@@ -63,11 +65,12 @@ class PluginValidationDataExtension(PluginData):
|
|
|
63
65
|
self.assetsIfrsQn = qname(jpigpNamespace, 'AssetsIFRS')
|
|
64
66
|
self.consolidatedOrNonConsolidatedAxisQn = qname(jppfsNamespace, 'ConsolidatedOrNonConsolidatedAxis')
|
|
65
67
|
self.documentTypeDeiQn = qname(jpdeiNamespace, 'DocumentTypeDEI')
|
|
68
|
+
self.issuedSharesTotalNumberOfSharesEtcQn = qname(self.jpcrpNamespace, 'IssuedSharesTotalNumberOfSharesEtcTextBlock')
|
|
66
69
|
self.jpcrpEsrFilingDateCoverPageQn = qname(jpcrpEsrNamespace, 'FilingDateCoverPage')
|
|
67
|
-
self.jpcrpFilingDateCoverPageQn = qname(jpcrpNamespace, 'FilingDateCoverPage')
|
|
70
|
+
self.jpcrpFilingDateCoverPageQn = qname(self.jpcrpNamespace, 'FilingDateCoverPage')
|
|
68
71
|
self.jpspsFilingDateCoverPageQn = qname(jpspsNamespace, 'FilingDateCoverPage')
|
|
69
72
|
self.nonConsolidatedMemberQn = qname(jppfsNamespace, "NonConsolidatedMember")
|
|
70
|
-
self.ratioOfFemaleDirectorsAndOtherOfficersQn = qname(jpcrpNamespace, "RatioOfFemaleDirectorsAndOtherOfficers")
|
|
73
|
+
self.ratioOfFemaleDirectorsAndOtherOfficersQn = qname(self.jpcrpNamespace, "RatioOfFemaleDirectorsAndOtherOfficers")
|
|
71
74
|
|
|
72
75
|
self.contextIdPattern = regex.compile(r'(Prior[1-9]Year|CurrentYear|Prior[1-9]Interim|Interim)(Duration|Instant)')
|
|
73
76
|
|
|
@@ -103,6 +106,12 @@ class PluginValidationDataExtension(PluginData):
|
|
|
103
106
|
return True
|
|
104
107
|
return False
|
|
105
108
|
|
|
109
|
+
def isCorporateReport(self, modelXbrl: ModelXbrl) -> bool:
|
|
110
|
+
return self.jpcrpNamespace in modelXbrl.namespaceDocs
|
|
111
|
+
|
|
112
|
+
def isStockForm(self, modelXbrl: ModelXbrl) -> bool:
|
|
113
|
+
documentTypes = self.getDocumentTypes(modelXbrl)
|
|
114
|
+
return any(documentType == form.value for form in FormType if form.isStockReport for documentType in documentTypes)
|
|
106
115
|
|
|
107
116
|
def getBalanceSheets(self, modelXbrl: ModelXbrl, statement: Statement) -> list[BalanceSheet]:
|
|
108
117
|
"""
|
|
@@ -159,6 +168,22 @@ class PluginValidationDataExtension(PluginData):
|
|
|
159
168
|
)
|
|
160
169
|
return balanceSheets
|
|
161
170
|
|
|
171
|
+
def getProblematicTextBlocks(self, modelXbrl: ModelXbrl) -> list[ModelInlineFact]:
|
|
172
|
+
problematicTextBlocks: list[ModelInlineFact] = []
|
|
173
|
+
dtd = DTD(os.path.join(modelXbrl.modelManager.cntlr.configDir, xhtmlDtdExtension))
|
|
174
|
+
htmlBodyTemplate = "<body><div>\n{0}\n</div></body>\n"
|
|
175
|
+
for fact in modelXbrl.facts:
|
|
176
|
+
concept = fact.concept
|
|
177
|
+
if isinstance(fact, ModelInlineFact) and not fact.isNil and concept is not None and concept.isTextBlock and not fact.isEscaped:
|
|
178
|
+
xmlBody = htmlBodyTemplate.format(fact.value)
|
|
179
|
+
try:
|
|
180
|
+
textblockXml = XML(xmlBody)
|
|
181
|
+
if not dtd.validate(textblockXml):
|
|
182
|
+
problematicTextBlocks.append(fact)
|
|
183
|
+
except Exception:
|
|
184
|
+
problematicTextBlocks.append(fact)
|
|
185
|
+
return problematicTextBlocks
|
|
186
|
+
|
|
162
187
|
@lru_cache(1)
|
|
163
188
|
def getStatementInstance(self, modelXbrl: ModelXbrl, statement: Statement) -> StatementInstance | None:
|
|
164
189
|
if statement.roleUri not in modelXbrl.roleTypes:
|
|
@@ -8,16 +8,15 @@ from functools import cached_property, lru_cache
|
|
|
8
8
|
from pathlib import Path
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
class
|
|
11
|
+
class ReportFolderType(Enum):
|
|
12
12
|
ATTACH_DOC = "AttachDoc"
|
|
13
13
|
AUDIT_DOC = "AuditDoc"
|
|
14
|
-
ENGLISH_DOC = "EnglishDoc"
|
|
15
14
|
PRIVATE_ATTACH = "PrivateAttach"
|
|
16
15
|
PRIVATE_DOC = "PrivateDoc"
|
|
17
16
|
PUBLIC_DOC = "PublicDoc"
|
|
18
17
|
|
|
19
18
|
@classmethod
|
|
20
|
-
def parse(cls, value: str) ->
|
|
19
|
+
def parse(cls, value: str) -> ReportFolderType | None:
|
|
21
20
|
try:
|
|
22
21
|
return cls(value)
|
|
23
22
|
except ValueError:
|
|
@@ -27,6 +26,10 @@ class InstanceType(Enum):
|
|
|
27
26
|
def extensionCategory(self) -> ExtensionCategory | None:
|
|
28
27
|
return FORM_TYPE_EXTENSION_CATEGORIES.get(self, None)
|
|
29
28
|
|
|
29
|
+
@cached_property
|
|
30
|
+
def isAttachment(self) -> bool:
|
|
31
|
+
return "Attach" in self.value
|
|
32
|
+
|
|
30
33
|
@cached_property
|
|
31
34
|
def manifestName(self) -> str:
|
|
32
35
|
return f'manifest_{self.value}.xml'
|
|
@@ -49,7 +52,6 @@ class InstanceType(Enum):
|
|
|
49
52
|
class ExtensionCategory(Enum):
|
|
50
53
|
ATTACH = 'ATTACH'
|
|
51
54
|
DOC = 'DOC'
|
|
52
|
-
ENGLISH_DOC = 'ENGLISH_DOC'
|
|
53
55
|
|
|
54
56
|
def getValidExtensions(self, isAmendment: bool, isSubdirectory: bool) -> frozenset[str] | None:
|
|
55
57
|
amendmentMap = VALID_EXTENSIONS[isAmendment]
|
|
@@ -60,12 +62,11 @@ class ExtensionCategory(Enum):
|
|
|
60
62
|
|
|
61
63
|
|
|
62
64
|
FORM_TYPE_EXTENSION_CATEGORIES = {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
InstanceType.PUBLIC_DOC: ExtensionCategory.DOC,
|
|
65
|
+
ReportFolderType.ATTACH_DOC: ExtensionCategory.ATTACH,
|
|
66
|
+
ReportFolderType.AUDIT_DOC: ExtensionCategory.DOC,
|
|
67
|
+
ReportFolderType.PRIVATE_ATTACH: ExtensionCategory.ATTACH,
|
|
68
|
+
ReportFolderType.PRIVATE_DOC: ExtensionCategory.DOC,
|
|
69
|
+
ReportFolderType.PUBLIC_DOC: ExtensionCategory.DOC,
|
|
69
70
|
}
|
|
70
71
|
|
|
71
72
|
|
|
@@ -74,7 +75,6 @@ IMAGE_EXTENSIONS = frozenset({'.jpeg', '.jpg', '.gif', '.png'})
|
|
|
74
75
|
ASSET_EXTENSIONS = frozenset(HTML_EXTENSIONS | IMAGE_EXTENSIONS)
|
|
75
76
|
XBRL_EXTENSIONS = frozenset(HTML_EXTENSIONS | {'.xml', '.xsd'})
|
|
76
77
|
ATTACH_EXTENSIONS = frozenset(HTML_EXTENSIONS | {'.pdf', })
|
|
77
|
-
ENGLISH_DOC_EXTENSIONS = frozenset(ASSET_EXTENSIONS | frozenset({'.pdf', '.xml', '.txt'}))
|
|
78
78
|
|
|
79
79
|
# Is Amendment -> Category -> Is Subdirectory
|
|
80
80
|
VALID_EXTENSIONS = {
|
|
@@ -97,9 +97,5 @@ VALID_EXTENSIONS = {
|
|
|
97
97
|
False: HTML_EXTENSIONS,
|
|
98
98
|
True: ASSET_EXTENSIONS,
|
|
99
99
|
},
|
|
100
|
-
ExtensionCategory.ENGLISH_DOC: {
|
|
101
|
-
False: ENGLISH_DOC_EXTENSIONS,
|
|
102
|
-
True: ENGLISH_DOC_EXTENSIONS,
|
|
103
|
-
},
|
|
104
100
|
},
|
|
105
101
|
}
|