arelle-release 2.17.1__py3-none-any.whl → 2.37.71__py3-none-any.whl

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.
Files changed (893) hide show
  1. arelle/Aspect.py +6 -3
  2. arelle/BetaFeatures.py +3 -0
  3. arelle/Cntlr.py +117 -413
  4. arelle/CntlrCmdLine.py +364 -227
  5. arelle/CntlrQuickBooks.py +4 -2
  6. arelle/CntlrWebMain.py +179 -119
  7. arelle/CntlrWinMain.py +342 -124
  8. arelle/DialogAbout.py +1 -1
  9. arelle/DialogArcroleGroup.py +1 -1
  10. arelle/DialogFind.py +1 -1
  11. arelle/DialogFormulaParameters.py +2 -2
  12. arelle/DialogLanguage.py +45 -36
  13. arelle/DialogNewFactItem.py +1 -1
  14. arelle/DialogOpenArchive.py +30 -34
  15. arelle/DialogPackageManager.py +11 -8
  16. arelle/DialogPluginManager.py +43 -89
  17. arelle/DialogRssWatch.py +2 -2
  18. arelle/DialogURL.py +1 -1
  19. arelle/DialogUserPassword.py +1 -1
  20. arelle/DisclosureSystem.py +69 -1
  21. arelle/ErrorManager.py +321 -0
  22. arelle/FileSource.py +201 -99
  23. arelle/FunctionFn.py +44 -5
  24. arelle/FunctionIxt.py +16 -13
  25. arelle/FunctionUtil.py +1 -1
  26. arelle/FunctionXfi.py +68 -24
  27. arelle/FunctionXs.py +1 -1
  28. arelle/HtmlUtil.py +5 -4
  29. arelle/LeiUtil.py +63 -43
  30. arelle/LinkbaseType.py +94 -0
  31. arelle/LocalViewer.py +8 -2
  32. arelle/Locale.py +239 -79
  33. arelle/ModelDocument.py +180 -48
  34. arelle/ModelDtsObject.py +32 -27
  35. arelle/ModelFormulaObject.py +14 -6
  36. arelle/ModelInstanceObject.py +43 -14
  37. arelle/ModelManager.py +6 -1
  38. arelle/ModelObject.py +12 -8
  39. arelle/ModelObjectFactory.py +18 -2
  40. arelle/ModelRelationshipSet.py +46 -3
  41. arelle/ModelRenderingObject.py +899 -951
  42. arelle/ModelRssItem.py +2 -4
  43. arelle/ModelTestcaseObject.py +41 -4
  44. arelle/ModelValue.py +42 -14
  45. arelle/ModelVersReport.py +1 -1
  46. arelle/ModelXbrl.py +133 -273
  47. arelle/PackageManager.py +202 -176
  48. arelle/PluginManager.py +551 -239
  49. arelle/PluginUtils.py +54 -0
  50. arelle/PrototypeInstanceObject.py +53 -12
  51. arelle/PythonUtil.py +166 -25
  52. arelle/RuntimeOptions.py +32 -18
  53. arelle/SocketUtils.py +3 -0
  54. arelle/SystemInfo.py +1 -1
  55. arelle/TkTableWrapper.py +33 -5
  56. arelle/UITkTable.py +27 -21
  57. arelle/Updater.py +7 -3
  58. arelle/UrlUtil.py +6 -2
  59. arelle/Validate.py +596 -402
  60. arelle/ValidateDuplicateFacts.py +584 -0
  61. arelle/ValidateFileSource.py +38 -0
  62. arelle/ValidateFilingText.py +46 -29
  63. arelle/ValidateInfoset.py +104 -32
  64. arelle/ValidateUtr.py +31 -4
  65. arelle/ValidateXbrl.py +144 -120
  66. arelle/ValidateXbrlCalcs.py +51 -66
  67. arelle/ValidateXbrlDTS.py +98 -29
  68. arelle/Version.py +2 -7
  69. arelle/ViewFile.py +2 -0
  70. arelle/ViewFileDTS.py +7 -2
  71. arelle/ViewFileFactList.py +1 -1
  72. arelle/ViewFileFactTable.py +4 -4
  73. arelle/ViewFileRelationshipSet.py +36 -19
  74. arelle/ViewFileRenderedGrid.py +164 -753
  75. arelle/ViewFileRenderedLayout.py +174 -0
  76. arelle/ViewFileRenderedStructure.py +108 -0
  77. arelle/ViewWinDTS.py +4 -1
  78. arelle/ViewWinFactList.py +1 -1
  79. arelle/ViewWinFactTable.py +1 -1
  80. arelle/ViewWinRelationshipSet.py +14 -8
  81. arelle/ViewWinRenderedGrid.py +397 -287
  82. arelle/ViewWinRssFeed.py +4 -0
  83. arelle/ViewWinTree.py +15 -9
  84. arelle/ViewWinXml.py +1 -1
  85. arelle/WebCache.py +510 -272
  86. arelle/XbrlConst.py +202 -196
  87. arelle/XbrlUtil.py +2 -1
  88. arelle/XhtmlValidate.py +9 -23
  89. arelle/XmlUtil.py +24 -19
  90. arelle/XmlValidate.py +95 -67
  91. arelle/XmlValidateParticles.py +4 -4
  92. arelle/_version.py +33 -3
  93. arelle/api/Session.py +183 -0
  94. arelle/config/creationSoftwareNames.json +24 -10
  95. arelle/config/disclosuresystems.xml +1 -1
  96. arelle/config/disclosuresystems.xsd +3 -0
  97. arelle/config/sbr-text-formatting.xsd +737 -0
  98. arelle/conformance/CSVTestcaseLoader.py +102 -0
  99. arelle/formula/FactAspectsCache.py +10 -4
  100. arelle/formula/ValidateFormula.py +82 -194
  101. arelle/formula/XPathContext.py +42 -28
  102. arelle/formula/XPathParser.py +15 -9
  103. arelle/locale/ar_EG/LC_MESSAGES/ar_EG.po +3 -4
  104. arelle/locale/messages.pot +1 -2
  105. arelle/locale/ru/LC_MESSAGES/ru.po +2 -2
  106. arelle/logging/formatters/LogFormatter.py +47 -0
  107. arelle/logging/handlers/LogHandlerWithXml.py +94 -0
  108. arelle/logging/handlers/LogToBufferHandler.py +20 -0
  109. arelle/logging/handlers/LogToPrintHandler.py +41 -0
  110. arelle/logging/handlers/LogToXmlHandler.py +244 -0
  111. arelle/logging/handlers/StructuredMessageLogHandler.py +74 -0
  112. arelle/model/CommentBase.py +3 -0
  113. arelle/model/ElementBase.py +3 -0
  114. arelle/model/PIBase.py +3 -0
  115. arelle/model/__init__.py +3 -0
  116. arelle/oim/Load.py +2869 -0
  117. arelle/oim/Validate.py +155 -0
  118. arelle/oim/xml/Save.py +21 -0
  119. arelle/packages/PackageConst.py +7 -0
  120. arelle/packages/PackageType.py +13 -0
  121. arelle/packages/PackageUtils.py +22 -0
  122. arelle/packages/PackageValidation.py +200 -0
  123. arelle/packages/report/DetectReportPackage.py +13 -0
  124. arelle/packages/report/ReportPackage.py +265 -0
  125. arelle/packages/report/ReportPackageConst.py +79 -0
  126. arelle/packages/report/ReportPackageValidator.py +207 -0
  127. arelle/plugin/EdgarRendererAllReports.py +12 -12
  128. arelle/plugin/OimTaxonomy/ModelValueMore.py +15 -0
  129. arelle/plugin/OimTaxonomy/ValidateDTS.py +484 -0
  130. arelle/plugin/OimTaxonomy/ViewXbrlTxmyObj.py +239 -0
  131. arelle/plugin/OimTaxonomy/XbrlAbstract.py +16 -0
  132. arelle/plugin/OimTaxonomy/XbrlConcept.py +68 -0
  133. arelle/plugin/OimTaxonomy/XbrlConst.py +261 -0
  134. arelle/plugin/OimTaxonomy/XbrlCube.py +91 -0
  135. arelle/plugin/OimTaxonomy/XbrlDimension.py +38 -0
  136. arelle/plugin/OimTaxonomy/XbrlDts.py +152 -0
  137. arelle/plugin/OimTaxonomy/XbrlEntity.py +16 -0
  138. arelle/plugin/OimTaxonomy/XbrlGroup.py +22 -0
  139. arelle/plugin/OimTaxonomy/XbrlImportedTaxonomy.py +22 -0
  140. arelle/plugin/OimTaxonomy/XbrlLabel.py +31 -0
  141. arelle/plugin/OimTaxonomy/XbrlNetwork.py +100 -0
  142. arelle/plugin/OimTaxonomy/XbrlProperty.py +28 -0
  143. arelle/plugin/OimTaxonomy/XbrlReference.py +33 -0
  144. arelle/plugin/OimTaxonomy/XbrlReport.py +24 -0
  145. arelle/plugin/OimTaxonomy/XbrlTableTemplate.py +35 -0
  146. arelle/plugin/OimTaxonomy/XbrlTaxonomy.py +93 -0
  147. arelle/plugin/OimTaxonomy/XbrlTaxonomyObject.py +154 -0
  148. arelle/plugin/OimTaxonomy/XbrlTransform.py +17 -0
  149. arelle/plugin/OimTaxonomy/XbrlTypes.py +23 -0
  150. arelle/plugin/OimTaxonomy/XbrlUnit.py +17 -0
  151. arelle/plugin/OimTaxonomy/__init__.py +1037 -0
  152. arelle/plugin/OimTaxonomy/resources/iso4217.json +4479 -0
  153. arelle/plugin/OimTaxonomy/resources/oim-taxonomy-schema.json +935 -0
  154. arelle/plugin/OimTaxonomy/resources/ref.json +333 -0
  155. arelle/plugin/OimTaxonomy/resources/transform-types.json +2481 -0
  156. arelle/plugin/OimTaxonomy/resources/types.json +727 -0
  157. arelle/plugin/OimTaxonomy/resources/utr.json +3046 -0
  158. arelle/plugin/OimTaxonomy/resources/xbrlSpec.json +1082 -0
  159. arelle/plugin/formulaLoader.py +3 -3
  160. arelle/plugin/formulaSaver.py +4 -4
  161. arelle/plugin/inlineXbrlDocumentSet.py +331 -102
  162. arelle/plugin/internet/proxyNTLM/HTTPNtlmAuthHandler.py +1 -1
  163. arelle/plugin/loadFromExcel.py +13 -10
  164. arelle/plugin/loadFromOIM.py +16 -3096
  165. arelle/plugin/logging/saveMessages.py +1 -1
  166. arelle/plugin/saveHtmlEBAtables.py +293 -213
  167. arelle/plugin/saveLoadableOIM.py +652 -361
  168. arelle/plugin/saveOIMTaxonomy.py +311 -0
  169. arelle/plugin/streamingExtensions.py +1 -1
  170. arelle/plugin/systemInfo.py +46 -0
  171. arelle/plugin/transforms/tester.py +4 -4
  172. arelle/plugin/validate/CIPC/Const.py +18 -0
  173. arelle/plugin/validate/CIPC/__init__.py +34 -13
  174. arelle/plugin/validate/DBA/DisclosureSystems.py +12 -0
  175. arelle/plugin/validate/DBA/PluginValidationDataExtension.py +165 -0
  176. arelle/plugin/validate/DBA/ValidationPluginExtension.py +545 -0
  177. arelle/plugin/validate/DBA/__init__.py +49 -0
  178. arelle/plugin/validate/DBA/resources/config.xml +21 -0
  179. arelle/plugin/validate/DBA/rules/__init__.py +323 -0
  180. arelle/plugin/validate/DBA/rules/fr.py +1377 -0
  181. arelle/plugin/validate/DBA/rules/tc.py +45 -0
  182. arelle/plugin/validate/DBA/rules/th.py +172 -0
  183. arelle/plugin/validate/DBA/rules/tm.py +351 -0
  184. arelle/plugin/validate/DBA/rules/tr.py +373 -0
  185. arelle/plugin/validate/EBA/__init__.py +11 -12
  186. arelle/plugin/validate/EDINET/Constants.py +208 -0
  187. arelle/plugin/validate/EDINET/ContextRequirement.py +58 -0
  188. arelle/plugin/validate/EDINET/ControllerPluginData.py +298 -0
  189. arelle/plugin/validate/EDINET/CoverItemRequirements.py +42 -0
  190. arelle/plugin/validate/EDINET/DeiRequirements.py +118 -0
  191. arelle/plugin/validate/EDINET/DisclosureSystems.py +1 -0
  192. arelle/plugin/validate/EDINET/FilingFormat.py +275 -0
  193. arelle/plugin/validate/EDINET/FormType.py +134 -0
  194. arelle/plugin/validate/EDINET/ManifestInstance.py +236 -0
  195. arelle/plugin/validate/EDINET/PluginValidationDataExtension.py +640 -0
  196. arelle/plugin/validate/EDINET/ReportFolderType.py +162 -0
  197. arelle/plugin/validate/EDINET/Statement.py +139 -0
  198. arelle/plugin/validate/EDINET/TableOfContentsBuilder.py +493 -0
  199. arelle/plugin/validate/EDINET/UploadContents.py +48 -0
  200. arelle/plugin/validate/EDINET/ValidationPluginExtension.py +64 -0
  201. arelle/plugin/validate/EDINET/__init__.py +109 -0
  202. arelle/plugin/validate/EDINET/resources/config.xml +22 -0
  203. arelle/plugin/validate/EDINET/resources/cover-item-requirements.json +793 -0
  204. arelle/plugin/validate/EDINET/resources/dei-requirements.csv +27 -0
  205. arelle/plugin/validate/EDINET/resources/edinet-taxonomies.xml +62 -0
  206. arelle/plugin/validate/EDINET/rules/contexts.py +547 -0
  207. arelle/plugin/validate/EDINET/rules/edinet.py +1991 -0
  208. arelle/plugin/validate/EDINET/rules/frta.py +301 -0
  209. arelle/plugin/validate/EDINET/rules/gfm.py +2394 -0
  210. arelle/plugin/validate/EDINET/rules/manifests.py +88 -0
  211. arelle/plugin/validate/EDINET/rules/upload.py +1370 -0
  212. arelle/plugin/validate/ESEF/Const.py +16 -75
  213. arelle/plugin/validate/ESEF/Dimensions.py +2 -2
  214. arelle/plugin/validate/ESEF/ESEF_2021/DTS.py +6 -1
  215. arelle/plugin/validate/ESEF/ESEF_2021/Image.py +7 -4
  216. arelle/plugin/validate/ESEF/ESEF_2021/ValidateXbrlFinally.py +80 -57
  217. arelle/plugin/validate/ESEF/ESEF_Current/DTS.py +60 -22
  218. arelle/plugin/validate/ESEF/ESEF_Current/ValidateXbrlFinally.py +272 -133
  219. arelle/plugin/validate/ESEF/Util.py +5 -19
  220. arelle/plugin/validate/ESEF/__init__.py +61 -46
  221. arelle/plugin/validate/ESEF/resources/authority-validations.json +120 -10
  222. arelle/plugin/validate/ESEF/resources/config.xml +44 -3
  223. arelle/plugin/validate/FERC/__init__.py +31 -18
  224. arelle/plugin/validate/FERC/config.xml +18 -18
  225. arelle/plugin/validate/NL/DisclosureSystems.py +19 -3
  226. arelle/plugin/validate/NL/PluginValidationDataExtension.py +710 -7
  227. arelle/plugin/validate/NL/ValidationPluginExtension.py +117 -12
  228. arelle/plugin/validate/NL/__init__.py +21 -10
  229. arelle/plugin/validate/NL/resources/config.xml +27 -6
  230. arelle/plugin/validate/NL/rules/br_kvk.py +81 -21
  231. arelle/plugin/validate/NL/rules/fg_nl.py +292 -0
  232. arelle/plugin/validate/NL/rules/fr_kvk.py +60 -7
  233. arelle/plugin/validate/NL/rules/fr_nl.py +705 -24
  234. arelle/plugin/validate/NL/rules/nl_kvk.py +2182 -0
  235. arelle/plugin/validate/ROS/DisclosureSystems.py +1 -0
  236. arelle/plugin/validate/ROS/PluginValidationDataExtension.py +109 -0
  237. arelle/plugin/validate/ROS/ValidationPluginExtension.py +27 -0
  238. arelle/plugin/validate/ROS/__init__.py +28 -341
  239. arelle/plugin/validate/ROS/resources/config.xml +20 -0
  240. arelle/plugin/validate/ROS/rules/__init__.py +56 -0
  241. arelle/plugin/validate/ROS/rules/ros.py +393 -0
  242. arelle/plugin/validate/UK/ValidateUK.py +1372 -0
  243. arelle/plugin/validate/{HMRC → UK}/__init__.py +195 -189
  244. arelle/plugin/validate/{HMRC → UK}/config.xml +1 -1
  245. arelle/plugin/xbrlDB/SqlDb.py +1 -1
  246. arelle/plugin/xbrlDB/XbrlOpenSqlDB.py +5 -5
  247. arelle/plugin/xbrlDB/XbrlPublicPostgresDB.py +1 -1
  248. arelle/plugin/xbrlDB/XbrlSemanticJsonDB.py +1 -1
  249. arelle/plugin/xbrlDB/XbrlSemanticRdfDB.py +1 -1
  250. arelle/plugin/xbrlDB/__init__.py +4 -1
  251. arelle/{RenderingEvaluator.py → rendering/RenderingEvaluator.py} +120 -99
  252. arelle/rendering/RenderingLayout.py +476 -0
  253. arelle/rendering/RenderingResolution.py +814 -0
  254. arelle/resources/cache/http/www.eurofiling.info/eu/fr/xbrl/ext/filing-indicators.xsd +20 -0
  255. arelle/resources/cache/http/www.w3.org/2001/03/xml.xsd +117 -0
  256. arelle/resources/cache/http/www.w3.org/2001/XMLSchema.xsd +2534 -0
  257. arelle/resources/cache/http/www.w3.org/2001/xml.xsd +287 -0
  258. arelle/resources/cache/http/www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd +779 -0
  259. arelle/resources/cache/http/www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd +486 -0
  260. arelle/resources/cache/http/www.xbrl.org/2003/xl-2003-12-31.xsd +251 -0
  261. arelle/resources/cache/http/www.xbrl.org/2003/xlink-2003-12-31.xsd +121 -0
  262. arelle/resources/cache/http/www.xbrl.org/2004/ref-2004-08-10.xsd +129 -0
  263. arelle/resources/cache/http/www.xbrl.org/2005/xbrldt-2005.xsd +53 -0
  264. arelle/resources/cache/http/www.xbrl.org/2006/ref-2006-02-27.xsd +120 -0
  265. arelle/resources/cache/http/www.xbrl.org/2006/xbrldi-2006.xsd +41 -0
  266. arelle/resources/cache/http/www.xbrl.org/2008/boolean-filter.xsd +51 -0
  267. arelle/resources/cache/http/www.xbrl.org/2008/concept-filter.xsd +127 -0
  268. arelle/resources/cache/http/www.xbrl.org/2008/conformance.xsd +116 -0
  269. arelle/resources/cache/http/www.xbrl.org/2008/conformanceFunction.xsd +51 -0
  270. arelle/resources/cache/http/www.xbrl.org/2008/consistency-assertion.xsd +66 -0
  271. arelle/resources/cache/http/www.xbrl.org/2008/dimension-filter.xsd +86 -0
  272. arelle/resources/cache/http/www.xbrl.org/2008/entity-filter.xsd +92 -0
  273. arelle/resources/cache/http/www.xbrl.org/2008/existence-assertion.xsd +44 -0
  274. arelle/resources/cache/http/www.xbrl.org/2008/formula.xsd +261 -0
  275. arelle/resources/cache/http/www.xbrl.org/2008/function.xsd +90 -0
  276. arelle/resources/cache/http/www.xbrl.org/2008/general-filter.xsd +38 -0
  277. arelle/resources/cache/http/www.xbrl.org/2008/generic-label.xsd +80 -0
  278. arelle/resources/cache/http/www.xbrl.org/2008/generic-link.xsd +81 -0
  279. arelle/resources/cache/http/www.xbrl.org/2008/generic-reference.xsd +63 -0
  280. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xbrl/xbrl-instance-2003-12-31-ixmod.xsd +788 -0
  281. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xbrl/xbrl-linkbase-2003-12-31-ixmod.xsd +488 -0
  282. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xbrl/xl-2003-12-31.xsd +248 -0
  283. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xbrl/xlink-2003-12-31.xsd +117 -0
  284. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xframes-1.xsd +166 -0
  285. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-applet-1.xsd +66 -0
  286. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-attribs-1.xsd +72 -0
  287. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-base-1.xsd +36 -0
  288. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-basic-form-1.xsd +195 -0
  289. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-basic-table-1.xsd +169 -0
  290. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-basic10-model-1.xsd +376 -0
  291. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-basic10-module-redefines-1.xsd +61 -0
  292. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-basic10-modules-1.xsd +259 -0
  293. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-basic10.xsd +98 -0
  294. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-bdo-1.xsd +78 -0
  295. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-blkphras-1.xsd +161 -0
  296. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-blkpres-1.xsd +37 -0
  297. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-blkstruct-1.xsd +49 -0
  298. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-charent-1.xsd +38 -0
  299. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-copyright-1.xsd +29 -0
  300. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-csismap-1.xsd +96 -0
  301. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-datatypes-1.xsd +128 -0
  302. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-edit-1.xsd +39 -0
  303. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-events-1.xsd +130 -0
  304. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-form-1.xsd +326 -0
  305. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-frames-1.xsd +113 -0
  306. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-framework-1.xsd +66 -0
  307. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-hypertext-1.xsd +47 -0
  308. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-iframe-1.xsd +68 -0
  309. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-image-1.xsd +45 -0
  310. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-inlphras-1.xsd +163 -0
  311. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-inlpres-1.xsd +39 -0
  312. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-inlstruct-1.xsd +50 -0
  313. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-inlstyle-1.xsd +27 -0
  314. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-legacy-1.xsd +97 -0
  315. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-link-1.xsd +45 -0
  316. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-list-1.xsd +99 -0
  317. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-meta-1.xsd +42 -0
  318. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-misc-1.xsd +441 -0
  319. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-nameident-1.xsd +63 -0
  320. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-notations-1.xsd +69 -0
  321. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-object-1.xsd +76 -0
  322. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-param-1.xsd +51 -0
  323. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-pres-1.xsd +51 -0
  324. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-ruby-1.xsd +171 -0
  325. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-ruby-basic-1.xsd +89 -0
  326. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-script-1.xsd +70 -0
  327. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-ssismap-1.xsd +43 -0
  328. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-struct-1.xsd +112 -0
  329. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-style-1.xsd +52 -0
  330. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-table-1.xsd +272 -0
  331. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-target-1.xsd +53 -0
  332. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml-text-1.xsd +67 -0
  333. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml11-model-1.xsd +677 -0
  334. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml11-module-redefines-1.xsd +335 -0
  335. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml11-modules-1.xsd +528 -0
  336. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml11.xsd +104 -0
  337. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xhtml2.xsd +21 -0
  338. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xml-events-1.xsd +73 -0
  339. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xml-events-2.xsd +74 -0
  340. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xml-events-attribs-1.xsd +73 -0
  341. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xml-events-attribs-2.xsd +75 -0
  342. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xml-events-copyright-1.xsd +34 -0
  343. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xml-events-copyright-2.xsd +34 -0
  344. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml/xml-handlers-2.xsd +98 -0
  345. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml-inlinexbrl-1_0-definitions.xsd +225 -0
  346. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml-inlinexbrl-1_0-model.xsd +681 -0
  347. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml-inlinexbrl-1_0-modules.xsd +535 -0
  348. arelle/resources/cache/http/www.xbrl.org/2008/inlinexbrl/xhtml-inlinexbrl-1_0.xsd +40 -0
  349. arelle/resources/cache/http/www.xbrl.org/2008/match-filter.xsd +94 -0
  350. arelle/resources/cache/http/www.xbrl.org/2008/period-filter.xsd +86 -0
  351. arelle/resources/cache/http/www.xbrl.org/2008/registry.xsd +145 -0
  352. arelle/resources/cache/http/www.xbrl.org/2008/relative-filter.xsd +38 -0
  353. arelle/resources/cache/http/www.xbrl.org/2008/segment-scenario-filter.xsd +41 -0
  354. arelle/resources/cache/http/www.xbrl.org/2008/tuple-filter.xsd +83 -0
  355. arelle/resources/cache/http/www.xbrl.org/2008/unit-filter.xsd +58 -0
  356. arelle/resources/cache/http/www.xbrl.org/2008/validation.xsd +78 -0
  357. arelle/resources/cache/http/www.xbrl.org/2008/value-assertion.xsd +43 -0
  358. arelle/resources/cache/http/www.xbrl.org/2008/value-filter.xsd +43 -0
  359. arelle/resources/cache/http/www.xbrl.org/2008/variable.xsd +240 -0
  360. arelle/resources/cache/http/www.xbrl.org/2010/aspect-cover-filter.xsd +67 -0
  361. arelle/resources/cache/http/www.xbrl.org/2010/concept-relation-filter.xsd +108 -0
  362. arelle/resources/cache/http/www.xbrl.org/2010/custom-function-implementation.xsd +71 -0
  363. arelle/resources/cache/http/www.xbrl.org/2010/generic-message.xsd +68 -0
  364. arelle/resources/cache/http/www.xbrl.org/2010/validation-message.xsd +50 -0
  365. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xbrl/xbrl-instance-2003-12-31-ixmod.xsd +788 -0
  366. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xbrl/xbrl-linkbase-2003-12-31-ixmod.xsd +488 -0
  367. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xbrl/xl-2003-12-31.xsd +248 -0
  368. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xbrl/xlink-2003-12-31.xsd +117 -0
  369. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xframes-1.xsd +166 -0
  370. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-applet-1.xsd +66 -0
  371. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-attribs-1.xsd +72 -0
  372. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-base-1.xsd +36 -0
  373. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-basic-form-1.xsd +195 -0
  374. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-basic-table-1.xsd +169 -0
  375. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-basic10-model-1.xsd +376 -0
  376. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-basic10-module-redefines-1.xsd +61 -0
  377. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-basic10-modules-1.xsd +259 -0
  378. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-basic10.xsd +98 -0
  379. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-bdo-1.xsd +78 -0
  380. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-blkphras-1.xsd +161 -0
  381. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-blkpres-1.xsd +37 -0
  382. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-blkstruct-1.xsd +49 -0
  383. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-charent-1.xsd +38 -0
  384. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-copyright-1.xsd +29 -0
  385. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-csismap-1.xsd +96 -0
  386. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-datatypes-1.xsd +128 -0
  387. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-edit-1.xsd +39 -0
  388. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-events-1.xsd +130 -0
  389. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-form-1.xsd +326 -0
  390. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-frames-1.xsd +113 -0
  391. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-framework-1.xsd +66 -0
  392. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-hypertext-1.xsd +47 -0
  393. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-iframe-1.xsd +68 -0
  394. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-image-1.xsd +45 -0
  395. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-inlphras-1.xsd +163 -0
  396. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-inlpres-1.xsd +39 -0
  397. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-inlstruct-1.xsd +50 -0
  398. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-inlstyle-1.xsd +27 -0
  399. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-legacy-1.xsd +97 -0
  400. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-link-1.xsd +45 -0
  401. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-list-1.xsd +99 -0
  402. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-meta-1.xsd +42 -0
  403. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-misc-1.xsd +441 -0
  404. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-nameident-1.xsd +63 -0
  405. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-notations-1.xsd +69 -0
  406. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-object-1.xsd +76 -0
  407. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-param-1.xsd +51 -0
  408. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-pres-1.xsd +51 -0
  409. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-ruby-1.xsd +171 -0
  410. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-ruby-basic-1.xsd +89 -0
  411. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-script-1.xsd +70 -0
  412. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-ssismap-1.xsd +43 -0
  413. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-struct-1.xsd +112 -0
  414. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-style-1.xsd +52 -0
  415. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-table-1.xsd +272 -0
  416. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-target-1.xsd +53 -0
  417. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml-text-1.xsd +67 -0
  418. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml11-model-1.xsd +677 -0
  419. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml11-module-redefines-1.xsd +335 -0
  420. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml11-modules-1.xsd +528 -0
  421. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml11.xsd +104 -0
  422. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xhtml2.xsd +21 -0
  423. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xml-events-1.xsd +73 -0
  424. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xml-events-2.xsd +74 -0
  425. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xml-events-attribs-1.xsd +73 -0
  426. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xml-events-attribs-2.xsd +75 -0
  427. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xml-events-copyright-1.xsd +34 -0
  428. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xml-events-copyright-2.xsd +34 -0
  429. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml/xml-handlers-2.xsd +98 -0
  430. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml-inlinexbrl-1_1-definitions.xsd +252 -0
  431. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml-inlinexbrl-1_1-model.xsd +681 -0
  432. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml-inlinexbrl-1_1-modules.xsd +535 -0
  433. arelle/resources/cache/http/www.xbrl.org/2013/inlineXBRL/xhtml-inlinexbrl-1_1.xsd +40 -0
  434. arelle/resources/cache/http/www.xbrl.org/2013/match-filter.xsd +94 -0
  435. arelle/resources/cache/http/www.xbrl.org/2013/preferred-label.xsd +12 -0
  436. arelle/resources/cache/http/www.xbrl.org/2013/versioning-base.xsd +142 -0
  437. arelle/resources/cache/http/www.xbrl.org/2013/versioning-concept-details.xsd +143 -0
  438. arelle/resources/cache/http/www.xbrl.org/2013/versioning-concept-use.xsd +64 -0
  439. arelle/resources/cache/http/www.xbrl.org/2013/versioning-dimensions.xsd +162 -0
  440. arelle/resources/cache/http/www.xbrl.org/2014/extensible-enumerations.xsd +27 -0
  441. arelle/resources/cache/http/www.xbrl.org/2014/table.xsd +356 -0
  442. arelle/resources/cache/http/www.xbrl.org/2014/tablemodel.xsd +156 -0
  443. arelle/resources/cache/http/www.xbrl.org/2016/assertion-severity.xsd +29 -0
  444. arelle/resources/cache/http/www.xbrl.org/2016/severities.xml +21 -0
  445. arelle/resources/cache/http/www.xbrl.org/2016/taxonomy-package-catalog.xsd +38 -0
  446. arelle/resources/cache/http/www.xbrl.org/2016/taxonomy-package.xsd +154 -0
  447. arelle/resources/cache/http/www.xbrl.org/2022/assertion-severity.xsd +43 -0
  448. arelle/resources/cache/http/www.xbrl.org/2022/severities.xml +21 -0
  449. arelle/resources/cache/http/www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd +76 -0
  450. arelle/resources/cache/http/www.xbrl.org/dtr/type/numeric-2009-12-16.xsd +78 -0
  451. arelle/resources/cache/http/www.xbrl.org/lrr/arcrole/accounting-arcrole-2023-01-04.xsd +39 -0
  452. arelle/resources/cache/http/www.xbrl.org/lrr/arcrole/deprecated-2009-12-16.xsd +29 -0
  453. arelle/resources/cache/http/www.xbrl.org/lrr/arcrole/esma-arcrole-2018-11-21.xsd +14 -0
  454. arelle/resources/cache/http/www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd +13 -0
  455. arelle/resources/cache/http/www.xbrl.org/lrr/arcrole/jpfr-arcrole-2007-11-07.xsd +27 -0
  456. arelle/resources/cache/http/www.xbrl.org/lrr/arcrole/parent-child-2013-09-19.xsd +12 -0
  457. arelle/resources/cache/http/www.xbrl.org/lrr/role/deprecated-2009-12-16.xsd +17 -0
  458. arelle/resources/cache/http/www.xbrl.org/lrr/role/jpfr-role-2007-11-07.xsd +47 -0
  459. arelle/resources/cache/http/www.xbrl.org/lrr/role/negated-2008-03-31.xsd +30 -0
  460. arelle/resources/cache/http/www.xbrl.org/lrr/role/negated-2009-12-16.xsd +33 -0
  461. arelle/resources/cache/http/www.xbrl.org/lrr/role/negative-2009-12-16.xsd +25 -0
  462. arelle/resources/cache/http/www.xbrl.org/lrr/role/net-2009-12-16.xsd +13 -0
  463. arelle/resources/cache/http/www.xbrl.org/lrr/role/positive-2009-12-16.xsd +25 -0
  464. arelle/resources/cache/http/www.xbrl.org/lrr/role/property-2022-09-28.xsd +15 -0
  465. arelle/resources/cache/http/www.xbrl.org/lrr/role/reference-2009-12-16.xsd +21 -0
  466. arelle/resources/cache/http/www.xbrl.org/lrr/role/restated-2006-02-21.xsd +19 -0
  467. arelle/resources/cache/http/www.xbrl.org/utr/2012-01-30/utr.xml +4543 -0
  468. arelle/resources/cache/http/www.xbrl.org/utr/2012-10-31/utr.xml +4510 -0
  469. arelle/resources/cache/http/www.xbrl.org/utr/2012-11-30/utr.xml +4567 -0
  470. arelle/resources/cache/http/www.xbrl.org/utr/2013-02-28/utr.xml +5180 -0
  471. arelle/resources/cache/http/www.xbrl.org/utr/2013-05-17/utr.xml +5349 -0
  472. arelle/resources/cache/http/www.xbrl.org/utr/2016-08-10/utr.xml +5363 -0
  473. arelle/resources/cache/http/www.xbrl.org/utr/2017-07-12/utr.xml +6164 -0
  474. arelle/resources/cache/http/www.xbrl.org/utr/2021-02-16/utr.xml +6370 -0
  475. arelle/resources/cache/http/www.xbrl.org/utr/2021-12-08/utr.xml +6493 -0
  476. arelle/resources/cache/http/www.xbrl.org/utr/2022-02-16/utr.xml +6551 -0
  477. arelle/resources/cache/http/www.xbrl.org/utr/2022-07-20/utr.xml +6638 -0
  478. arelle/resources/cache/http/www.xbrl.org/utr/2023-12-20/utr.xml +6680 -0
  479. arelle/resources/cache/http/www.xbrl.org/utr/2024-01-31/utr.xml +6680 -0
  480. arelle/resources/cache/http/www.xbrl.org/utr/2024-10-22/utr.xml +6693 -0
  481. arelle/resources/cache/http/www.xbrl.org/utr/utr.xml +6693 -0
  482. arelle/resources/cache/https/www.xbrl.org/2005/conformance.xsd +87 -0
  483. arelle/resources/cache/https/www.xbrl.org/2020/extensible-enumerations-2.0.xsd +51 -0
  484. arelle/resources/cache/https/www.xbrl.org/2023/calculation-1.1.xsd +27 -0
  485. arelle/resources/cache/https/www.xbrl.org/dtr/type/2020-01-21/types.xsd +812 -0
  486. arelle/resources/cache/https/www.xbrl.org/dtr/type/2022-03-31/types.xsd +847 -0
  487. arelle/resources/cache/https/www.xbrl.org/dtr/type/2024-01-31/types.xsd +897 -0
  488. arelle/resources/cache/https/www.xbrl.org/taxonomy/int/filing-indicators/REC/2021-02-03/filing-indicators-def.xml +68 -0
  489. arelle/resources/cache/https/www.xbrl.org/taxonomy/int/filing-indicators/REC/2021-02-03/filing-indicators-label.xml +84 -0
  490. arelle/resources/cache/https/www.xbrl.org/taxonomy/int/filing-indicators/REC/2021-02-03/filing-indicators.xsd +67 -0
  491. arelle/resources/libs/Tktable2.11/linux-x86_64/README.txt +149 -0
  492. arelle/resources/libs/Tktable2.11/linux-x86_64/html/tkTable.html +2039 -0
  493. arelle/resources/libs/Tktable2.11/linux-x86_64/libTktable2.11.so +0 -0
  494. arelle/resources/libs/Tktable2.11/linux-x86_64/license.txt +51 -0
  495. arelle/resources/libs/Tktable2.11/linux-x86_64/pkgIndex.tcl +3 -0
  496. arelle/resources/libs/Tktable2.11/linux-x86_64/tkTable.tcl +825 -0
  497. arelle/resources/libs/Tktable2.11/linux-x86_64/tktable.py +674 -0
  498. arelle/resources/libs/Tktable2.11/macos-arm64/README.txt +149 -0
  499. arelle/resources/libs/Tktable2.11/macos-arm64/html/tkTable.html +2039 -0
  500. arelle/resources/libs/Tktable2.11/macos-arm64/libTktable2.11.dylib +0 -0
  501. arelle/resources/libs/Tktable2.11/macos-arm64/license.txt +51 -0
  502. arelle/resources/libs/Tktable2.11/macos-arm64/pkgIndex.tcl +2 -0
  503. arelle/resources/libs/Tktable2.11/macos-arm64/tkTable.tcl +825 -0
  504. arelle/resources/libs/Tktable2.11/macos-arm64/tktable.py +674 -0
  505. arelle/resources/libs/Tktable2.11/macos-x86_64/README.txt +149 -0
  506. arelle/resources/libs/Tktable2.11/macos-x86_64/html/tkTable.html +2039 -0
  507. arelle/resources/libs/Tktable2.11/macos-x86_64/libTktable2.11.dylib +0 -0
  508. arelle/resources/libs/Tktable2.11/macos-x86_64/license.txt +51 -0
  509. arelle/resources/libs/Tktable2.11/macos-x86_64/pkgIndex.tcl +2 -0
  510. arelle/resources/libs/Tktable2.11/macos-x86_64/tkTable.tcl +825 -0
  511. arelle/resources/libs/Tktable2.11/macos-x86_64/tktable.py +674 -0
  512. arelle/resources/libs/Tktable2.11/win-x86_64/Tktable.dll +0 -0
  513. arelle/resources/libs/Tktable2.11/win-x86_64/pkgIndex.tcl +2 -0
  514. arelle/resources/libs/Tktable2.11/win-x86_64/tkTable.tcl +825 -0
  515. arelle/typing.py +9 -4
  516. arelle/utils/Contexts.py +38 -0
  517. arelle/utils/EntryPointDetection.py +139 -0
  518. arelle/utils/Equivalence.py +22 -0
  519. arelle/utils/{validate/PluginValidationData.py → PluginData.py} +5 -2
  520. arelle/utils/PluginHooks.py +256 -5
  521. arelle/utils/Units.py +36 -0
  522. arelle/utils/validate/Decorator.py +5 -3
  523. arelle/utils/validate/DetectScriptsInXhtml.py +99 -0
  524. arelle/utils/validate/ESEFImage.py +283 -0
  525. arelle/utils/validate/Validation.py +9 -1
  526. arelle/utils/validate/ValidationPlugin.py +74 -11
  527. arelle/utils/validate/ValidationUtil.py +55 -0
  528. arelle/webserver/bottle.py +5 -4424
  529. {arelle_release-2.17.1.dist-info → arelle_release-2.37.71.dist-info}/METADATA +51 -42
  530. arelle_release-2.37.71.dist-info/RECORD +697 -0
  531. {arelle_release-2.17.1.dist-info → arelle_release-2.37.71.dist-info}/WHEEL +1 -1
  532. {arelle_release-2.17.1.dist-info → arelle_release-2.37.71.dist-info/licenses}/LICENSE.md +1 -4
  533. {arelle_release-2.17.1.dist-info → arelle_release-2.37.71.dist-info}/top_level.txt +0 -1
  534. arelle/DialogOpenTaxonomyPackage.py +0 -1
  535. arelle/RenderingResolver.py +0 -624
  536. arelle/examples/.pydevproject +0 -5
  537. arelle/examples/CustomLogger.py +0 -43
  538. arelle/examples/LoadEFMvalidate.py +0 -32
  539. arelle/examples/LoadSavePreLbCsv.py +0 -26
  540. arelle/examples/LoadValidate.cs +0 -31
  541. arelle/examples/LoadValidate.py +0 -36
  542. arelle/examples/LoadValidateCmdLine.java +0 -69
  543. arelle/examples/LoadValidatePostedZip.java +0 -57
  544. arelle/examples/LoadValidateWebService.java +0 -34
  545. arelle/examples/SaveTableToExelle.py +0 -140
  546. arelle/examples/TR3toTR4.py +0 -88
  547. arelle/examples/plugin/bigInstance.py +0 -394
  548. arelle/examples/plugin/cmdWebServerExtension.py +0 -42
  549. arelle/examples/plugin/crashTest.py +0 -38
  550. arelle/examples/plugin/formulaSuiteConverter.py +0 -212
  551. arelle/examples/plugin/functionsCustom.py +0 -59
  552. arelle/examples/plugin/hello_dolly.py +0 -64
  553. arelle/examples/plugin/hello_i18n.pot +0 -26
  554. arelle/examples/plugin/hello_i18n.py +0 -32
  555. arelle/examples/plugin/importTestChild1.py +0 -21
  556. arelle/examples/plugin/importTestChild2.py +0 -22
  557. arelle/examples/plugin/importTestGrandchild1.py +0 -21
  558. arelle/examples/plugin/importTestGrandchild2.py +0 -21
  559. arelle/examples/plugin/importTestImported1.py +0 -23
  560. arelle/examples/plugin/importTestImported11.py +0 -22
  561. arelle/examples/plugin/importTestParent.py +0 -48
  562. arelle/examples/plugin/locale/fr/LC_MESSAGES/hello_i18n.po +0 -25
  563. arelle/examples/plugin/packagedImportTest/__init__.py +0 -47
  564. arelle/examples/plugin/packagedImportTest/importTestChild1.py +0 -21
  565. arelle/examples/plugin/packagedImportTest/importTestChild2.py +0 -22
  566. arelle/examples/plugin/packagedImportTest/importTestGrandchild1.py +0 -21
  567. arelle/examples/plugin/packagedImportTest/importTestGrandchild2.py +0 -21
  568. arelle/examples/plugin/packagedImportTest/importTestImported1.py +0 -24
  569. arelle/examples/plugin/packagedImportTest/importTestImported11.py +0 -21
  570. arelle/examples/plugin/packagedImportTest/subdir/importTestImported111.py +0 -21
  571. arelle/examples/plugin/packagedImportTest/subdir/subsubdir/importTestImported1111.py +0 -21
  572. arelle/examples/plugin/sakaCalendar.py +0 -215
  573. arelle/examples/plugin/saveInstanceInfoset.py +0 -121
  574. arelle/examples/plugin/streamingExtensions.py +0 -335
  575. arelle/examples/plugin/testcaseCalc11ValidateSetup.py +0 -32
  576. arelle/examples/plugin/testcaseIxExpectedHtmlFixup.py +0 -45
  577. arelle/examples/plugin/updateTableLB.py +0 -242
  578. arelle/examples/plugin/validate/XYZ/DisclosureSystems.py +0 -2
  579. arelle/examples/plugin/validate/XYZ/PluginValidationDataExtension.py +0 -10
  580. arelle/examples/plugin/validate/XYZ/ValidationPluginExtension.py +0 -49
  581. arelle/examples/plugin/validate/XYZ/__init__.py +0 -75
  582. arelle/examples/plugin/validate/XYZ/resources/config.xml +0 -16
  583. arelle/examples/plugin/validate/XYZ/rules/rules01.py +0 -109
  584. arelle/examples/plugin/validate/XYZ/rules/rules02.py +0 -58
  585. arelle/examples/plugin/validateSchemaLxml.py +0 -156
  586. arelle/examples/plugin/validateTableInfoset.py +0 -52
  587. arelle/examples/us-gaap-dei-docType-extraction-frm.xml +0 -90
  588. arelle/examples/us-gaap-dei-ratio-cash-frm.xml +0 -150
  589. arelle/plugin/functionsXmlCreation.py +0 -106
  590. arelle/plugin/instanceInfo.py +0 -306
  591. arelle/plugin/loadFromOIM-2018.py +0 -1282
  592. arelle/plugin/objectmaker.py +0 -285
  593. arelle/plugin/sphinx/FormulaGenerator.py +0 -823
  594. arelle/plugin/sphinx/SphinxContext.py +0 -404
  595. arelle/plugin/sphinx/SphinxEvaluator.py +0 -783
  596. arelle/plugin/sphinx/SphinxMethods.py +0 -1287
  597. arelle/plugin/sphinx/SphinxParser.py +0 -1093
  598. arelle/plugin/sphinx/SphinxValidator.py +0 -163
  599. arelle/plugin/sphinx/US-GAAP Ratios Example.xsr +0 -52
  600. arelle/plugin/sphinx/__init__.py +0 -285
  601. arelle/plugin/transforms/SEC/__init__.py +0 -308
  602. arelle/plugin/transforms/SEC/conf/README.md +0 -39
  603. arelle/plugin/transforms/SEC/conf/extractTestcase.sh +0 -2
  604. arelle/plugin/transforms/SEC/conf/extractTestcase.xsl +0 -109
  605. arelle/plugin/transforms/SEC/conf/runIxtSecTests.sh +0 -16
  606. arelle/plugin/transforms/SEC/conf/saxon9.jar +0 -0
  607. arelle/plugin/transforms/SEC/conf/testcase.xml +0 -7117
  608. arelle/plugin/transforms/SEC/conf/tests.xml +0 -848
  609. arelle/plugin/transforms/SEC/text2num.py +0 -110
  610. arelle/plugin/transforms/SEC/transformationRegistry/registry/ixt-sec-boolballotbox.xml +0 -66
  611. arelle/plugin/transforms/SEC/transformationRegistry/registry/ixt-sec-countrynameen.xml +0 -65
  612. arelle/plugin/transforms/SEC/transformationRegistry/registry/ixt-sec-datequarterend.xml +0 -66
  613. arelle/plugin/transforms/SEC/transformationRegistry/registry/ixt-sec-durday.xml +0 -61
  614. arelle/plugin/transforms/SEC/transformationRegistry/registry/ixt-sec-durhour.xml +0 -69
  615. arelle/plugin/transforms/SEC/transformationRegistry/registry/ixt-sec-durmonth.xml +0 -71
  616. arelle/plugin/transforms/SEC/transformationRegistry/registry/ixt-sec-durweek.xml +0 -70
  617. arelle/plugin/transforms/SEC/transformationRegistry/registry/ixt-sec-durwordsen.xml +0 -56
  618. arelle/plugin/transforms/SEC/transformationRegistry/registry/ixt-sec-duryear.xml +0 -64
  619. arelle/plugin/transforms/SEC/transformationRegistry/registry/ixt-sec-edgarprovcountryen.xml +0 -65
  620. arelle/plugin/transforms/SEC/transformationRegistry/registry/ixt-sec-entityfilercategoryen.xml +0 -63
  621. arelle/plugin/transforms/SEC/transformationRegistry/registry/ixt-sec-exchnameen.xml +0 -86
  622. arelle/plugin/transforms/SEC/transformationRegistry/registry/ixt-sec-numwordsen.xml +0 -55
  623. arelle/plugin/transforms/SEC/transformationRegistry/registry/ixt-sec-stateprovnameen.xml +0 -64
  624. arelle/plugin/transforms/SEC/transformationRegistry/registry/ixt-sec-yesnoballotbox.xml +0 -66
  625. arelle/plugin/transforms/SEC/transformationRegistry/registry/transform-registry.xml +0 -314
  626. arelle/plugin/transforms/SEC/transformationRegistry/schema/inlinexbrl-sec-transformation.xsd +0 -418
  627. arelle/plugin/validate/EFM/Consts.py +0 -362
  628. arelle/plugin/validate/EFM/DTS.py +0 -569
  629. arelle/plugin/validate/EFM/Dimensions.py +0 -264
  630. arelle/plugin/validate/EFM/Document.py +0 -206
  631. arelle/plugin/validate/EFM/Filing.py +0 -4383
  632. arelle/plugin/validate/EFM/IsolateSeparateIXDSes.py +0 -19
  633. arelle/plugin/validate/EFM/MessageNumericId.py +0 -142
  634. arelle/plugin/validate/EFM/PreCalAlignment.py +0 -324
  635. arelle/plugin/validate/EFM/Util.py +0 -688
  636. arelle/plugin/validate/EFM/__init__.py +0 -843
  637. arelle/plugin/validate/EFM/config.xml +0 -333
  638. arelle/plugin/validate/EFM/resources/README.md +0 -57
  639. arelle/plugin/validate/EFM/resources/axiswarnings.json +0 -27
  640. arelle/plugin/validate/EFM/resources/cef-deprecated-concepts.json +0 -8
  641. arelle/plugin/validate/EFM/resources/country-deprecated-concepts.json +0 -19
  642. arelle/plugin/validate/EFM/resources/currency-deprecated-concepts.json +0 -7
  643. arelle/plugin/validate/EFM/resources/dei-deprecated-concepts.json +0 -8
  644. arelle/plugin/validate/EFM/resources/dei-validations.json +0 -2884
  645. arelle/plugin/validate/EFM/resources/dqc-us-rules.json +0 -1389
  646. arelle/plugin/validate/EFM/resources/ecd-deprecated-concepts.json +0 -1
  647. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-16-4.xml +0 -115
  648. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-17-0-4.xml +0 -300
  649. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-17-1.xml +0 -304
  650. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-17-2.xml +0 -290
  651. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-17-3-1.xml +0 -294
  652. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-18.1.xml +0 -549
  653. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-18.2.xml +0 -506
  654. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-18.3.xml +0 -496
  655. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-19-1.xml +0 -662
  656. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-19-2.xml +0 -3761
  657. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-19-3.xml +0 -3577
  658. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-20-1.xml +0 -4020
  659. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-20-2.xml +0 -3320
  660. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-20-3.xml +0 -2998
  661. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-2012.xml +0 -957
  662. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-2013.xml +0 -982
  663. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-2014.xml +0 -1001
  664. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-2015.xml +0 -1076
  665. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-2016.xml +0 -120
  666. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-21-1.xml +0 -3329
  667. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-21-2.xml +0 -1230
  668. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-21-3.xml +0 -1113
  669. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-21-4.xml +0 -1321
  670. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-22-1-preview.xml +0 -1721
  671. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-22-1.xml +0 -1841
  672. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-22-2-2.xml +0 -1450
  673. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-22-2.xml +0 -1429
  674. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-22-4.xml +0 -1527
  675. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-23-1-1.xml +0 -2049
  676. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-23-1.xml +0 -2065
  677. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-23-2.xml +0 -1674
  678. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-23-3.xml +0 -1715
  679. arelle/plugin/validate/EFM/resources/edgartaxonomies/edgartaxonomies-all-years.xml +0 -10671
  680. arelle/plugin/validate/EFM/resources/edgartaxonomies/erxl.xsd +0 -69
  681. arelle/plugin/validate/EFM/resources/edgartaxonomies/extendedtaxonomies-all-years.xml +0 -18
  682. arelle/plugin/validate/EFM/resources/edgartaxonomies/ifrs-taxonomies.xml +0 -3126
  683. arelle/plugin/validate/EFM/resources/edgartaxonomies/ifrstaxonomies-all-years.xml +0 -22
  684. arelle/plugin/validate/EFM/resources/ex26-validations.json +0 -255
  685. arelle/plugin/validate/EFM/resources/exch-deprecated-concepts.json +0 -163
  686. arelle/plugin/validate/EFM/resources/ifrs-full-deprecated-concepts.json +0 -204
  687. arelle/plugin/validate/EFM/resources/invest-deprecated-concepts.json +0 -99
  688. arelle/plugin/validate/EFM/resources/ixbrl-transform-registries.json +0 -16
  689. arelle/plugin/validate/EFM/resources/naics-deprecated-concepts.json +0 -295
  690. arelle/plugin/validate/EFM/resources/oef-deprecated-concepts.json +0 -59
  691. arelle/plugin/validate/EFM/resources/other-standard-taxonomies.json +0 -12
  692. arelle/plugin/validate/EFM/resources/rr-deprecated-concepts.json +0 -14
  693. arelle/plugin/validate/EFM/resources/rxp-deprecated-concepts.json +0 -1
  694. arelle/plugin/validate/EFM/resources/shr-deprecated-concepts.json +0 -1
  695. arelle/plugin/validate/EFM/resources/sic-deprecated-concepts.json +0 -1
  696. arelle/plugin/validate/EFM/resources/signwarnings.json +0 -112
  697. arelle/plugin/validate/EFM/resources/srt-deprecated-concepts.json +0 -1
  698. arelle/plugin/validate/EFM/resources/stpr-deprecated-concepts.json +0 -1
  699. arelle/plugin/validate/EFM/resources/taxonomy-compatibility.json +0 -79
  700. arelle/plugin/validate/EFM/resources/us-gaap-deprecated-concepts.json +0 -2886
  701. arelle/plugin/validate/EFM/resources/us-gaap-rels-2020.json +0 -29068
  702. arelle/plugin/validate/EFM/resources/us-gaap-rels-2021.json +0 -29598
  703. arelle/plugin/validate/EFM/resources/us-gaap-rels-2022.json +0 -29141
  704. arelle/plugin/validate/EFM/resources/us-gaap-rels-2023.json +0 -29400
  705. arelle/plugin/validate/EFM/resources/vip-deprecated-concepts.json +0 -1
  706. arelle/plugin/validate/EFM/tools/CheckTxmyRefs.py +0 -180
  707. arelle/plugin/validate/EFM-htm/Const.py +0 -205
  708. arelle/plugin/validate/EFM-htm/__init__.py +0 -217
  709. arelle/plugin/validate/EFM-htm/config.xml +0 -17
  710. arelle/plugin/validate/EFM-htm/resources/efm-htm.dtd +0 -664
  711. arelle/plugin/validate/ESEF/ESEF_Current/Image.py +0 -199
  712. arelle/plugin/validate/ESEF_2022/__init__.py +0 -47
  713. arelle/plugin/validate/GFM/__init__.py +0 -59
  714. arelle/plugin/validate/GFM/config.xml +0 -82
  715. arelle/plugin/validate/SBRnl/CustomLoader.py +0 -19
  716. arelle/plugin/validate/SBRnl/DTS.py +0 -305
  717. arelle/plugin/validate/SBRnl/Dimensions.py +0 -357
  718. arelle/plugin/validate/SBRnl/Document.py +0 -799
  719. arelle/plugin/validate/SBRnl/Filing.py +0 -467
  720. arelle/plugin/validate/SBRnl/__init__.py +0 -75
  721. arelle/plugin/validate/SBRnl/config.xml +0 -26
  722. arelle/plugin/validate/SBRnl/sbr-nl-taxonomies.xml +0 -754
  723. arelle/plugin/validate/USBestPractices.py +0 -570
  724. arelle/plugin/validate/USCorpAction.py +0 -557
  725. arelle/plugin/validate/USSecTagging.py +0 -337
  726. arelle/plugin/validate/XDC/__init__.py +0 -77
  727. arelle/plugin/validate/XDC/config.xml +0 -20
  728. arelle/plugin/validate/XFsyntax/__init__.py +0 -64
  729. arelle/plugin/validate/XFsyntax/xf.py +0 -2227
  730. arelle/plugin/validate/__init__.py +0 -20
  731. arelle/plugin/validate/calc2.py +0 -536
  732. arelle/plugin/validateSBRnl.py +0 -530
  733. arelle/scripts-macOS/startWebServer.command +0 -3
  734. arelle/scripts-unix/startWebServer.sh +0 -1
  735. arelle/scripts-windows/startWebServer.bat +0 -5
  736. arelle_release-2.17.1.dist-info/RECORD +0 -676
  737. tests/__init__.py +0 -0
  738. tests/integration_tests/ui_tests/ArelleGUITest/ArelleGUITest/ArelleGUITest.csproj +0 -30
  739. tests/integration_tests/ui_tests/ArelleGUITest/ArelleGUITest/Tests.cs +0 -381
  740. tests/integration_tests/ui_tests/ArelleGUITest/ArelleGUITest/Usings.cs +0 -1
  741. tests/integration_tests/ui_tests/ArelleGUITest/ArelleGUITest.sln +0 -31
  742. tests/integration_tests/ui_tests/resources/workiva.zip +0 -0
  743. tests/integration_tests/validation/README.md +0 -50
  744. tests/integration_tests/validation/conformance_suite_config.py +0 -59
  745. tests/integration_tests/validation/conformance_suite_configs.py +0 -63
  746. tests/integration_tests/validation/conformance_suite_configurations/efm_current.py +0 -261
  747. tests/integration_tests/validation/conformance_suite_configurations/esef_ixbrl_2021.py +0 -85
  748. tests/integration_tests/validation/conformance_suite_configurations/esef_ixbrl_2022.py +0 -90
  749. tests/integration_tests/validation/conformance_suite_configurations/esef_xhtml_2021.py +0 -15
  750. tests/integration_tests/validation/conformance_suite_configurations/esef_xhtml_2022.py +0 -15
  751. tests/integration_tests/validation/conformance_suite_configurations/nl_nt16.py +0 -13
  752. tests/integration_tests/validation/conformance_suite_configurations/nl_nt17.py +0 -13
  753. tests/integration_tests/validation/conformance_suite_configurations/nl_nt18.py +0 -13
  754. tests/integration_tests/validation/conformance_suite_configurations/xbrl_2_1.py +0 -34
  755. tests/integration_tests/validation/conformance_suite_configurations/xbrl_calculations_1_1.py +0 -40
  756. tests/integration_tests/validation/conformance_suite_configurations/xbrl_dimensions_1_0.py +0 -28
  757. tests/integration_tests/validation/conformance_suite_configurations/xbrl_extensible_enumerations_1_0.py +0 -10
  758. tests/integration_tests/validation/conformance_suite_configurations/xbrl_extensible_enumerations_2_0.py +0 -10
  759. tests/integration_tests/validation/conformance_suite_configurations/xbrl_formula_1_0.py +0 -9
  760. tests/integration_tests/validation/conformance_suite_configurations/xbrl_formula_1_0_assertion_severity_2_0.py +0 -9
  761. tests/integration_tests/validation/conformance_suite_configurations/xbrl_formula_1_0_function_registry.py +0 -14
  762. tests/integration_tests/validation/conformance_suite_configurations/xbrl_ixbrl_1_1.py +0 -22
  763. tests/integration_tests/validation/conformance_suite_configurations/xbrl_link_role_registry_1_0.py +0 -11
  764. tests/integration_tests/validation/conformance_suite_configurations/xbrl_oim_1_0.py +0 -19
  765. tests/integration_tests/validation/conformance_suite_configurations/xbrl_table_linkbase_1_0.py +0 -296
  766. tests/integration_tests/validation/conformance_suite_configurations/xbrl_taxonomy_packages_1_0.py +0 -13
  767. tests/integration_tests/validation/conformance_suite_configurations/xbrl_transformation_registry_3.py +0 -13
  768. tests/integration_tests/validation/conformance_suite_configurations/xbrl_transformation_registry_4.py +0 -13
  769. tests/integration_tests/validation/conformance_suite_configurations/xbrl_transformation_registry_5.py +0 -13
  770. tests/integration_tests/validation/conformance_suite_configurations/xbrl_utr_malformed_1_0.py +0 -31
  771. tests/integration_tests/validation/conformance_suite_configurations/xbrl_utr_registry_1_0.py +0 -22
  772. tests/integration_tests/validation/conformance_suite_configurations/xbrl_utr_structure_1_0.py +0 -18
  773. tests/integration_tests/validation/conftest.py +0 -24
  774. tests/integration_tests/validation/discover_tests.py +0 -22
  775. tests/integration_tests/validation/download_conformance_suites.py +0 -47
  776. tests/integration_tests/validation/run_conformance_suites.py +0 -175
  777. tests/integration_tests/validation/test_conformance_suites.py +0 -14
  778. tests/integration_tests/validation/validation_util.py +0 -271
  779. tests/resources/conformance_suites/nl_nt16/br_kvk/2-04-invalid-period.xbrl +0 -63
  780. tests/resources/conformance_suites/nl_nt16/br_kvk/2-04-testcase.xml +0 -22
  781. tests/resources/conformance_suites/nl_nt16/br_kvk/3-01-missing.xbrl +0 -53
  782. tests/resources/conformance_suites/nl_nt16/br_kvk/3-01-multiple.xbrl +0 -60
  783. tests/resources/conformance_suites/nl_nt16/br_kvk/3-01-testcase.xml +0 -33
  784. tests/resources/conformance_suites/nl_nt16/br_kvk/4-07-invalid.xbrl +0 -57
  785. tests/resources/conformance_suites/nl_nt16/br_kvk/4-07-testcase.xml +0 -22
  786. tests/resources/conformance_suites/nl_nt16/br_kvk/4-10-invalid.xbrl +0 -58
  787. tests/resources/conformance_suites/nl_nt16/br_kvk/4-10-testcase.xml +0 -22
  788. tests/resources/conformance_suites/nl_nt16/br_kvk/4-12-invalid.xbrl +0 -63
  789. tests/resources/conformance_suites/nl_nt16/br_kvk/4-12-testcase.xml +0 -22
  790. tests/resources/conformance_suites/nl_nt16/br_kvk/4-16-missing.xbrl +0 -61
  791. tests/resources/conformance_suites/nl_nt16/br_kvk/4-16-testcase.xml +0 -22
  792. tests/resources/conformance_suites/nl_nt16/br_kvk/4-20-invalid-date.xbrl +0 -89
  793. tests/resources/conformance_suites/nl_nt16/br_kvk/4-20-testcase.xml +0 -22
  794. tests/resources/conformance_suites/nl_nt16/fr_kvk/1-01-invalid-file-extension.xml +0 -56
  795. tests/resources/conformance_suites/nl_nt16/fr_kvk/1-01-testcase.xml +0 -22
  796. tests/resources/conformance_suites/nl_nt16/fr_kvk/2-01-invalid-lang.xbrl +0 -56
  797. tests/resources/conformance_suites/nl_nt16/fr_kvk/2-01-missing-lang.xbrl +0 -55
  798. tests/resources/conformance_suites/nl_nt16/fr_kvk/2-01-testcase.xml +0 -33
  799. tests/resources/conformance_suites/nl_nt16/fr_kvk/2-03-entrypoint.xsd +0 -6
  800. tests/resources/conformance_suites/nl_nt16/fr_kvk/2-03-invalid-entrypoint.xbrl +0 -63
  801. tests/resources/conformance_suites/nl_nt16/fr_kvk/2-03-testcase.xml +0 -22
  802. tests/resources/conformance_suites/nl_nt16/fr_kvk/5-01-invalid-decimals.xbrl +0 -49
  803. tests/resources/conformance_suites/nl_nt16/fr_kvk/5-01-testcase.xml +0 -22
  804. tests/resources/conformance_suites/nl_nt16/fr_kvk/5-02-invalid-decimals.xbrl +0 -49
  805. tests/resources/conformance_suites/nl_nt16/fr_kvk/5-02-testcase.xml +0 -22
  806. tests/resources/conformance_suites/nl_nt16/fr_nl/1-01-invalid-file.xbrl +0 -2
  807. tests/resources/conformance_suites/nl_nt16/fr_nl/1-01-invalid-zip.zip +0 -0
  808. tests/resources/conformance_suites/nl_nt16/fr_nl/1-01-testcase.xml +0 -33
  809. tests/resources/conformance_suites/nl_nt16/fr_nl/1-03-invalid-doctype.xbrl +0 -4
  810. tests/resources/conformance_suites/nl_nt16/fr_nl/1-03-testcase.xml +0 -22
  811. tests/resources/conformance_suites/nl_nt16/fr_nl/1-05-invalid-encoding.xbrl +0 -0
  812. tests/resources/conformance_suites/nl_nt16/fr_nl/1-05-testcase.xml +0 -22
  813. tests/resources/conformance_suites/nl_nt16/fr_nl/1-06-testcase.xml +0 -22
  814. tests/resources/conformance_suites/nl_nt16/fr_nl/1-06.invalid.xbrl +0 -2
  815. tests/resources/conformance_suites/nl_nt16/fr_nl/2-06-invalid-file.xbrl +0 -8
  816. tests/resources/conformance_suites/nl_nt16/fr_nl/2-06-invalid-zip.zip +0 -0
  817. tests/resources/conformance_suites/nl_nt16/fr_nl/2-06-testcase.xml +0 -33
  818. tests/resources/conformance_suites/nl_nt16/index.xml +0 -20
  819. tests/resources/conformance_suites/nl_nt17/br_kvk/2-04-invalid-period.xbrl +0 -63
  820. tests/resources/conformance_suites/nl_nt17/br_kvk/2-04-testcase.xml +0 -22
  821. tests/resources/conformance_suites/nl_nt17/br_kvk/3-01-missing.xbrl +0 -53
  822. tests/resources/conformance_suites/nl_nt17/br_kvk/3-01-multiple.xbrl +0 -60
  823. tests/resources/conformance_suites/nl_nt17/br_kvk/3-01-testcase.xml +0 -33
  824. tests/resources/conformance_suites/nl_nt17/br_kvk/4-07-invalid.xbrl +0 -57
  825. tests/resources/conformance_suites/nl_nt17/br_kvk/4-07-testcase.xml +0 -22
  826. tests/resources/conformance_suites/nl_nt17/br_kvk/4-10-invalid.xbrl +0 -58
  827. tests/resources/conformance_suites/nl_nt17/br_kvk/4-10-testcase.xml +0 -22
  828. tests/resources/conformance_suites/nl_nt17/br_kvk/4-12-invalid.xbrl +0 -63
  829. tests/resources/conformance_suites/nl_nt17/br_kvk/4-12-testcase.xml +0 -22
  830. tests/resources/conformance_suites/nl_nt17/br_kvk/4-16-missing.xbrl +0 -61
  831. tests/resources/conformance_suites/nl_nt17/br_kvk/4-16-testcase.xml +0 -22
  832. tests/resources/conformance_suites/nl_nt17/br_kvk/4-20-invalid-date.xbrl +0 -89
  833. tests/resources/conformance_suites/nl_nt17/br_kvk/4-20-testcase.xml +0 -22
  834. tests/resources/conformance_suites/nl_nt17/fr_kvk/1-01-invalid-file-extension.xml +0 -56
  835. tests/resources/conformance_suites/nl_nt17/fr_kvk/1-01-testcase.xml +0 -22
  836. tests/resources/conformance_suites/nl_nt17/fr_kvk/2-01-invalid-lang.xbrl +0 -56
  837. tests/resources/conformance_suites/nl_nt17/fr_kvk/2-01-missing-lang.xbrl +0 -55
  838. tests/resources/conformance_suites/nl_nt17/fr_kvk/2-01-testcase.xml +0 -33
  839. tests/resources/conformance_suites/nl_nt17/fr_kvk/2-03-entrypoint.xsd +0 -6
  840. tests/resources/conformance_suites/nl_nt17/fr_kvk/2-03-invalid-entrypoint.xbrl +0 -63
  841. tests/resources/conformance_suites/nl_nt17/fr_kvk/2-03-testcase.xml +0 -22
  842. tests/resources/conformance_suites/nl_nt17/fr_kvk/5-01-invalid-decimals.xbrl +0 -49
  843. tests/resources/conformance_suites/nl_nt17/fr_kvk/5-01-testcase.xml +0 -22
  844. tests/resources/conformance_suites/nl_nt17/fr_kvk/5-02-invalid-decimals.xbrl +0 -49
  845. tests/resources/conformance_suites/nl_nt17/fr_kvk/5-02-testcase.xml +0 -22
  846. tests/resources/conformance_suites/nl_nt17/fr_nl/1-01-invalid-file.xbrl +0 -2
  847. tests/resources/conformance_suites/nl_nt17/fr_nl/1-01-invalid-zip.zip +0 -0
  848. tests/resources/conformance_suites/nl_nt17/fr_nl/1-01-testcase.xml +0 -33
  849. tests/resources/conformance_suites/nl_nt17/fr_nl/1-03-invalid-doctype.xbrl +0 -4
  850. tests/resources/conformance_suites/nl_nt17/fr_nl/1-03-testcase.xml +0 -22
  851. tests/resources/conformance_suites/nl_nt17/fr_nl/1-05-invalid-encoding.xbrl +0 -0
  852. tests/resources/conformance_suites/nl_nt17/fr_nl/1-05-testcases.xml +0 -22
  853. tests/resources/conformance_suites/nl_nt17/fr_nl/1-06-testcase.xml +0 -22
  854. tests/resources/conformance_suites/nl_nt17/fr_nl/1-06.invalid.xbrl +0 -2
  855. tests/resources/conformance_suites/nl_nt17/fr_nl/2-06-invalid-file.xbrl +0 -8
  856. tests/resources/conformance_suites/nl_nt17/fr_nl/2-06-invalid-zip.zip +0 -0
  857. tests/resources/conformance_suites/nl_nt17/fr_nl/2-06-testcase.xml +0 -33
  858. tests/resources/conformance_suites/nl_nt17/index.xml +0 -20
  859. tests/resources/conformance_suites/nl_nt18/fr_nl/1-03-invalid-doctype.xbrl +0 -4
  860. tests/resources/conformance_suites/nl_nt18/fr_nl/1-03-testcase.xml +0 -22
  861. tests/resources/conformance_suites/nl_nt18/fr_nl/1-05-invalid-encoding.xbrl +0 -0
  862. tests/resources/conformance_suites/nl_nt18/fr_nl/1-05-testcases.xml +0 -22
  863. tests/resources/conformance_suites/nl_nt18/fr_nl/1-06-testcase.xml +0 -22
  864. tests/resources/conformance_suites/nl_nt18/fr_nl/1-06.invalid.xbrl +0 -2
  865. tests/resources/conformance_suites/nl_nt18/fr_nl/1.01-invalid-file.xbrl +0 -2
  866. tests/resources/conformance_suites/nl_nt18/fr_nl/1.01-invalid-zip.zip +0 -0
  867. tests/resources/conformance_suites/nl_nt18/fr_nl/1.01-testcase.xml +0 -33
  868. tests/resources/conformance_suites/nl_nt18/fr_nl/2-06-invalid-file.xbrl +0 -8
  869. tests/resources/conformance_suites/nl_nt18/fr_nl/2-06-invalid-zip.zip +0 -0
  870. tests/resources/conformance_suites/nl_nt18/fr_nl/2-06-testcase.xml +0 -33
  871. tests/resources/conformance_suites/nl_nt18/index.xml +0 -8
  872. tests/unit_tests/arelle/conftest.py +0 -16
  873. tests/unit_tests/arelle/formula/test_fact_aspects_cache.py +0 -170
  874. tests/unit_tests/arelle/plugin/test_loadfromoim.py +0 -40
  875. tests/unit_tests/arelle/plugin/test_plugin_imports.py +0 -27
  876. tests/unit_tests/arelle/test_betafeatures.py +0 -81
  877. tests/unit_tests/arelle/test_cntlr.py +0 -28
  878. tests/unit_tests/arelle/test_import.py +0 -40
  879. tests/unit_tests/arelle/test_locale.py +0 -73
  880. tests/unit_tests/arelle/test_modelmanager.py +0 -15
  881. tests/unit_tests/arelle/test_packagemanager.py +0 -65
  882. tests/unit_tests/arelle/test_pluginmanager.py +0 -176
  883. tests/unit_tests/arelle/test_qname.py +0 -140
  884. tests/unit_tests/arelle/test_runtimeoptions.py +0 -56
  885. tests/unit_tests/arelle/test_system_info.py +0 -26
  886. tests/unit_tests/arelle/test_updater.py +0 -507
  887. tests/unit_tests/arelle/test_urlutil.py +0 -49
  888. tests/unit_tests/arelle/test_version.py +0 -46
  889. tests/unit_tests/arelle/utils/validate/test_decorator.py +0 -59
  890. /arelle/{examples/plugin/validate/XYZ → plugin/validate/EDINET}/rules/__init__.py +0 -0
  891. /arelle/plugin/validate/{HMRC → UK}/consistencyChecksByName.json +0 -0
  892. /arelle/plugin/validate/{HMRC → UK}/hmrc-taxonomies.xml +0 -0
  893. {arelle_release-2.17.1.dist-info → arelle_release-2.37.71.dist-info}/entry_points.txt +0 -0
@@ -0,0 +1,1082 @@
1
+ {
2
+ "$schema": "../oim-taxonomy-schema.json",
3
+ "documentInfo": {
4
+ "documentType": "https://xbrl.org/2025/taxonomy",
5
+ "namespaces": {
6
+ "xbrl": "https://xbrl.org/2025",
7
+ "xbrli":"https://xbrl.org/2025/instance",
8
+ "xs": "http://www.w3.org/2001/XMLSchema"
9
+ },
10
+ "documentNamespace":"xbrl"
11
+ },
12
+ "taxonomy": {
13
+ "resolved" : false,
14
+ "name": "xbrl:CoreTaxonomyModule",
15
+ "frameworkName": "Core",
16
+ "version": "2025",
17
+ "cubeTypes" :[
18
+ {
19
+ "name": "xbrl:eventCube",
20
+ "periodDimension": false,
21
+ "entityDimension": false,
22
+ "unitDimension": false,
23
+ "taxonomyDefinedDimension": true,
24
+ "allowedCubeDimensions" : [
25
+ {
26
+ "dimensionType": "typed",
27
+ "dimensionDataType": "xs:dateTime",
28
+ "required" : true
29
+ }
30
+ ],
31
+ "requiredCubeRelationships" : [
32
+ {
33
+ "source":"xs:dateTime",
34
+ "relationshipTypeName": "xbrl:concept-refDimension",
35
+ "target": "xbrl:period"
36
+ }
37
+ ]
38
+ },
39
+ {
40
+ "name": "xbrl:eventDetailsCube",
41
+ "periodDimension": false,
42
+ "entityDimension": false,
43
+ "unitDimension": false,
44
+ "taxonomyDefinedDimension": true,
45
+ "allowedCubeDimensions" : [
46
+ {
47
+ "dimensionType": "typed",
48
+ "required" : true
49
+ }
50
+ ],
51
+ "requiredCubeRelationships" : [
52
+ {
53
+ "relationshipTypeName": "xbrl:concept-refDimension"
54
+ }
55
+ ]
56
+ },
57
+ {
58
+ "name": "xbrl:journalCube",
59
+ "baseCubeType": "xbrl:eventDetailsCube"
60
+ },
61
+ {
62
+ "name": "xbrl:referenceCube",
63
+ "periodDimension": false,
64
+ "entityDimension": false,
65
+ "unitDimension": false,
66
+ "taxonomyDefinedDimension": true,
67
+ "allowedCubeDimensions" : [
68
+ {
69
+ "dimensionType": "typed",
70
+ "required" : true
71
+ }
72
+ ]
73
+ },
74
+ {
75
+ "name": "xbrl:timeSeriesCube",
76
+ "periodDimension": false,
77
+ "entityDimension": false,
78
+ "unitDimension": false,
79
+ "taxonomyDefinedDimension": true,
80
+ "allowedCubeDimensions" : [
81
+ {
82
+ "dimensionType": "typed",
83
+ "dimensionDataType": "xs:dateTime",
84
+ "required" : true
85
+ }
86
+ ]
87
+ },
88
+ {
89
+ "name": "xbrl:positionCube",
90
+ "periodDimension": true,
91
+ "entityDimension": true,
92
+ "unitDimension": true,
93
+ "taxonomyDefinedDimension": true,
94
+ "allowedCubeDimensions" : [
95
+ {
96
+ "dimensionType": "typed",
97
+ "required" : true
98
+ }
99
+ ]
100
+ },
101
+ {
102
+ "name": "xbrl:reportCube",
103
+ "periodDimension": true,
104
+ "entityDimension": true,
105
+ "unitDimension": true,
106
+ "taxonomyDefinedDimension": true
107
+ },
108
+ {
109
+ "name": "xbrl:defaultCube"
110
+ }
111
+
112
+ ],
113
+ "dimensions": [
114
+ {
115
+ "name": "xbrl:concept",
116
+ "domainRoot": "xbrl:conceptDomain"
117
+ },
118
+ {
119
+ "name": "xbrl:unit",
120
+ "domainRoot": "xbrl:unitDomain"
121
+ },
122
+ {
123
+ "name": "xbrl:period",
124
+ "domainDataType": "xbrli:periodType"
125
+ },
126
+ {
127
+ "name": "xbrl:entity",
128
+ "domainRoot": "xbrl:entityDomain"
129
+ },
130
+ {
131
+ "name": "xbrl:language",
132
+ "domainRoot": "xbrl:languageDomain"
133
+ }
134
+ ],
135
+ "domainRoots" : [
136
+ {
137
+ "name": "xbrl:conceptDomain"
138
+ },
139
+ {
140
+ "name": "xbrl:unitDomain"
141
+ },
142
+ {
143
+ "name": "xbrl:entityDomain"
144
+ },
145
+ {
146
+ "name": "xbrl:languageDomain"
147
+ }
148
+ ],
149
+ "labelTypes": [
150
+ {
151
+ "name": "xbrl:label",
152
+ "uri": "http://www.xbrl.org/2003/role/label"
153
+ },
154
+ {
155
+ "name": "xbrl:terseLabel",
156
+ "uri": "http://www.xbrl.org/2003/role/terseLabel"
157
+ },
158
+ {
159
+ "name": "xbrl:verboseLabel",
160
+ "uri": "http://www.xbrl.org/2003/role/verboseLabel"
161
+ },
162
+ {
163
+ "name": "xbrl:positiveLabel",
164
+ "uri": "http://www.xbrl.org/2003/role/positiveLabel",
165
+ "allowedObjects": [
166
+ "xbrl:conceptObject"
167
+ ]
168
+ },
169
+ {
170
+ "name": "xbrl:positiveTerseLabel",
171
+ "uri": "http://www.xbrl.org/2003/role/positiveTerseLabel",
172
+ "allowedObjects": [
173
+ "xbrl:conceptObject"
174
+ ]
175
+ },
176
+ {
177
+ "name": "xbrl:positiveVerboseLabel",
178
+ "uri": "http://www.xbrl.org/2003/role/positiveVerboseLabel",
179
+ "allowedObjects": [
180
+ "xbrl:conceptObject"
181
+ ]
182
+ },
183
+ {
184
+ "name": "xbrl:negativeLabel",
185
+ "uri": "http://www.xbrl.org/2003/role/negativeLabel",
186
+ "allowedObjects": [
187
+ "xbrl:conceptObject"
188
+ ]
189
+ },
190
+ {
191
+ "name": "xbrl:negativeTerseLabel",
192
+ "uri": "http://www.xbrl.org/2003/role/negativeTerseLabel",
193
+ "allowedObjects": [
194
+ "xbrl:conceptObject"
195
+ ]
196
+ },
197
+ {
198
+ "name": "xbrl:negativeVerboseLabel",
199
+ "uri": "http://www.xbrl.org/2003/role/negativeVerboseLabel",
200
+ "allowedObjects": [
201
+ "xbrl:conceptObject"
202
+ ]
203
+ },
204
+ {
205
+ "name": "xbrl:zeroLabel",
206
+ "uri": "http://www.xbrl.org/2003/role/zeroLabel",
207
+ "allowedObjects": [
208
+ "xbrl:conceptObject"
209
+ ]
210
+ },
211
+ {
212
+ "name": "xbrl:zeroTerseLabel",
213
+ "uri": "http://www.xbrl.org/2003/role/zeroTerseLabel",
214
+ "allowedObjects": [
215
+ "xbrl:conceptObject"
216
+ ]
217
+ },
218
+ {
219
+ "name": "xbrl:zeroVerboseLabel",
220
+ "uri": "http://www.xbrl.org/2003/role/zeroVerboseLabel",
221
+ "allowedObjects": [
222
+ "xbrl:conceptObject"
223
+ ]
224
+ },
225
+ {
226
+ "name": "xbrl:totalLabel",
227
+ "uri": "http://www.xbrl.org/2003/role/totalLabel",
228
+ "allowedObjects": [
229
+ "xbrl:conceptObject"
230
+ ]
231
+ },
232
+ {
233
+ "name": "xbrl:periodStartLabel",
234
+ "uri": "http://www.xbrl.org/2003/role/periodStartLabel",
235
+ "allowedObjects": [
236
+ "xbrl:conceptObject"
237
+ ]
238
+ },
239
+ {
240
+ "name": "xbrl:periodEndLabel",
241
+ "uri": "http://www.xbrl.org/2003/role/periodEndLabel",
242
+ "allowedObjects": [
243
+ "xbrl:conceptObject"
244
+ ]
245
+ },
246
+ {
247
+ "name": "xbrl:documentation",
248
+ "uri": "http://www.xbrl.org/2003/role/documentation"
249
+ },
250
+ {
251
+ "name": "xbrl:definitionGuidance",
252
+ "uri": "http://www.xbrl.org/2003/role/definitionGuidance"
253
+ },
254
+ {
255
+ "name": "xbrl:disclosureGuidance",
256
+ "uri": "http://www.xbrl.org/2003/role/disclosureGuidance"
257
+
258
+ },
259
+ {
260
+ "name": "xbrl:presentationGuidance",
261
+ "uri": "http://www.xbrl.org/2003/role/presentationGuidance"
262
+
263
+ },
264
+ {
265
+ "name": "xbrl:measurementGuidance",
266
+ "uri": "http://www.xbrl.org/2003/role/measurementGuidance"
267
+
268
+ },
269
+ {
270
+ "name": "xbrl:commentaryGuidance",
271
+ "uri": "http://www.xbrl.org/2003/role/commentaryGuidance"
272
+
273
+ },
274
+ {
275
+ "name": "xbrl:exampleGuidance",
276
+ "uri": "http://www.xbrl.org/2003/role/exampleGuidance"
277
+
278
+ },
279
+ {
280
+ "name": "xbrl:commonPracticeRef",
281
+ "uri": "http://www.xbrl.org/2009/role/commonPracticeRef"
282
+ },
283
+ {
284
+ "name": "xbrl:deprecatedDateLabel",
285
+ "uri": "http://www.xbrl.org/2009/role/deprecatedDateLabel"
286
+ },
287
+ {
288
+ "name": "xbrl:deprecatedLabel",
289
+ "uri": "http://www.xbrl.org/2009/role/deprecatedLabel"
290
+ },
291
+ {
292
+ "name": "xbrl:negated",
293
+ "uri": "http://xbrl.us/us-gaap/role/label/negated",
294
+ "allowedObjects": [
295
+ "xbrl:conceptObject"
296
+ ]
297
+ },
298
+ {
299
+ "name": "xbrl:negatedLabel",
300
+ "uri": "http://www.xbrl.org/2009/role/negatedLabel",
301
+ "allowedObjects": [
302
+ "xbrl:conceptObject"
303
+ ]
304
+ },
305
+ {
306
+ "name": "xbrl:negatedNetLabel",
307
+ "uri": "http://www.xbrl.org/2009/role/negatedNetLabel",
308
+ "allowedObjects": [
309
+ "xbrl:conceptObject"
310
+ ]
311
+ },
312
+ {
313
+ "name": "xbrl:negatedPeriodEnd",
314
+ "uri": "http://xbrl.us/us-gaap/role/label/negatedPeriodEnd",
315
+ "allowedObjects": [
316
+ "xbrl:conceptObject"
317
+ ]
318
+ },
319
+ {
320
+ "name": "xbrl:negatedPeriodEndLabel",
321
+ "uri": "http://www.xbrl.org/2009/role/negatedPeriodEndLabel",
322
+ "allowedObjects": [
323
+ "xbrl:conceptObject"
324
+ ]
325
+ },
326
+ {
327
+ "name": "xbrl:negatedPeriodStart",
328
+ "uri": "http://xbrl.us/us-gaap/role/label/negatedPeriodStart",
329
+ "allowedObjects": [
330
+ "xbrl:conceptObject"
331
+ ]
332
+ },
333
+ {
334
+ "name": "xbrl:negatedPeriodStartLabel",
335
+ "uri": "http://www.xbrl.org/2009/role/negatedPeriodStartLabel",
336
+ "allowedObjects": [
337
+ "xbrl:conceptObject"
338
+ ]
339
+ },
340
+ {
341
+ "name": "xbrl:negatedTerseLabel",
342
+ "uri": "http://www.xbrl.org/2009/role/negatedTerseLabel",
343
+ "allowedObjects": [
344
+ "xbrl:conceptObject"
345
+ ]
346
+ },
347
+ {
348
+ "name": "xbrl:negatedTotal",
349
+ "uri": "http://xbrl.us/us-gaap/role/label/negatedTotal",
350
+ "allowedObjects": [
351
+ "xbrl:conceptObject"
352
+ ]
353
+ },
354
+ {
355
+ "name": "xbrl:negatedTotalLabel",
356
+ "uri": "http://www.xbrl.org/2009/role/negatedTotalLabel",
357
+ "allowedObjects": [
358
+ "xbrl:conceptObject"
359
+ ]
360
+ },
361
+ {
362
+ "name": "xbrl:negativePeriodEndLabel",
363
+ "uri": "http://www.xbrl.org/2009/role/negativePeriodEndTotalLabel",
364
+ "allowedObjects": [
365
+ "xbrl:conceptObject"
366
+ ]
367
+ },
368
+ {
369
+ "name": "xbrl:negativePeriodEndTotalLabel",
370
+ "uri": "http://www.xbrl.org/2009/role/negativePeriodEndTotalLabel",
371
+ "allowedObjects": [
372
+ "xbrl:conceptObject"
373
+ ]
374
+ },
375
+ {
376
+ "name": "xbrl:negativePeriodStartLabel",
377
+ "uri": "http://www.xbrl.org/2009/role/negativePeriodStartLabel",
378
+ "allowedObjects": [
379
+ "xbrl:conceptObject"
380
+ ]
381
+ },
382
+ {
383
+ "name": "xbrl:negativePeriodStartTotalLabel",
384
+ "uri": "http://www.xbrl.org/2009/role/negativePeriodStartTotalLabel",
385
+ "allowedObjects": [
386
+ "xbrl:conceptObject"
387
+ ]
388
+ },
389
+ {
390
+ "name": "xbrl:netLabel",
391
+ "uri": "http://www.xbrl.org/2009/role/netLabel",
392
+ "allowedObjects": [
393
+ "xbrl:conceptObject"
394
+ ]
395
+ },
396
+ {
397
+ "name": "xbrl:positivePeriodEndLabel",
398
+ "uri": "http://www.xbrl.org/2009/role/positivePeriodEndLabel",
399
+ "allowedObjects": [
400
+ "xbrl:conceptObject"
401
+ ]
402
+ },
403
+ {
404
+ "name": "xbrl:positivePeriodEndTotalLabel",
405
+ "uri": "http://www.xbrl.org/2009/role/positivePeriodStartTotalLabel",
406
+ "allowedObjects": [
407
+ "xbrl:conceptObject"
408
+ ]
409
+ },
410
+ {
411
+ "name": "xbrl:positivePeriodStartLabel",
412
+ "uri": "http://www.xbrl.org/2009/role/positivePeriodStartLabel",
413
+ "allowedObjects": [
414
+ "xbrl:conceptObject"
415
+ ]
416
+ },
417
+ {
418
+ "name": "xbrl:positivePeriodStartTotalLabel",
419
+ "uri": "http://www.xbrl.org/2009/role/positivePeriodStartTotalLabel",
420
+ "allowedObjects": [
421
+ "xbrl:conceptObject"
422
+ ]
423
+ },
424
+ {
425
+ "name": "xbrl:restatedLabel",
426
+ "uri": "http://www.xbrl.org/2006/role/restatedLabel",
427
+ "allowedObjects": [
428
+ "xbrl:conceptObject"
429
+ ]
430
+ },
431
+ {
432
+ "name": "xbrl:symbolLabel",
433
+ "allowedObjects": [
434
+ "xbrl:unitObject"
435
+ ]
436
+ }
437
+ ],
438
+ "labels" : [
439
+ {
440
+ "labelType": "xbrl:documentation",
441
+ "language": "en",
442
+ "relatedName": "xbrl:label",
443
+ "value": "Standard label for an object."
444
+ },
445
+ {
446
+ "labelType": "xbrl:documentation",
447
+ "language": "en",
448
+ "relatedName": "xbrl:terseLabel",
449
+ "value": "Short label for an object, often omitting text that should be inferable when the object is reported in the context of other related objects."
450
+ },
451
+ {
452
+ "labelType": "xbrl:documentation",
453
+ "language": "en",
454
+ "relatedName": "xbrl:verboseLabel",
455
+ "value": "Extended label for an object, making sure not to omit text that is required to enable the label to be understood on a stand alone basis."
456
+ },
457
+ {
458
+ "labelType": "xbrl:documentation",
459
+ "language": "en",
460
+ "relatedName": "xbrl:positiveLabel",
461
+ "value": "Label for a concept, when the value being presented is positive. For example, the standard and standard positive labels might be 'profit after tax' and the standard negative labels 'loss after tax', the terse label and terse positive labels might both be 'profit', while the negative terse label might be 'loss'."
462
+ },
463
+ {
464
+ "labelType": "xbrl:documentation",
465
+ "language": "en",
466
+ "relatedName": "xbrl:positiveTerseLabel",
467
+ "value": "Label for a concept, when the value being presented is positive. For example, the standard and standard positive labels might be 'profit after tax' and the standard negative labels 'loss after tax', the terse label and terse positive labels might both be 'profit', while the negative terse label might be 'loss'."
468
+ },
469
+ {
470
+ "labelType": "xbrl:documentation",
471
+ "language": "en",
472
+ "relatedName": "xbrl:positiveVerboseLabel",
473
+ "value": "Label for a concept, when the value being presented is positive. For example, the standard and standard positive labels might be 'profit after tax' and the standard negative labels 'loss after tax', the terse label and terse positive labels might both be 'profit', while the negative terse label might be 'loss'."
474
+ },
475
+ {
476
+ "labelType": "xbrl:documentation",
477
+ "language": "en",
478
+ "relatedName": "xbrl:negativeLabel",
479
+ "value": "Label for a concept, when the value being presented is negative. For example, the standard and standard positive labels might be 'profit after tax' and the standard negative labels 'loss after tax', the terse label and terse positive labels might both be 'profit', while the negative terse label might be 'loss'."
480
+ },
481
+ {
482
+ "labelType": "xbrl:documentation",
483
+ "language": "en",
484
+ "relatedName": "xbrl:negativeTerseLabel",
485
+ "value": "Label for a concept, when the value being presented is negative. For example, the standard and standard positive labels might be 'profit after tax' and the standard negative labels 'loss after tax', the terse label and terse positive labels might both be 'profit', while the negative terse label might be 'loss'."
486
+ },
487
+ {
488
+ "labelType": "xbrl:documentation",
489
+ "language": "en",
490
+ "relatedName": "xbrl:negativeVerboseLabel",
491
+ "value": "Label for a concept, when the value being presented is negative. For example, the standard and standard positive labels might be 'profit after tax' and the standard negative labels 'loss after tax', the terse label and terse positive labels might both be 'profit', while the negative terse label might be 'loss'."
492
+ },
493
+ {
494
+ "labelType": "xbrl:documentation",
495
+ "language": "en",
496
+ "relatedName": "xbrl:zeroLabel",
497
+ "value": "Label for a concept, when the value being presented is zero."
498
+ },
499
+ {
500
+ "labelType": "xbrl:documentation",
501
+ "language": "en",
502
+ "relatedName": "xbrl:zeroTerseLabel",
503
+ "value": "Label for a concept, when the value being presented is zero."
504
+ },
505
+ {
506
+ "labelType": "xbrl:documentation",
507
+ "language": "en",
508
+ "relatedName": "xbrl:zeroVerboseLabel",
509
+ "value": "Label for a concept, when the value being presented is zero."
510
+ },
511
+ {
512
+ "labelType": "xbrl:documentation",
513
+ "language": "en",
514
+ "relatedName": "xbrl:totalLabel",
515
+ "value": "The label for a concept for use in presenting values associated with the concept when it is being reported as the total of a set of other values."
516
+ },
517
+ {
518
+ "labelType": "xbrl:documentation",
519
+ "language": "en",
520
+ "relatedName": "xbrl:periodStartLabel",
521
+ "value": "The label for a concept with periodType='instant' for use in presenting values associated with the concept when it is being reported as a start (end) of period value."
522
+ },
523
+ {
524
+ "labelType": "xbrl:documentation",
525
+ "language": "en",
526
+ "relatedName": "xbrl:periodEndLabel",
527
+ "value": "The label for a concept with periodType='instant' for use in presenting values associated with the object when it is being reported as a start (end) of period value."
528
+ },
529
+ {
530
+ "labelType": "xbrl:documentation",
531
+ "language": "en",
532
+ "relatedName": "xbrl:documentation",
533
+ "value": "Documentation of an object, providing an explanation of its meaning and its appropriate usage and any other documentation deemed necessary."
534
+ },
535
+ {
536
+ "labelType": "xbrl:documentation",
537
+ "language": "en",
538
+ "relatedName": "xbrl:definitionGuidance",
539
+ "value": "A precise definition of an object, providing an explanation of its meaning and its appropriate usage."
540
+ },
541
+ {
542
+ "labelType": "xbrl:documentation",
543
+ "language": "en",
544
+ "relatedName": "xbrl:disclosureGuidance",
545
+ "value": "An explanation of the disclosure requirements relating to the object. Indicates whether the disclosure is mandatory (i.e. prescribed by authoritative literature); recommended (i.e. encouraged by authoritative literature); common practice (i.e. not prescribed by authoritative literature, but disclosure is common); structural completeness (i.e., included to complete the structure of the taxonomy)."
546
+ },
547
+ {
548
+ "labelType": "xbrl:documentation",
549
+ "language": "en",
550
+ "relatedName": "xbrl:presentationGuidance",
551
+ "value": "An explanation of the rules guiding presentation (placement and/or labelling) of this object in the context of other objects in one or more specific types of business reports. For example, 'Net Surplus should be disclosed on the face of the Profit and Loss statement'."
552
+ },
553
+ {
554
+ "labelType": "xbrl:documentation",
555
+ "language": "en",
556
+ "relatedName": "xbrl:measurementGuidance",
557
+ "value": "An explanation of the method(s) required to be used when measuring values associated with this object in business reports."
558
+ },
559
+ {
560
+ "labelType": "xbrl:documentation",
561
+ "language": "en",
562
+ "relatedName": "xbrl:commentaryGuidance",
563
+ "value": "Any other general commentary on the object that assists in determining definition, disclosure, measurement, presentation or usage."
564
+ },
565
+ {
566
+ "labelType": "xbrl:documentation",
567
+ "language": "en",
568
+ "relatedName": "xbrl:exampleGuidance",
569
+ "value": "An example of the type of information intended to be captured by the object."
570
+ },
571
+
572
+ {
573
+ "labelType": "xbrl:documentation",
574
+ "language": "en",
575
+ "relatedName": "xbrl:commonPracticeRef",
576
+ "value": "Reference to documentation that details common practice."
577
+ },
578
+ {
579
+ "labelType": "xbrl:documentation",
580
+ "language": "en",
581
+ "relatedName": "xbrl:deprecatedDateLabel",
582
+ "value": "Label indicating the date when the concept was deprecated."
583
+ },
584
+ {
585
+ "labelType": "xbrl:documentation",
586
+ "language": "en",
587
+ "relatedName": "xbrl:deprecatedLabel",
588
+ "value": "Label indicating that the concept is deprecated."
589
+ },
590
+ {
591
+ "labelType": "xbrl:documentation",
592
+ "language": "en",
593
+ "relatedName": "xbrl:negated",
594
+ "value": "When this label is the preferred label on a presentation arc whose target is an element having a numeric type, a conforming processor will not only present the fact using the specified label but will also present the its fact values negated."
595
+ },
596
+ {
597
+ "labelType": "xbrl:documentation",
598
+ "language": "en",
599
+ "relatedName": "xbrl:negatedLabel",
600
+ "value": "Label for a concept, when the value being presented should be negated (sign of the value should be 'flipped'). For example, the standard and standard positive labels might be 'profit (loss) after tax' and the negated labels 'loss (profit) after tax'."
601
+ },
602
+ {
603
+ "labelType": "xbrl:documentation",
604
+ "language": "en",
605
+ "relatedName": "xbrl:negatedNetLabel",
606
+ "value": "Label indicating that the net value is negated."
607
+ },
608
+ {
609
+ "labelType": "xbrl:documentation",
610
+ "language": "en",
611
+ "relatedName": "xbrl:negatedPeriodEnd",
612
+ "value": "Indicates that the period end value is negated."
613
+ },
614
+ {
615
+ "labelType": "xbrl:documentation",
616
+ "language": "en",
617
+ "relatedName": "xbrl:negatedPeriodEndLabel",
618
+ "value": "Label for a concept, when the value being presented should be negated (sign of the value should be 'flipped'). For example, the standard and standard positive labels might be 'profit (loss) after tax' and the negated labels 'loss (profit) after tax'."
619
+ },
620
+ {
621
+ "labelType": "xbrl:documentation",
622
+ "language": "en",
623
+ "relatedName": "xbrl:negatedPeriodStart",
624
+ "value": "Indicates that the period start value is negated."
625
+ },
626
+ {
627
+ "labelType": "xbrl:documentation",
628
+ "language": "en",
629
+ "relatedName": "xbrl:negatedPeriodStartLabel",
630
+ "value": "Label for a concept, when the value being presented should be negated (sign of the value should be 'flipped'). For example, the standard and standard positive labels might be 'profit (loss) after tax' and the negated labels 'loss (profit) after tax'."
631
+ },
632
+ {
633
+ "labelType": "xbrl:documentation",
634
+ "language": "en",
635
+ "relatedName": "xbrl:negatedTerseLabel",
636
+ "value": "Short label indicating that the value is negated."
637
+ },
638
+ {
639
+ "labelType": "xbrl:documentation",
640
+ "language": "en",
641
+ "relatedName": "xbrl:negatedTotal",
642
+ "value": "Indicates that the total value is negated."
643
+ },
644
+ {
645
+ "labelType": "xbrl:documentation",
646
+ "language": "en",
647
+ "relatedName": "xbrl:negatedTotalLabel",
648
+ "value": "Label for a concept, when the value being presented should be negated (sign of the value should be 'flipped'). For example, the standard and standard positive labels might be 'profit (loss) after tax' and the negated labels 'loss (profit) after tax'."
649
+ },
650
+ {
651
+ "labelType": "xbrl:documentation",
652
+ "language": "en",
653
+ "relatedName": "xbrl:negativePeriodEndLabel",
654
+ "value": "Label for a concept with periodType='instant' for use in presenting values associated with the concept when it is being reported as a negative period end value."
655
+ },
656
+ {
657
+ "labelType": "xbrl:documentation",
658
+ "language": "en",
659
+ "relatedName": "xbrl:negativePeriodEndTotalLabel",
660
+ "value": "Label for a concept with periodType='instant' for use in presenting values associated with the concept when it is being reported as a negative period end total value."
661
+ },
662
+ {
663
+ "labelType": "xbrl:documentation",
664
+ "language": "en",
665
+ "relatedName": "xbrl:negativePeriodStartLabel",
666
+ "value": "Label for a concept with periodType='instant' for use in presenting values associated with the concept when it is being reported as a negative period start value."
667
+ },
668
+ {
669
+ "labelType": "xbrl:documentation",
670
+ "language": "en",
671
+ "relatedName": "xbrl:negativePeriodStartTotalLabel",
672
+ "value": "Label for a concept, when the value being presented is negative."
673
+ },
674
+ {
675
+ "labelType": "xbrl:documentation",
676
+ "language": "en",
677
+ "relatedName": "xbrl:netLabel",
678
+ "value": "The label for a concept for use in presenting values associated with the concept when it is being reported as the net of a set of other values. Net labels allows for expressing different labels than the one which would be used as total label if the presentation tree represents gross/net calculation instead of traditional calculation roll-up. For example standard label for 'Property, plant and equipment' can have total label 'Total property, plant and equipment' and net label 'Net property, plant and equipment'."
679
+ },
680
+ {
681
+ "labelType": "xbrl:documentation",
682
+ "language": "en",
683
+ "relatedName": "xbrl:positivePeriodEndLabel",
684
+ "value": "Label for a concept, when the value being presented is positive."
685
+ },
686
+ {
687
+ "labelType": "xbrl:documentation",
688
+ "language": "en",
689
+ "relatedName": "xbrl:positivePeriodEndTotalLabel",
690
+ "value": "Label for a concept, when the value being presented is positive."
691
+ },
692
+ {
693
+ "labelType": "xbrl:documentation",
694
+ "language": "en",
695
+ "relatedName": "xbrl:positivePeriodStartLabel",
696
+ "value": "Label for a concept with periodType='instant' for use in presenting values associated with the concept when it is being reported as a positive period start value."
697
+ },
698
+ {
699
+ "labelType": "xbrl:documentation",
700
+ "language": "en",
701
+ "relatedName": "xbrl:positivePeriodStartTotalLabel",
702
+ "value": "Label for a concept, when the value being presented is positive."
703
+ },
704
+ {
705
+ "labelType": "xbrl:documentation",
706
+ "language": "en",
707
+ "relatedName": "xbrl:restatedLabel",
708
+ "value": "At times an entity may restate certain account balances for financial reporting purposes. This may only occur according to specific reporting rules. For example, an entity may restate an equity account balance, say 'Reserves', due to an accounting change or fundamental error under International Financial Reporting Standards (IFRS). A separate label role is provided for such reporting of restated amounts, should they occur. The restated amount within a financial statement might provide a label such as 'Reserves, Restated Balance' to which this label role would be assigned to identify this type of label. Taxonomy creators would use this label role and provide a label which could be used on concepts that could be restated. Typically, these would be used on equity accounts."
709
+ },
710
+ {
711
+ "labelType": "xbrl:documentation",
712
+ "language": "en",
713
+ "relatedName": "xbrl:symbolLabel",
714
+ "value": "Label for a unit, when the unit is represented by a symbol."
715
+ },
716
+ {
717
+ "labelType": "xbrl:documentation",
718
+ "language": "en",
719
+ "relatedName": "xbrl:reference",
720
+ "value": "Standard reference for a Concept"
721
+ },
722
+ {
723
+ "labelType": "xbrl:documentation",
724
+ "language": "en",
725
+ "relatedName": "xbrl:definitionRef",
726
+ "value": "Reference to documentation that details a precise definition of the object."
727
+ },
728
+ {
729
+ "labelType": "xbrl:documentation",
730
+ "language": "en",
731
+ "relatedName": "xbrl:disclosureRef",
732
+ "value": "Reference to documentation that details an explanation of the disclosure requirements relating to the object. Specified categories include: mandatory, recommended"
733
+ },
734
+ {
735
+ "labelType": "xbrl:documentation",
736
+ "language": "en",
737
+ "relatedName": "xbrl:mandatoryDisclosureRef",
738
+ "value": "Reference to documentation that details an explanation of the disclosure requirements relating to the object. Specified categories include: mandatory"
739
+ },
740
+ {
741
+ "labelType": "xbrl:documentation",
742
+ "language": "en",
743
+ "relatedName": "xbrl:recommendedDisclosureRef",
744
+ "value": "Reference to documentation that details an explanation of the disclosure requirements relating to the object. Specified categories include: recommended"
745
+ },
746
+ {
747
+ "labelType": "xbrl:documentation",
748
+ "language": "en",
749
+ "relatedName": "xbrl:unspecifiedDisclosureRef",
750
+ "value": "Reference to documentation that details an explanation of the disclosure requirements relating to the object. Unspecified categories include, but are not limited to: common practice, structural completeness. The latter categories do not reference documentation but are indicated in the link role to indicate why the Concept has been included in the taxonomy."
751
+ },
752
+ {
753
+ "labelType": "xbrl:documentation",
754
+ "language": "en",
755
+ "relatedName": "xbrl:presentationRef",
756
+ "value": "Reference to documentation which details an explanation of the presentation, placement or labelling of this object in the context of other objects in one or more specific types of business reports"
757
+ },
758
+ {
759
+ "labelType": "xbrl:documentation",
760
+ "language": "en",
761
+ "relatedName": "xbrl:measurementRef",
762
+ "value": "Reference concerning the method(s) required to be used when measuring values associated with this object in business reports"
763
+ },
764
+ {
765
+ "labelType": "xbrl:documentation",
766
+ "language": "en",
767
+ "relatedName": "xbrl:commentaryRef",
768
+ "value": "Any other general commentary on the object that assists in determining appropriate usage"
769
+ },
770
+ {
771
+ "labelType": "xbrl:documentation",
772
+ "language": "en",
773
+ "relatedName": "xbrl:exampleRef",
774
+ "value": "Reference to documentation that illustrates by example the application of the object that assists in determining appropriate usage."
775
+ },
776
+ {
777
+ "labelType": "xbrl:documentation",
778
+ "language": "en",
779
+ "relatedName": "xbrl:dep-concept-deprecatedConcept",
780
+ "value": "Deprecated: concept - deprecated concept."
781
+ },
782
+ {
783
+ "labelType": "xbrl:documentation",
784
+ "language": "en",
785
+ "relatedName": "xbrl:dep-aggregateConcept-deprecatedPartConcept",
786
+ "value": "Deprecated: aggreate concept - deprecated part concept."
787
+ },
788
+ {
789
+ "labelType": "xbrl:documentation",
790
+ "language": "en",
791
+ "relatedName": "xbrl:dep-dimensionallyQualifiedConcept-deprecatedConcept",
792
+ "value": "Deprecated: dimensionally qualified concept - deprecated concept."
793
+ },
794
+ {
795
+ "labelType": "xbrl:documentation",
796
+ "language": "en",
797
+ "relatedName": "xbrl:dep-mutuallyExclusiveConcept-deprecatedConcept",
798
+ "value": "Deprecated: mutually exclusive concept - deprecated concept."
799
+ },
800
+ {
801
+ "labelType": "xbrl:documentation",
802
+ "language": "en",
803
+ "relatedName": "xbrl:dep-partConcept-deprecatedAggregateConcept",
804
+ "value": "Deprecated: part concept - deprecated aggregate concept."
805
+ }
806
+ ],
807
+ "propertyTypes": [
808
+ {
809
+ "name": "xbrl:balance",
810
+ "dataType": "xbrli:balanceType",
811
+ "definitional": true,
812
+ "allowedObjects": [
813
+ "xbrl:conceptObject"
814
+ ]
815
+ },
816
+ {
817
+ "name": "xbrl:semanticLink",
818
+ "dataType": "xs:anyURI",
819
+ "definitional": false,
820
+ "allowedObjects": [
821
+ "xbrl:referenceObject"
822
+ ]
823
+ },
824
+ {
825
+ "name": "xbrl:weight",
826
+ "dataType": "xs:decimal",
827
+ "definitional": false,
828
+ "allowedObjects": [
829
+ "xbrl:relationshipObject"
830
+ ]
831
+ },
832
+ {
833
+ "name": "xbrl:aggregation",
834
+ "dataType": "xbrli:aggregationType",
835
+ "definitional": false,
836
+ "allowedObjects": [
837
+ "xbrl:relationshipObject"
838
+ ]
839
+ },
840
+ {
841
+ "name": "xbrl:order",
842
+ "dataType": "xs:decimal",
843
+ "definitional": false,
844
+ "allowedObjects": [
845
+ "xbrl:relationshipObject"
846
+ ]
847
+ },
848
+ {
849
+ "name":"xbrl:preferredLabel",
850
+ "dataType": "xs:QName",
851
+ "definitional": false,
852
+ "allowedObjects": [
853
+ "xbrl:relationshipObject"
854
+ ]
855
+ },
856
+ {
857
+ "name":"xbrl:abstractDataType",
858
+ "dataType": "xs:QName",
859
+ "definitional": true,
860
+ "allowedObjects": [
861
+ "xbrl:abstractObject"
862
+ ]
863
+ }
864
+ ],
865
+ "referenceTypes": [
866
+ {
867
+ "name": "xbrl:reference",
868
+ "uri": "http://www.xbrl.org/2003/role/reference"
869
+ },
870
+ {
871
+ "name": "xbrl:definitionRef",
872
+ "uri": "http://www.xbrl.org/2003/role/definitionRef"
873
+ },
874
+ {
875
+ "name": "xbrl:disclosureRef",
876
+ "uri": "http://www.xbrl.org/2003/role/disclosureRef"
877
+ },
878
+ {
879
+ "name": "xbrl:mandatoryDisclosureRef",
880
+ "uri": "http://www.xbrl.org/2003/role/mandatoryDisclosureRef"
881
+ },
882
+ {
883
+ "name": "xbrl:recommendedDisclosureRef",
884
+ "uri": "http://www.xbrl.org/2003/role/recommendedDisclosureRef"
885
+ },
886
+ {
887
+ "name": "xbrl:unspecifiedDisclosureRef",
888
+ "uri": "http://www.xbrl.org/2003/role/unspecifiedDisclosureRef"
889
+ },
890
+ {
891
+ "name": "xbrl:presentationRef",
892
+ "uri": "http://www.xbrl.org/2003/role/presentationRef"
893
+ },
894
+ {
895
+ "name": "xbrl:measurementRef",
896
+ "uri": "http://www.xbrl.org/2003/role/measurementRef"
897
+ },
898
+ {
899
+ "name": "xbrl:commentaryRef",
900
+ "uri": "http://www.xbrl.org/2003/role/commentaryRef"
901
+ },
902
+ {
903
+ "name": "xbrl:exampleRef",
904
+ "uri": "http://www.xbrl.org/2003/role/exampleRef"
905
+ },
906
+ {
907
+ "name":"xbrl:dataTypeRequirement",
908
+ "allowedObjects": [
909
+ "xbrl:dataTypeObject"
910
+ ]
911
+ },
912
+ {
913
+ "name":"xbrl:specStatus",
914
+ "allowedObjects": [
915
+ "xbrl:dataTypeObject"
916
+ ]
917
+ },
918
+ {
919
+ "name": "xbrl:semanticRef",
920
+ "requiredProperties" : [
921
+ "xbrl:semanticLink"
922
+ ]
923
+ }
924
+ ],
925
+ "relationshipTypes": [
926
+ {
927
+ "name": "xbrl:parent-child",
928
+ "uri": "http://www.xbrl.org/2003/arcrole/parent-child",
929
+ "cycles" : "undirected",
930
+ "allowedLinkProperties" : ["xbrl:preferredLabel", "xbrl:order"],
931
+ "sourceObjects" : [
932
+ "xbrl:conceptObject",
933
+ "xbrl:memberObject",
934
+ "xbrl:domainObject",
935
+ "xbrl:dimensionObject",
936
+ "xbrl:cubeObject",
937
+ "xbrl:entityObject",
938
+ "xbrl:unitObject",
939
+ "xbrl:tableTemplateObject"
940
+ ],
941
+ "targetObjects" : [
942
+ "xbrl:conceptObject",
943
+ "xbrl:memberObject",
944
+ "xbrl:domainObject",
945
+ "xbrl:dimensionObject",
946
+ "xbrl:cubeObject",
947
+ "xbrl:entityObject",
948
+ "xbrl:unitObject",
949
+ "xbrl:tableTemplateObject"
950
+ ]
951
+ },
952
+ {
953
+ "name": "xbrl:summation-item",
954
+ "uri": "https://xbrl.org/2023/arcrole/summation-item",
955
+ "cycles" : "undirected",
956
+ "allowedLinkProperties" : ["xbrl:weight", "xbrl:order"],
957
+ "requiredLinkProperties" : ["xbrl:weight"],
958
+ "sourceObjects" : ["xbrl:conceptObject"],
959
+ "targetObjects" : ["xbrl:conceptObject"]
960
+ },
961
+ {
962
+ "name": "xbrl:class-subclass",
963
+ "uri": "http://www.xbrl.org/2003/arcrole/class-subclass",
964
+ "cycles" : "none",
965
+ "allowedLinkProperties" : ["xbrl:order"],
966
+ "sourceObjects" : ["xbrl:conceptObject"],
967
+ "targetObjects" : ["xbrl:conceptObject"]
968
+ },
969
+ {
970
+ "name": "xbrl:general-special",
971
+ "uri": "http://www.xbrl.org/2003/arcrole/general-special",
972
+ "cycles" : "undirected",
973
+ "allowedLinkProperties" : ["xbrl:order"],
974
+ "sourceObjects" : ["xbrl:conceptObject"],
975
+ "targetObjects" : ["xbrl:conceptObject"]
976
+ },
977
+ {
978
+ "name": "xbrl:instant-accrual",
979
+ "uri": "http://xbrl.org/oim/instant-accrual",
980
+ "cycles" : "undirected",
981
+ "sourceObjects" : ["xbrl:conceptObject"],
982
+ "targetObjects" : ["xbrl:conceptObject"]
983
+ },
984
+ {
985
+ "name": "xbrl:instant-inflow",
986
+ "uri": "http://xbrl.org/oim/instant-inflow",
987
+ "cycles" : "undirected",
988
+ "sourceObjects" : ["xbrl:conceptObject"],
989
+ "targetObjects" : ["xbrl:conceptObject"]
990
+ },
991
+ {
992
+ "name": "xbrl:instant-outflow",
993
+ "uri": "http://xbrl.org/oim/instant-outflow",
994
+ "cycles" : "none",
995
+ "sourceObjects" : ["xbrl:conceptObject"],
996
+ "targetObjects" : ["xbrl:conceptObject"]
997
+ },
998
+ {
999
+ "name": "xbrl:instant-contra",
1000
+ "uri": "http://xbrl.org/oim/instant-contra",
1001
+ "cycles" : "undirected",
1002
+ "sourceObjects" : ["xbrl:conceptObject"],
1003
+ "targetObjects" : ["xbrl:conceptObject"]
1004
+ },
1005
+ {
1006
+ "name": "xbrl:property-concept",
1007
+ "uri": "http://xbrl.org/oim/property-concept",
1008
+ "cycles" : "undirected",
1009
+ "allowedLinkProperties" : ["xbrl:propertyObject"],
1010
+ "requiredLinkProperties" : ["xbrl:propertyObject"],
1011
+ "sourceObjects" : ["xbrl:memberObject"],
1012
+ "targetObjects" : ["xbrl:conceptObject"]
1013
+ },
1014
+ {
1015
+ "name": "xbrl:concept-refDimension",
1016
+ "uri": "http://xbrl.org/oim/concept-refDimension",
1017
+ "cycles" : "undirected",
1018
+ "sourceObjects" : ["xbrl:conceptObject"],
1019
+ "targetObjects" : ["xbrl:dimensionObject"]
1020
+ },
1021
+ {
1022
+ "name": "xbrl:concept-aggDimension",
1023
+ "uri": "http://xbrl.org/oim/concept-aggDimension",
1024
+ "cycles" : "undirected",
1025
+ "allowedLinkProperties" : ["xbrl:aggregation"],
1026
+ "requiredLinkProperties" : ["xbrl:aggregation"],
1027
+ "sourceObjects" : ["xbrl:conceptObject"],
1028
+ "targetObjects" : ["xbrl:dimensionObject"]
1029
+ },
1030
+ {
1031
+ "name": "xbrl:unit-factConcept",
1032
+ "uri": "http://xbrl.org/oim/unit-factConcept",
1033
+ "cycles" : "undirected",
1034
+ "sourceObjects" : ["xbrl:unitObject"],
1035
+ "targetObjects" : ["xbrl:conceptObject"]
1036
+ },
1037
+ {
1038
+ "name": "xbrl:unitFact-factConcept",
1039
+ "uri": "http://xbrl.org/oim/unitFact-factConcept",
1040
+ "cycles" : "undirected",
1041
+ "sourceObjects" : ["xbrl:conceptObject"],
1042
+ "targetObjects" : ["xbrl:conceptObject"]
1043
+ },
1044
+ {
1045
+ "name": "xbrl:dep-concept-deprecatedConcept",
1046
+ "uri": "http://www.xbrl.org/2009/arcrole/dep-concept-deprecatedConcept",
1047
+ "cycles" : "undirected",
1048
+ "sourceObjects" : ["xbrl:conceptObject"],
1049
+ "targetObjects" : ["xbrl:conceptObject"]
1050
+ },
1051
+ {
1052
+ "name": "xbrl:dep-aggregateConcept-deprecatedPartConcept",
1053
+ "uri": "http://www.xbrl.org/2009/arcrole/dep-aggregateConcept-deprecatedPartConcept",
1054
+ "cycles" : "undirected",
1055
+ "sourceObjects" : ["xbrl:conceptObject"],
1056
+ "targetObjects" : ["xbrl:conceptObject"]
1057
+ },
1058
+ {
1059
+ "name": "xbrl:dep-dimensionallyQualifiedConcept-deprecatedConcept",
1060
+ "uri": "http://www.xbrl.org/2009/arcrole/dep-dimensionallyQualifiedConcept-deprecatedConcept",
1061
+ "cycles" : "undirected",
1062
+ "sourceObjects" : ["xbrl:conceptObject"],
1063
+ "targetObjects" : ["xbrl:conceptObject"]
1064
+ },
1065
+ {
1066
+ "name": "xbrl:dep-mutuallyExclusiveConcept-deprecatedConcept",
1067
+ "uri": "http://www.xbrl.org/2009/arcrole/dep-mutuallyExclusiveConcept-deprecatedConcept",
1068
+ "cycles" : "undirected",
1069
+ "sourceObjects" : ["xbrl:conceptObject"],
1070
+ "targetObjects" : ["xbrl:conceptObject"]
1071
+ },
1072
+ {
1073
+ "name": "xbrl:dep-partConcept-deprecatedAggregateConcept",
1074
+ "uri": "http://www.xbrl.org/2009/arcrole/dep-partConcept-deprecatedAggregateConcept",
1075
+ "cycles" : "undirected",
1076
+ "sourceObjects" : ["xbrl:conceptObject"],
1077
+ "targetObjects" : ["xbrl:conceptObject"]
1078
+ }
1079
+ ]
1080
+
1081
+ }
1082
+ }