@zzzen/pyright-internal 1.2.0-dev.20231119 → 1.2.0-dev.20231126

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 (386) hide show
  1. package/dist/analyzer/analysis.d.ts +1 -1
  2. package/dist/analyzer/analysis.js +5 -1
  3. package/dist/analyzer/analysis.js.map +1 -1
  4. package/dist/analyzer/analyzerFileInfo.d.ts +1 -1
  5. package/dist/analyzer/analyzerNodeInfo.d.ts +1 -1
  6. package/dist/analyzer/analyzerNodeInfo.js +1 -1
  7. package/dist/analyzer/analyzerNodeInfo.js.map +1 -1
  8. package/dist/analyzer/backgroundAnalysisProgram.d.ts +1 -1
  9. package/dist/analyzer/backgroundAnalysisProgram.js +1 -1
  10. package/dist/analyzer/backgroundAnalysisProgram.js.map +1 -1
  11. package/dist/analyzer/binder.js +198 -194
  12. package/dist/analyzer/binder.js.map +1 -1
  13. package/dist/analyzer/cacheManager.js +1 -1
  14. package/dist/analyzer/cacheManager.js.map +1 -1
  15. package/dist/analyzer/checker.js +257 -239
  16. package/dist/analyzer/checker.js.map +1 -1
  17. package/dist/analyzer/codeFlowEngine.d.ts +1 -1
  18. package/dist/analyzer/codeFlowEngine.js +26 -26
  19. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  20. package/dist/analyzer/codeFlowTypes.d.ts +1 -1
  21. package/dist/analyzer/codeFlowTypes.js +23 -23
  22. package/dist/analyzer/codeFlowTypes.js.map +1 -1
  23. package/dist/analyzer/codeFlowUtils.js +39 -37
  24. package/dist/analyzer/codeFlowUtils.js.map +1 -1
  25. package/dist/analyzer/constraintSolver.js +40 -47
  26. package/dist/analyzer/constraintSolver.js.map +1 -1
  27. package/dist/analyzer/constructorTransform.js +8 -8
  28. package/dist/analyzer/constructorTransform.js.map +1 -1
  29. package/dist/analyzer/constructors.js +23 -25
  30. package/dist/analyzer/constructors.js.map +1 -1
  31. package/dist/analyzer/dataClasses.js +67 -63
  32. package/dist/analyzer/dataClasses.js.map +1 -1
  33. package/dist/analyzer/declaration.d.ts +2 -2
  34. package/dist/analyzer/declaration.js +10 -10
  35. package/dist/analyzer/declaration.js.map +1 -1
  36. package/dist/analyzer/declarationUtils.js +41 -41
  37. package/dist/analyzer/declarationUtils.js.map +1 -1
  38. package/dist/analyzer/decorators.js +51 -51
  39. package/dist/analyzer/decorators.js.map +1 -1
  40. package/dist/analyzer/enums.js +27 -27
  41. package/dist/analyzer/enums.js.map +1 -1
  42. package/dist/analyzer/functionTransform.js +4 -4
  43. package/dist/analyzer/functionTransform.js.map +1 -1
  44. package/dist/analyzer/importResolver.d.ts +1 -1
  45. package/dist/analyzer/importResolver.js +21 -17
  46. package/dist/analyzer/importResolver.js.map +1 -1
  47. package/dist/analyzer/importResult.js +1 -1
  48. package/dist/analyzer/importResult.js.map +1 -1
  49. package/dist/analyzer/importStatementUtils.js +31 -27
  50. package/dist/analyzer/importStatementUtils.js.map +1 -1
  51. package/dist/analyzer/namedTuples.js +36 -32
  52. package/dist/analyzer/namedTuples.js.map +1 -1
  53. package/dist/analyzer/operations.js +78 -78
  54. package/dist/analyzer/operations.js.map +1 -1
  55. package/dist/analyzer/packageTypeReport.d.ts +1 -1
  56. package/dist/analyzer/packageTypeReport.js +2 -2
  57. package/dist/analyzer/packageTypeReport.js.map +1 -1
  58. package/dist/analyzer/packageTypeVerifier.js +90 -90
  59. package/dist/analyzer/packageTypeVerifier.js.map +1 -1
  60. package/dist/analyzer/parameterUtils.js +14 -14
  61. package/dist/analyzer/parameterUtils.js.map +1 -1
  62. package/dist/analyzer/parentDirectoryCache.d.ts +2 -2
  63. package/dist/analyzer/parseTreeCleaner.js +5 -1
  64. package/dist/analyzer/parseTreeCleaner.js.map +1 -1
  65. package/dist/analyzer/parseTreeUtils.d.ts +1 -1
  66. package/dist/analyzer/parseTreeUtils.js +383 -379
  67. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  68. package/dist/analyzer/parseTreeWalker.js +161 -157
  69. package/dist/analyzer/parseTreeWalker.js.map +1 -1
  70. package/dist/analyzer/patternMatching.d.ts +1 -1
  71. package/dist/analyzer/patternMatching.js +52 -50
  72. package/dist/analyzer/patternMatching.js.map +1 -1
  73. package/dist/analyzer/program.d.ts +1 -1
  74. package/dist/analyzer/program.js +18 -14
  75. package/dist/analyzer/program.js.map +1 -1
  76. package/dist/analyzer/properties.js +53 -44
  77. package/dist/analyzer/properties.js.map +1 -1
  78. package/dist/analyzer/protocols.js +14 -14
  79. package/dist/analyzer/protocols.js.map +1 -1
  80. package/dist/analyzer/pythonPathUtils.js +5 -1
  81. package/dist/analyzer/pythonPathUtils.js.map +1 -1
  82. package/dist/analyzer/regions.js +3 -3
  83. package/dist/analyzer/regions.js.map +1 -1
  84. package/dist/analyzer/scope.js +8 -8
  85. package/dist/analyzer/scope.js.map +1 -1
  86. package/dist/analyzer/scopeUtils.js +1 -1
  87. package/dist/analyzer/scopeUtils.js.map +1 -1
  88. package/dist/analyzer/service.js +5 -1
  89. package/dist/analyzer/service.js.map +1 -1
  90. package/dist/analyzer/sourceFile.js +25 -21
  91. package/dist/analyzer/sourceFile.js.map +1 -1
  92. package/dist/analyzer/sourceMapper.d.ts +2 -2
  93. package/dist/analyzer/sourceMapper.js +12 -8
  94. package/dist/analyzer/sourceMapper.js.map +1 -1
  95. package/dist/analyzer/staticExpressions.js +40 -40
  96. package/dist/analyzer/staticExpressions.js.map +1 -1
  97. package/dist/analyzer/symbol.d.ts +1 -1
  98. package/dist/analyzer/symbol.js +26 -26
  99. package/dist/analyzer/symbol.js.map +1 -1
  100. package/dist/analyzer/symbolUtils.js +1 -1
  101. package/dist/analyzer/symbolUtils.js.map +1 -1
  102. package/dist/analyzer/testWalker.js +5 -5
  103. package/dist/analyzer/testWalker.js.map +1 -1
  104. package/dist/analyzer/tracePrinter.d.ts +1 -1
  105. package/dist/analyzer/tracePrinter.js +35 -31
  106. package/dist/analyzer/tracePrinter.js.map +1 -1
  107. package/dist/analyzer/typeCacheUtils.js +5 -1
  108. package/dist/analyzer/typeCacheUtils.js.map +1 -1
  109. package/dist/analyzer/typeDocStringUtils.js +13 -9
  110. package/dist/analyzer/typeDocStringUtils.js.map +1 -1
  111. package/dist/analyzer/typeEvaluator.js +1233 -1153
  112. package/dist/analyzer/typeEvaluator.js.map +1 -1
  113. package/dist/analyzer/typeEvaluatorTypes.d.ts +3 -1
  114. package/dist/analyzer/typeEvaluatorTypes.js +3 -1
  115. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  116. package/dist/analyzer/typeGuards.d.ts +1 -1
  117. package/dist/analyzer/typeGuards.js +79 -65
  118. package/dist/analyzer/typeGuards.js.map +1 -1
  119. package/dist/analyzer/typePrinter.d.ts +1 -1
  120. package/dist/analyzer/typePrinter.js +80 -76
  121. package/dist/analyzer/typePrinter.js.map +1 -1
  122. package/dist/analyzer/typeStubWriter.js +26 -22
  123. package/dist/analyzer/typeStubWriter.js.map +1 -1
  124. package/dist/analyzer/typeUtils.js +123 -123
  125. package/dist/analyzer/typeUtils.js.map +1 -1
  126. package/dist/analyzer/typeVarContext.js +9 -9
  127. package/dist/analyzer/typeVarContext.js.map +1 -1
  128. package/dist/analyzer/typeWalker.js +10 -10
  129. package/dist/analyzer/typedDicts.js +74 -70
  130. package/dist/analyzer/typedDicts.js.map +1 -1
  131. package/dist/analyzer/types.d.ts +16 -11
  132. package/dist/analyzer/types.js +179 -177
  133. package/dist/analyzer/types.js.map +1 -1
  134. package/dist/backgroundAnalysisBase.d.ts +2 -2
  135. package/dist/backgroundAnalysisBase.js +5 -1
  136. package/dist/backgroundAnalysisBase.js.map +1 -1
  137. package/dist/backgroundThreadBase.js +5 -1
  138. package/dist/backgroundThreadBase.js.map +1 -1
  139. package/dist/commands/commandController.js +7 -7
  140. package/dist/commands/commandController.js.map +1 -1
  141. package/dist/commands/commandResult.js +1 -1
  142. package/dist/commands/commandResult.js.map +1 -1
  143. package/dist/commands/commands.js +1 -1
  144. package/dist/commands/commands.js.map +1 -1
  145. package/dist/commands/dumpFileDebugInfoCommand.js +196 -196
  146. package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
  147. package/dist/commands/quickActionCommand.js +1 -1
  148. package/dist/commands/quickActionCommand.js.map +1 -1
  149. package/dist/common/charCodes.js +1 -1
  150. package/dist/common/charCodes.js.map +1 -1
  151. package/dist/common/chokidarFileWatcherProvider.js +5 -1
  152. package/dist/common/chokidarFileWatcherProvider.js.map +1 -1
  153. package/dist/common/collectionUtils.d.ts +3 -3
  154. package/dist/common/collectionUtils.js +3 -3
  155. package/dist/common/collectionUtils.js.map +1 -1
  156. package/dist/common/commandLineOptions.d.ts +1 -1
  157. package/dist/common/commandLineOptions.js +5 -5
  158. package/dist/common/commandLineOptions.js.map +1 -1
  159. package/dist/common/configOptions.d.ts +1 -1
  160. package/dist/common/configOptions.js +11 -7
  161. package/dist/common/configOptions.js.map +1 -1
  162. package/dist/common/console.js +7 -3
  163. package/dist/common/console.js.map +1 -1
  164. package/dist/common/core.d.ts +2 -2
  165. package/dist/common/core.js +6 -6
  166. package/dist/common/core.js.map +1 -1
  167. package/dist/common/diagnostic.js +6 -6
  168. package/dist/common/diagnostic.js.map +1 -1
  169. package/dist/common/diagnosticRules.js +1 -1
  170. package/dist/common/diagnosticRules.js.map +1 -1
  171. package/dist/common/diagnosticSink.js +12 -12
  172. package/dist/common/diagnosticSink.js.map +1 -1
  173. package/dist/common/editAction.d.ts +1 -1
  174. package/dist/common/editAction.js +2 -2
  175. package/dist/common/editAction.js.map +1 -1
  176. package/dist/common/envVarUtils.js +5 -1
  177. package/dist/common/envVarUtils.js.map +1 -1
  178. package/dist/common/extensibility.js +1 -1
  179. package/dist/common/extensibility.js.map +1 -1
  180. package/dist/common/fileBasedCancellationUtils.js +5 -1
  181. package/dist/common/fileBasedCancellationUtils.js.map +1 -1
  182. package/dist/common/fileSystem.d.ts +1 -0
  183. package/dist/common/fileSystem.js +2 -2
  184. package/dist/common/fileSystem.js.map +1 -1
  185. package/dist/common/fileWatcher.d.ts +2 -2
  186. package/dist/common/fullAccessHost.js +10 -6
  187. package/dist/common/fullAccessHost.js.map +1 -1
  188. package/dist/common/host.d.ts +1 -1
  189. package/dist/common/host.js +2 -2
  190. package/dist/common/host.js.map +1 -1
  191. package/dist/common/lspUtils.js +7 -7
  192. package/dist/common/lspUtils.js.map +1 -1
  193. package/dist/common/memUtils.d.ts +1 -1
  194. package/dist/common/pathUtils.js +12 -8
  195. package/dist/common/pathUtils.js.map +1 -1
  196. package/dist/common/pythonVersion.js +1 -1
  197. package/dist/common/pythonVersion.js.map +1 -1
  198. package/dist/common/realFileSystem.js +5 -1
  199. package/dist/common/realFileSystem.js.map +1 -1
  200. package/dist/common/serviceProvider.d.ts +1 -1
  201. package/dist/common/serviceProvider.js +5 -1
  202. package/dist/common/serviceProvider.js.map +1 -1
  203. package/dist/common/serviceProviderExtensions.js +1 -1
  204. package/dist/common/serviceProviderExtensions.js.map +1 -1
  205. package/dist/common/stringUtils.js +5 -5
  206. package/dist/common/stringUtils.js.map +1 -1
  207. package/dist/common/textEditTracker.js +11 -7
  208. package/dist/common/textEditTracker.js.map +1 -1
  209. package/dist/common/textRange.js +3 -3
  210. package/dist/common/textRange.js.map +1 -1
  211. package/dist/languageServerBase.js +13 -13
  212. package/dist/languageServerBase.js.map +1 -1
  213. package/dist/languageService/autoImporter.d.ts +3 -3
  214. package/dist/languageService/autoImporter.js +12 -8
  215. package/dist/languageService/autoImporter.js.map +1 -1
  216. package/dist/languageService/callHierarchyProvider.js +27 -23
  217. package/dist/languageService/callHierarchyProvider.js.map +1 -1
  218. package/dist/languageService/codeActionProvider.js +8 -8
  219. package/dist/languageService/codeActionProvider.js.map +1 -1
  220. package/dist/languageService/completionProvider.js +166 -162
  221. package/dist/languageService/completionProvider.js.map +1 -1
  222. package/dist/languageService/completionProviderUtils.js +9 -9
  223. package/dist/languageService/completionProviderUtils.js.map +1 -1
  224. package/dist/languageService/definitionProvider.js +14 -10
  225. package/dist/languageService/definitionProvider.js.map +1 -1
  226. package/dist/languageService/documentHighlightProvider.js +7 -3
  227. package/dist/languageService/documentHighlightProvider.js.map +1 -1
  228. package/dist/languageService/documentSymbolCollector.d.ts +1 -1
  229. package/dist/languageService/documentSymbolCollector.js +21 -17
  230. package/dist/languageService/documentSymbolCollector.js.map +1 -1
  231. package/dist/languageService/hoverProvider.js +30 -26
  232. package/dist/languageService/hoverProvider.js.map +1 -1
  233. package/dist/languageService/importSorter.js +1 -1
  234. package/dist/languageService/importSorter.js.map +1 -1
  235. package/dist/languageService/quickActions.js +10 -6
  236. package/dist/languageService/quickActions.js.map +1 -1
  237. package/dist/languageService/referencesProvider.d.ts +1 -1
  238. package/dist/languageService/referencesProvider.js +24 -20
  239. package/dist/languageService/referencesProvider.js.map +1 -1
  240. package/dist/languageService/signatureHelpProvider.js +8 -4
  241. package/dist/languageService/signatureHelpProvider.js.map +1 -1
  242. package/dist/languageService/symbolIndexer.js +8 -4
  243. package/dist/languageService/symbolIndexer.js.map +1 -1
  244. package/dist/languageService/tooltipUtils.js +20 -16
  245. package/dist/languageService/tooltipUtils.js.map +1 -1
  246. package/dist/languageService/workspaceSymbolProvider.js +5 -1
  247. package/dist/languageService/workspaceSymbolProvider.js.map +1 -1
  248. package/dist/localization/localize.d.ts +7 -9
  249. package/dist/localization/localize.js +5 -4
  250. package/dist/localization/localize.js.map +1 -1
  251. package/dist/localization/package.nls.cs.json +0 -3
  252. package/dist/localization/package.nls.de.json +0 -3
  253. package/dist/localization/package.nls.en-us.json +4 -3
  254. package/dist/localization/package.nls.es.json +0 -3
  255. package/dist/localization/package.nls.fr.json +0 -3
  256. package/dist/localization/package.nls.it.json +0 -3
  257. package/dist/localization/package.nls.ja.json +0 -3
  258. package/dist/localization/package.nls.ko.json +0 -3
  259. package/dist/localization/package.nls.pl.json +0 -3
  260. package/dist/localization/package.nls.pt-br.json +0 -3
  261. package/dist/localization/package.nls.qps-ploc.json +0 -3
  262. package/dist/localization/package.nls.ru.json +0 -3
  263. package/dist/localization/package.nls.tr.json +0 -3
  264. package/dist/localization/package.nls.zh-cn.json +0 -3
  265. package/dist/localization/package.nls.zh-tw.json +0 -3
  266. package/dist/parser/characterStream.js +3 -3
  267. package/dist/parser/characterStream.js.map +1 -1
  268. package/dist/parser/characters.js +13 -9
  269. package/dist/parser/characters.js.map +1 -1
  270. package/dist/parser/parseNodes.d.ts +12 -12
  271. package/dist/parser/parseNodes.js +193 -193
  272. package/dist/parser/parseNodes.js.map +1 -1
  273. package/dist/parser/parser.js +563 -559
  274. package/dist/parser/parser.js.map +1 -1
  275. package/dist/parser/stringTokenUtils.js +47 -47
  276. package/dist/parser/stringTokenUtils.js.map +1 -1
  277. package/dist/parser/tokenizer.js +288 -288
  278. package/dist/parser/tokenizer.js.map +1 -1
  279. package/dist/parser/tokenizerTypes.js +35 -35
  280. package/dist/parser/tokenizerTypes.js.map +1 -1
  281. package/dist/parser/unicode.d.ts +3 -3
  282. package/dist/pyright.js +21 -17
  283. package/dist/pyright.js.map +1 -1
  284. package/dist/pyrightFileSystem.d.ts +1 -0
  285. package/dist/pyrightFileSystem.js +1 -1
  286. package/dist/pyrightFileSystem.js.map +1 -1
  287. package/dist/readonlyAugmentedFileSystem.d.ts +1 -0
  288. package/dist/tests/chainedSourceFiles.test.js +5 -1
  289. package/dist/tests/chainedSourceFiles.test.js.map +1 -1
  290. package/dist/tests/checker.test.js +5 -1
  291. package/dist/tests/checker.test.js.map +1 -1
  292. package/dist/tests/collectionUtils.test.js +5 -1
  293. package/dist/tests/collectionUtils.test.js.map +1 -1
  294. package/dist/tests/common.test.js +5 -1
  295. package/dist/tests/common.test.js.map +1 -1
  296. package/dist/tests/debug.test.js +8 -4
  297. package/dist/tests/debug.test.js.map +1 -1
  298. package/dist/tests/deferred.test.js +5 -1
  299. package/dist/tests/deferred.test.js.map +1 -1
  300. package/dist/tests/diagnosticOverrides.test.js +5 -1
  301. package/dist/tests/diagnosticOverrides.test.js.map +1 -1
  302. package/dist/tests/docStringUtils.test.js +5 -1
  303. package/dist/tests/docStringUtils.test.js.map +1 -1
  304. package/dist/tests/filesystem.test.js +5 -1
  305. package/dist/tests/filesystem.test.js.map +1 -1
  306. package/dist/tests/fourSlashParser.test.js +5 -1
  307. package/dist/tests/fourSlashParser.test.js.map +1 -1
  308. package/dist/tests/fourSlashRunner.test.js +5 -1
  309. package/dist/tests/fourSlashRunner.test.js.map +1 -1
  310. package/dist/tests/harness/fourslash/fourSlashParser.js +13 -13
  311. package/dist/tests/harness/fourslash/fourSlashParser.js.map +1 -1
  312. package/dist/tests/harness/fourslash/fourSlashTypes.js +11 -7
  313. package/dist/tests/harness/fourslash/fourSlashTypes.js.map +1 -1
  314. package/dist/tests/harness/fourslash/runner.d.ts +1 -1
  315. package/dist/tests/harness/fourslash/runner.js +5 -1
  316. package/dist/tests/harness/fourslash/runner.js.map +1 -1
  317. package/dist/tests/harness/fourslash/testLanguageService.js +5 -1
  318. package/dist/tests/harness/fourslash/testLanguageService.js.map +1 -1
  319. package/dist/tests/harness/fourslash/testState.Consts.js +6 -2
  320. package/dist/tests/harness/fourslash/testState.Consts.js.map +1 -1
  321. package/dist/tests/harness/fourslash/testState.js +17 -13
  322. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  323. package/dist/tests/harness/fourslash/testStateUtils.js +9 -5
  324. package/dist/tests/harness/fourslash/testStateUtils.js.map +1 -1
  325. package/dist/tests/harness/fourslash/workspaceEditTestUtils.js +5 -1
  326. package/dist/tests/harness/fourslash/workspaceEditTestUtils.js.map +1 -1
  327. package/dist/tests/harness/testHost.js +5 -1
  328. package/dist/tests/harness/testHost.js.map +1 -1
  329. package/dist/tests/harness/utils.d.ts +13 -12
  330. package/dist/tests/harness/utils.js.map +1 -1
  331. package/dist/tests/harness/vfs/factory.js +6 -2
  332. package/dist/tests/harness/vfs/factory.js.map +1 -1
  333. package/dist/tests/harness/vfs/filesystem.d.ts +4 -3
  334. package/dist/tests/harness/vfs/filesystem.js +11 -7
  335. package/dist/tests/harness/vfs/filesystem.js.map +1 -1
  336. package/dist/tests/harness/vfs/pathValidation.js +30 -26
  337. package/dist/tests/harness/vfs/pathValidation.js.map +1 -1
  338. package/dist/tests/importStatementUtils.test.js +25 -25
  339. package/dist/tests/importStatementUtils.test.js.map +1 -1
  340. package/dist/tests/ipythonMode.test.js +6 -6
  341. package/dist/tests/ipythonMode.test.js.map +1 -1
  342. package/dist/tests/localizer.test.js +5 -1
  343. package/dist/tests/localizer.test.js.map +1 -1
  344. package/dist/tests/logger.test.js +5 -1
  345. package/dist/tests/logger.test.js.map +1 -1
  346. package/dist/tests/parseTreeUtils.test.js +10 -10
  347. package/dist/tests/parseTreeUtils.test.js.map +1 -1
  348. package/dist/tests/parser.test.js +13 -9
  349. package/dist/tests/parser.test.js.map +1 -1
  350. package/dist/tests/pathUtils.test.js +5 -1
  351. package/dist/tests/pathUtils.test.js.map +1 -1
  352. package/dist/tests/sourceFile.test.js +5 -1
  353. package/dist/tests/sourceFile.test.js.map +1 -1
  354. package/dist/tests/sourceMapperUtils.test.js +5 -1
  355. package/dist/tests/sourceMapperUtils.test.js.map +1 -1
  356. package/dist/tests/stringUtils.test.js +10 -6
  357. package/dist/tests/stringUtils.test.js.map +1 -1
  358. package/dist/tests/symbolNameUtils.test.js +5 -1
  359. package/dist/tests/symbolNameUtils.test.js.map +1 -1
  360. package/dist/tests/testState.test.js +5 -1
  361. package/dist/tests/testState.test.js.map +1 -1
  362. package/dist/tests/testUtils.js +11 -7
  363. package/dist/tests/testUtils.js.map +1 -1
  364. package/dist/tests/textRange.test.js +5 -1
  365. package/dist/tests/textRange.test.js.map +1 -1
  366. package/dist/tests/tokenizer.test.js +463 -459
  367. package/dist/tests/tokenizer.test.js.map +1 -1
  368. package/dist/tests/typeEvaluator1.test.js +14 -2
  369. package/dist/tests/typeEvaluator1.test.js.map +1 -1
  370. package/dist/tests/typeEvaluator2.test.js +11 -3
  371. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  372. package/dist/tests/typeEvaluator3.test.js +11 -3
  373. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  374. package/dist/tests/typeEvaluator4.test.js +10 -2
  375. package/dist/tests/typeEvaluator4.test.js.map +1 -1
  376. package/dist/tests/typeEvaluator5.test.js +5 -1
  377. package/dist/tests/typeEvaluator5.test.js.map +1 -1
  378. package/dist/tests/typePrinter.test.js +44 -40
  379. package/dist/tests/typePrinter.test.js.map +1 -1
  380. package/dist/tests/workspaceEditUtils.test.js +5 -1
  381. package/dist/tests/workspaceEditUtils.test.js.map +1 -1
  382. package/dist/tests/zipfs.test.js +5 -1
  383. package/dist/tests/zipfs.test.js.map +1 -1
  384. package/dist/workspaceFactory.js +2 -2
  385. package/dist/workspaceFactory.js.map +1 -1
  386. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"constraintSolver.js","sourceRoot":"","sources":["../../../src/analyzer/constraintSolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constraintSolver.js","sourceRoot":"","sources":["../../../src/analyzer/constraintSolver.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,qDAA0D;AAC1D,uDAAqD;AACrD,6DAAiF;AACjF,mCA2BiB;AACjB,2CAmBqB;AACrB,qDAA2E;AAE3E,sEAAsE;AACtE,sEAAsE;AACtE,2CAA2C;AAC3C,MAAM,oCAAoC,GAAG,EAAE,CAAC;AAEhD,yEAAyE;AACzE,gDAAgD;AAChD,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAEvC,uFAAuF;AACvF,qFAAqF;AACrF,yFAAyF;AACzF,4FAA4F;AAC5F,yFAAyF;AACzF,uBAAuB;AACvB,SAAgB,mBAAmB,CAC/B,SAAwB,EACxB,QAAqB,EACrB,OAAa,EACb,IAAoC,EACpC,cAA8B,EAC9B,KAAK,kCAA0B,EAC/B,cAAc,GAAG,CAAC;IAElB,IAAI,wBAAwB,EAAE;QAC1B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,iCAAiC,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,aAAa,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACnE,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,YAAY,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,UAAU,KAAK,EAAE,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,WAAW,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzF,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,qBAAqB,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACtE,iBAAiB,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;KACxD;IAED,IAAI,gBAAgB,GAAG,IAAI,CAAC;IAC5B,MAAM,WAAW,GAAG,CAAC,KAAK,4CAAoC,CAAC,KAAK,CAAC,CAAC;IACtE,MAAM,eAAe,GAAG,CAAC,KAAK,iDAAyC,CAAC,KAAK,CAAC,CAAC;IAE/E,+DAA+D;IAC/D,+DAA+D;IAC/D,mEAAmE;IACnE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE;QACnB,OAAO,IAAI,CAAC;KACf;IAED,gEAAgE;IAChE,iBAAiB;IACjB,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;QACpD,IAAI,IAAA,sBAAc,EAAC,OAAO,CAAC,IAAI,CAAC,IAAA,eAAO,EAAC,OAAO,CAAC,IAAI,iBAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,EAAE;YAC7F,OAAO,IAAI,CAAC;SACf;QAED,0DAA0D;QAC1D,IACI,QAAQ,CAAC,OAAO,CAAC,WAAW;YAC5B,IAAA,kBAAU,EAAC,OAAO,CAAC;YACnB,oBAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC;YACtC,oBAAY,CAAC,sCAAsC,CAAC,OAAO,CAAC,EAC9D;YACE,OAAO,IAAI,CAAC;SACf;QAED,sEAAsE;QACtE,8BAA8B;QAC9B,IAAI,IAAA,eAAO,EAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;YAClC,OAAO,IAAI,CAAC;SACf;QAED,2DAA2D;QAC3D,yBAAyB;QACzB,IAAI,CAAC,KAAK,+CAAqC,CAAC,KAAK,CAAC,EAAE;YACpD,OAAO,IAAI,CAAC;SACf;QAED,gBAAgB,GAAG,KAAK,CAAC;QAEzB,gEAAgE;QAChE,8BAA8B;QAC9B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,IAAI,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE;YACvE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CACZ,oBAAS,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC,MAAM,CACxD,SAAS,CAAC,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,CACjD,CACJ,CAAC;YACF,OAAO,KAAK,CAAC;SAChB;KACJ;IAED,oEAAoE;IACpE,kDAAkD;IAClD,IAAI,IAAA,kBAAU,EAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,oBAAoB,EAAE;QAChE,OAAO,IAAI,CAAC;KACf;IAED,IAAI,CAAC,KAAK,4CAAoC,CAAC,KAAK,CAAC,EAAE;QACnD,OAAO,SAAS,CAAC,UAAU,CACvB,SAAS,CAAC,4BAA4B,CAAC,QAAQ,CAAC,EAChD,SAAS,CAAC,4BAA4B,CAAC,OAAO,CAAC,EAC/C,IAAI;QACJ,wBAAwB,CAAC,SAAS;QAClC,uBAAuB,CAAC,SAAS,EACjC,KAAK,EACL,cAAc,CACjB,CAAC;KACL;IAED,IAAI,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE;QAC9B,OAAO,qBAAqB,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;KACpG;IAED,IAAI,QAAQ,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE;QAC5D,IAAI,CAAC,IAAA,kBAAU,EAAC,OAAO,CAAC,EAAE;YACtB,MAAM,cAAc,GAAG,SAAS,CAAC,iBAAiB,EAAE,CAAC;YACrD,IAAI,cAAc,IAAI,IAAA,2BAAmB,EAAC,cAAc,CAAC,EAAE;gBACvD,oCAAoC;gBACpC,OAAO,GAAG,IAAA,6BAAiB,EACvB,IAAA,gCAAoB,EAChB,cAAc,EACd,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;gBACvC,4BAA4B,CAAC,IAAI;gBACjC,qBAAqB,CAAC,IAAI,CAC7B,CACJ,CAAC;aACL;iBAAM;gBACH,OAAO,GAAG,mBAAW,CAAC,MAAM,EAAE,CAAC;aAClC;SACJ;KACJ;IAED,oEAAoE;IACpE,+DAA+D;IAC/D,IACI,IAAA,iBAAS,EAAC,OAAO,CAAC;QAClB,OAAO,CAAC,OAAO,CAAC,UAAU;QAC1B,OAAO,CAAC,kBAAkB;QAC1B,CAAC,OAAO,CAAC,iBAAiB;QAC1B,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,EAC9B;QACE,OAAO,GAAG,mBAAW,CAAC,gBAAgB,CAAC,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;KACzE;IAED,uEAAuE;IACvE,sEAAsE;IACtE,wEAAwE;IACxE,wCAAwC;IACxC,IAAI,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;QACzC,OAAO,8BAA8B,CACjC,SAAS,EACT,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,cAAc,EACd,KAAK,EACL,gBAAgB,EAChB,cAAc,CACjB,CAAC;KACL;IAED,sDAAsD;IACtD,MAAM,QAAQ,GAAG,cAAc,CAAC,mBAAmB,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAE3E,IAAI,gBAAgB,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,SAAS,CAAC;IAC3C,IAAI,CAAC,gBAAgB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE;QAC1D,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC;KACjD;IACD,MAAM,kBAAkB,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,WAAW,CAAC;IACjD,IAAI,kBAAkB,GAAG,kBAAkB,CAAC;IAC5C,IAAI,gBAAgB,GAAG,gBAAgB,CAAC;IACxC,MAAM,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,+BAAkB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAEjE,IAAI,UAAU,GAAG,OAAO,CAAC;IAEzB,gEAAgE;IAChE,0CAA0C;IAC1C,IAAI,CAAC,KAAK,2DAAgD,CAAC,KAAK,CAAC,EAAE;QAC/D,IAAI,IAAA,eAAO,EAAC,UAAU,CAAC,IAAI,UAAU,CAAC,iBAAiB,EAAE;YACrD,UAAU,GAAG,IAAA,yCAA6B,EAAC,UAAU,CAAC,CAAC;SAC1D;KACJ;IAED,IAAI,gBAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;QACnC,IAAI,IAAA,qCAAyB,EAAC,UAAU,CAAC,EAAE;YACvC,UAAU,GAAG,IAAA,6BAAiB,EAAC,UAAU,EAAE,uBAAuB,CAAC,KAAK,CAAC,CAAC;SAC7E;aAAM;YACH,2DAA2D;YAC3D,MAAM,kBAAkB,GAAG,SAAS,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAC;YAE9E,IAAI,IAAA,qCAAyB,EAAC,kBAAkB,CAAC,EAAE;gBAC/C,UAAU,GAAG,IAAA,6BAAiB,EAAC,kBAAkB,CAAC,CAAC;aACtD;iBAAM;gBACH,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CACZ,oBAAS,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC,MAAM,CACxD,SAAS,CAAC,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,CACjD,CACJ,CAAC;gBACF,OAAO,KAAK,CAAC;aAChB;SACJ;KACJ;SAAM,IACH,IAAA,iBAAS,EAAC,OAAO,CAAC;QAClB,gBAAQ,CAAC,cAAc,CAAC,OAAO,CAAC;QAChC,IAAA,kBAAU,EAAC,IAAA,6BAAiB,EAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,EAClD;QACE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CACZ,oBAAS,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC,MAAM,CACxD,SAAS,CAAC,iBAAiB,CAAC,UAAU,EAAE,QAAQ,CAAC,CACpD,CACJ,CAAC;QACF,OAAO,KAAK,CAAC;KAChB;IAED,IAAI,CAAC,KAAK,oDAAyC,CAAC,KAAK,CAAC,EAAE;QACxD,2DAA2D;QAC3D,sBAAsB;QACtB,IAAI,IAAA,iBAAS,EAAC,UAAU,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACf;QAED,8DAA8D;QAC9D,8DAA8D;QAC9D,qBAAqB;QACrB,IAAI,CAAC,QAAQ,EAAE;YACX,IAAI,WAAW,EAAE;gBACb,kBAAkB,GAAG,UAAU,CAAC;gBAChC,gBAAgB,GAAG,UAAU,CAAC;aACjC;iBAAM,IAAI,eAAe,EAAE;gBACxB,kBAAkB,GAAG,UAAU,CAAC;aACnC;iBAAM;gBACH,gBAAgB,GAAG,UAAU,CAAC;aACjC;SACJ;KACJ;SAAM,IAAI,eAAe,EAAE;QACxB,8BAA8B;QAC9B,IAAI,CAAC,gBAAgB,IAAI,IAAA,kBAAU,EAAC,QAAQ,EAAE,gBAAgB,CAAC,EAAE;YAC7D,gBAAgB,GAAG,UAAU,CAAC;SACjC;aAAM,IAAI,CAAC,IAAA,kBAAU,EAAC,gBAAgB,EAAE,UAAU,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE;YACtE,IACI,SAAS,CAAC,UAAU,CAChB,gBAAgB,EAChB,SAAS,CAAC,4BAA4B,CAAC,UAAU,CAAC,EAClD,YAAY;YACZ,wBAAwB,CAAC,SAAS;YAClC,uBAAuB,CAAC,SAAS,EACjC,KAAK,+CAAqC,EAC1C,cAAc,CACjB,EACH;gBACE,yEAAyE;gBACzE,2EAA2E;gBAC3E,IAAI,CAAC,IAAA,aAAK,EAAC,gBAAgB,CAAC,EAAE;oBAC1B,gBAAgB,GAAG,UAAU,CAAC;iBACjC;aACJ;iBAAM,IACH,CAAC,SAAS,CAAC,UAAU,CACjB,UAAU,EACV,gBAAgB,EAChB,YAAY;YACZ,wBAAwB,CAAC,SAAS;YAClC,uBAAuB,CAAC,SAAS,EACjC,KAAK,+CAAqC,EAC1C,cAAc,CACjB,EACH;gBACE,IAAI,IAAI,IAAI,YAAY,EAAE;oBACtB,IAAI,CAAC,UAAU,CACX,oBAAS,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC,MAAM,CACxD,SAAS,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAC5D,CACJ,CAAC;oBACF,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;iBAClC;gBACD,OAAO,KAAK,CAAC;aAChB;SACJ;QAED,oEAAoE;QACpE,IAAI,kBAAkB,EAAE;YACpB,IACI,CAAC,SAAS,CAAC,UAAU,CACjB,gBAAiB,EACjB,kBAAkB;YAClB,UAAU,CAAC,SAAS;YACpB,wBAAwB,CAAC,SAAS;YAClC,uBAAuB,CAAC,SAAS,EACjC,KAAK,+CAAqC,EAC1C,cAAc,CACjB,EACH;gBACE,IAAI,IAAI,IAAI,YAAY,EAAE;oBACtB,IAAI,CAAC,UAAU,CACX,oBAAS,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC,MAAM,CACxD,SAAS,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,gBAAiB,CAAC,CACrE,CACJ,CAAC;oBACF,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;iBAClC;gBACD,OAAO,KAAK,CAAC;aAChB;SACJ;KACJ;SAAM;QACH,IAAI,CAAC,kBAAkB,IAAI,IAAA,kBAAU,EAAC,QAAQ,EAAE,kBAAkB,CAAC,EAAE;YACjE,mEAAmE;YACnE,kBAAkB,GAAG,UAAU,CAAC;SACnC;aAAM,IAAI,CAAC,IAAA,kBAAU,EAAC,kBAAkB,EAAE,UAAU,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE;YACxE,IACI,SAAS,CAAC,UAAU,CAChB,kBAAkB,EAClB,UAAU,EACV,YAAY,EACZ,cAAc;YACd,uBAAuB,CAAC,SAAS,EACjC,KAAK,EACL,cAAc,CACjB,EACH;gBACE,qEAAqE;gBACrE,sEAAsE;gBACtE,0DAA0D;gBAC1D,IACI,IAAA,2BAAe,EAAC,kBAAkB,CAAC;oBACnC,CAAC,IAAA,iBAAS,EAAC,UAAU,CAAC;oBACtB,SAAS,CAAC,UAAU,CAChB,UAAU,EACV,kBAAkB;oBAClB,UAAU,CAAC,SAAS,EACpB,cAAc;oBACd,uBAAuB,CAAC,SAAS,EACjC,KAAK,+CAAqC,EAC1C,cAAc,CACjB,EACH;oBACE,kBAAkB,GAAG,UAAU,CAAC;iBACnC;qBAAM;oBACH,kBAAkB,GAAG,IAAA,+BAAmB,EAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;iBAChF;aACJ;iBAAM,IACH,IAAA,iBAAS,EAAC,kBAAkB,CAAC;gBAC7B,CAAC,IAAA,iBAAS,EAAC,UAAU,CAAC;gBACtB,SAAS,CAAC,UAAU,CAChB,SAAS,CAAC,4BAA4B,CAAC,kBAAkB,CAAC,EAC1D,UAAU,EACV,YAAY,EACZ,cAAc;gBACd,uBAAuB,CAAC,SAAS,EACjC,KAAK,EACL,cAAc,CACjB,EACH;gBACE,8DAA8D;gBAC9D,6DAA6D;gBAC7D,eAAe;gBACf,kBAAkB,GAAG,UAAU,CAAC;aACnC;iBAAM;gBACH,6BAA6B;gBAC7B,IAAI,cAAc,CAAC,QAAQ,EAAE,EAAE;oBAC3B,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CACZ,oBAAS,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC,MAAM,CACxD,SAAS,CAAC,iBAAiB,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAC9D,CACJ,CAAC;oBACF,OAAO,KAAK,CAAC;iBAChB;gBAED,IACI,SAAS,CAAC,UAAU,CAChB,UAAU,EACV,kBAAkB;gBAClB,UAAU,CAAC,SAAS,EACpB,cAAc;gBACd,uBAAuB,CAAC,SAAS,EACjC,KAAK,+CAAqC,EAC1C,cAAc,CACjB,EACH;oBACE,kBAAkB,GAAG,UAAU,CAAC;iBACnC;qBAAM,IAAI,IAAA,yBAAiB,EAAC,QAAQ,CAAC,EAAE;oBACpC,MAAM,WAAW,GAAG,2BAA2B,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;oBAChF,IAAI,CAAC,WAAW,EAAE;wBACd,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CACZ,oBAAS,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC,MAAM,CACxD,SAAS,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAC9D,CACJ,CAAC;wBACF,OAAO,KAAK,CAAC;qBAChB;oBAED,kBAAkB,GAAG,WAAW,CAAC;iBACpC;qBAAM;oBACH,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,EAAE,CAAC;oBAC7C,MAAM,wBAAwB,GAAG,IAAA,+BAAmB,EAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;oBAEzF,+DAA+D;oBAC/D,6DAA6D;oBAC7D,4DAA4D;oBAC5D,+DAA+D;oBAC/D,4CAA4C;oBAC5C,IACI,IAAA,eAAO,EAAC,wBAAwB,CAAC;wBACjC,wBAAwB,CAAC,QAAQ,CAAC,MAAM,GAAG,+CAA0B;wBACpE,QAAwB,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS;wBACzD,IAAA,uBAAe,EAAC,UAAU,CAAC,EAC7B;wBACE,kBAAkB,GAAG,IAAA,oBAAY,EAC7B,CAAC,wBAAwB,EAAE,UAAU,CAAC,EACtC,oCAAoC,CACvC,CAAC;qBACL;yBAAM;wBACH,kBAAkB,GAAG,IAAA,oBAAY,EAC7B,CAAC,wBAAwB,EAAE,UAAU,CAAC,EACtC,oCAAoC,CACvC,CAAC;qBACL;iBACJ;aACJ;SACJ;QAED,iDAAiD;QACjD,IAAI,gBAAgB,IAAI,kBAAkB,EAAE;YACxC,IAAI,CAAC,IAAA,kBAAU,EAAC,gBAAgB,EAAE,kBAAkB,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE;gBACvE,IAAI,YAAY,GAAG,IAAI,CAAC;gBAExB,oEAAoE;gBACpE,+DAA+D;gBAC/D,mBAAmB;gBACnB,IAAI,IAAA,iBAAS,EAAC,gBAAgB,CAAC,EAAE;oBAC7B,IAAI,IAAA,kBAAU,EAAC,kBAAkB,EAAE,gBAAgB,CAAC,EAAE;wBAClD,YAAY,GAAG,KAAK,CAAC;qBACxB;yBAAM,IACH,IAAA,eAAO,EAAC,kBAAkB,CAAC;wBAC3B,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,kBAAU,EAAC,OAAO,EAAE,gBAAiB,CAAC,CAAC,EACvF;wBACE,YAAY,GAAG,KAAK,CAAC;qBACxB;iBACJ;gBAED,MAAM,gBAAgB,GAAG,YAAY;oBACjC,CAAC,CAAC,SAAS,CAAC,4BAA4B,CAAC,gBAAgB,EAAE,4BAA4B,CAAC,IAAI,CAAC;oBAC7F,CAAC,CAAC,gBAAgB,CAAC;gBAEvB,IACI,CAAC,SAAS,CAAC,UAAU,CACjB,gBAAgB,EAChB,kBAAkB,EAClB,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,EAAE,EACtB,cAAc;gBACd,uBAAuB,CAAC,SAAS,gDAEjC,cAAc,CACjB,EACH;oBACE,IAAI,IAAI,IAAI,YAAY,EAAE;wBACtB,IAAI,CAAC,UAAU,CACX,oBAAS,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC,MAAM,CACxD,SAAS,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,CACpE,CACJ,CAAC;qBACL;oBACD,OAAO,KAAK,CAAC;iBAChB;aACJ;SACJ;KACJ;IAED,qEAAqE;IACrE,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE;QAC5B,MAAM,WAAW,GAAG,CAAC,kBAAkB,IAAI,gBAAgB,CAAE,CAAC;QAE9D,+DAA+D;QAC/D,oEAAoE;QACpE,+BAA+B;QAC/B,IAAI,gBAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;YACxE,OAAO,KAAK,CAAC;SAChB;QAED,uEAAuE;QACvE,sEAAsE;QACtE,+DAA+D;QAC/D,MAAM,uBAAuB,GAAG,QAAQ,CAAC,OAAO,CAAC,iBAAiB;YAC9D,CAAC,CAAC,cAAc;YAChB,CAAC,CAAC,IAAI,+BAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE3C,IACI,CAAC,SAAS,CAAC,UAAU,CACjB,QAAQ,CAAC,OAAO,CAAC,SAAS,EAC1B,SAAS,CAAC,4BAA4B,CAAC,WAAW,CAAC,EACnD,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,EAAE,EACtB,uBAAuB;QACvB,uBAAuB,CAAC,SAAS,EACjC,KAAK,+CAAqC,EAC1C,cAAc,CACjB,EACH;YACE,oEAAoE;YACpE,qCAAqC;YACrC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,EAAE;gBACjC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CACZ,oBAAS,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC;oBAC5C,UAAU,EAAE,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC;oBAC5C,QAAQ,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC;oBACzD,IAAI,EAAE,mBAAW,CAAC,eAAe,CAAC,QAAQ,CAAC;iBAC9C,CAAC,CACL,CAAC;aACL;YACD,OAAO,KAAK,CAAC;SAChB;KACJ;IAED,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,gBAAgB,EAAE;QAChD,iBAAiB,CACb,SAAS,EACT,cAAc,EACd,QAAQ,EACR,kBAAkB,EAClB,gBAAgB,EAChB,CAAC,KAAK,GAAG,CAAC,sGAAiF,CAAC,CAAC,KAAK,CAAC,CACtG,CAAC;KACL;IAED,IAAI,wBAAwB,EAAE;QAC1B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,sBAAsB,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACvE,iBAAiB,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;KACxD;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAjgBD,kDAigBC;AAED,sFAAsF;AACtF,kFAAkF;AAClF,qFAAqF;AACrF,gFAAgF;AAChF,uBAAuB;AACvB,SAAgB,iBAAiB,CAC7B,SAAwB,EACxB,cAA8B,EAC9B,QAAqB,EACrB,eAAiC,EACjC,aAA+B,EAC/B,mBAAmB,GAAG,KAAK;IAE3B,IAAI,yBAA2C,CAAC;IAEhD,IAAI,eAAe,IAAI,CAAC,mBAAmB,EAAE;QACzC,MAAM,eAAe,GAAG,IAAA,yBAAiB,EAAC,QAAQ,CAAC;YAC/C,CAAC,CAAC,iCAAiC,CAAC,SAAS,EAAE,eAAe,CAAC;YAC/D,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;QAEnD,uEAAuE;QACvE,gCAAgC;QAChC,IAAI,eAAe,KAAK,eAAe,EAAE;YACrC,IAAI,CAAC,aAAa,IAAI,SAAS,CAAC,UAAU,CAAC,aAAa,EAAE,eAAe,CAAC,EAAE;gBACxE,yBAAyB,GAAG,eAAe,CAAC;aAC/C;SACJ;KACJ;IAED,cAAc,CAAC,cAAc,CAAC,QAAQ,EAAE,eAAe,EAAE,yBAAyB,EAAE,aAAa,CAAC,CAAC;AACvG,CAAC;AAzBD,8CAyBC;AAED,SAAS,8BAA8B,CACnC,SAAwB,EACxB,QAAqB,EACrB,OAAa,EACb,IAAoC,EACpC,cAA8B,EAC9B,KAAsB,EACtB,gBAAyB,EACzB,cAAsB;IAEtB,IAAI,eAAiC,CAAC;IACtC,MAAM,eAAe,GAAG,SAAS,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC;IACxE,MAAM,QAAQ,GAAG,cAAc,CAAC,mBAAmB,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAE3E,MAAM,gBAAgB,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,SAAS,CAAC;IAC7C,MAAM,kBAAkB,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,WAAW,CAAC;IAEjD,IAAI,IAAA,iBAAS,EAAC,OAAO,CAAC,EAAE;QACpB,IACI,SAAS,CAAC,UAAU,CAChB,QAAQ,EACR,eAAe;QACf,UAAU,CAAC,SAAS,EACpB,IAAI,+BAAc,CAAC,QAAQ,CAAC,OAAO,CAAC;QACpC,uBAAuB,CAAC,SAAS,mCAEjC,cAAc,CACjB,EACH;YACE,eAAe,GAAG,OAAO,CAAC;YAE1B,gEAAgE;YAChE,yCAAyC;YACzC,IAAI,gBAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;gBAClC,eAAe,GAAG,IAAA,6BAAiB,EAAC,OAAO,EAAE,uBAAuB,CAAC,KAAK,CAAC,CAAC;aAC/E;SACJ;KACJ;SAAM;QACH,IAAI,YAAY,GAAG,IAAI,CAAC;QAExB,qEAAqE;QACrE,sEAAsE;QACtE,gCAAgC;QAChC,IAAI,4BAAgD,CAAC;QAErD,0DAA0D;QAC1D,eAAe,GAAG,IAAA,uBAAW,EAAC,eAAe,EAAE,CAAC,UAAU,EAAE,EAAE;YAC1D,IAAI,kBAAoC,CAAC;YAEzC,IAAI,IAAA,sBAAc,EAAC,UAAU,CAAC,EAAE;gBAC5B,OAAO,UAAU,CAAC;aACrB;YAED,IAAI,mBAAuC,CAAC;YAC5C,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE;gBACnD,MAAM,kBAAkB,GAAG,gBAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC;oBACxD,CAAC,CAAC,IAAA,iCAAqB,EAAC,UAAU,CAAC;oBACnC,CAAC,CAAC,UAAU,CAAC;gBACjB,IACI,SAAS,CAAC,UAAU,CAChB,kBAAkB,EAClB,UAAU;gBACV,UAAU,CAAC,SAAS;gBACpB,wBAAwB,CAAC,SAAS;gBAClC,uBAAuB,CAAC,SAAS,mCAEjC,cAAc,CACjB,EACH;oBACE,IACI,CAAC,kBAAkB;wBACnB,SAAS,CAAC,UAAU,CAChB,gBAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC;4BAC7B,CAAC,CAAC,IAAA,iCAAqB,EAAC,kBAAkB,CAAC;4BAC3C,CAAC,CAAC,kBAAkB,EACxB,kBAAkB;wBAClB,UAAU,CAAC,SAAS;wBACpB,wBAAwB,CAAC,SAAS;wBAClC,uBAAuB,CAAC,SAAS,mCAEjC,cAAc,CACjB,EACH;wBACE,kBAAkB,GAAG,IAAA,8BAAkB,EAAC,UAAU,EAAE,IAAA,4BAAgB,EAAC,UAAU,CAAC,CAAC,CAAC;wBAClF,mBAAmB,GAAG,CAAC,CAAC;qBAC3B;iBACJ;YACL,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,kBAAkB,EAAE;gBACrB,kEAAkE;gBAClE,mEAAmE;gBACnE,mDAAmD;gBACnD,IAAI,CAAC,KAAK,iDAAyC,CAAC,KAAK,CAAC,EAAE;oBACxD,YAAY,GAAG,KAAK,CAAC;iBACxB;aACJ;YAED,mEAAmE;YACnE,uDAAuD;YACvD,IAAI,mBAAmB,KAAK,SAAS,IAAI,CAAC,IAAA,4BAAgB,EAAC,UAAU,CAAC,EAAE;gBACpE,IACI,4BAA4B,KAAK,SAAS;oBAC1C,4BAA4B,KAAK,mBAAmB,EACtD;oBACE,YAAY,GAAG,KAAK,CAAC;iBACxB;gBAED,4BAA4B,GAAG,mBAAmB,CAAC;aACtD;YAED,OAAO,kBAAkB,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,IAAI,IAAA,eAAO,EAAC,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE;YAC3C,eAAe,GAAG,SAAS,CAAC;SAC/B;QAED,uEAAuE;QACvE,sBAAsB;QACtB,IAAI,CAAC,eAAe,IAAI,IAAA,eAAO,EAAC,eAAe,CAAC,EAAE;YAC9C,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE;gBAC/D,MAAM,kBAAkB,GAAG,gBAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC;oBACxD,CAAC,CAAC,IAAA,iCAAqB,EAAC,UAAU,CAAC;oBACnC,CAAC,CAAC,UAAU,CAAC;gBACjB,OAAO,SAAS,CAAC,UAAU,CACvB,kBAAkB,EAClB,eAAe;gBACf,UAAU,CAAC,SAAS;gBACpB,wBAAwB,CAAC,SAAS;gBAClC,uBAAuB,CAAC,SAAS,mCAEjC,cAAc,CACjB,CAAC;YACN,CAAC,CAAC,CAAC;SACN;KACJ;IAED,uDAAuD;IACvD,6DAA6D;IAC7D,sCAAsC;IACtC,IAAI,CAAC,eAAe,EAAE;QAClB,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CACZ,oBAAS,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC,MAAM,CAAC;YACzD,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC;YAClC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI;SAC9B,CAAC,CACL,CAAC;QACF,OAAO,KAAK,CAAC;KAChB;IAED,IAAI,kBAAkB,IAAI,CAAC,IAAA,sBAAc,EAAC,kBAAkB,CAAC,EAAE;QAC3D,IACI,CAAC,SAAS,CAAC,UAAU,CACjB,kBAAkB,EAClB,eAAe;QACf,UAAU,CAAC,SAAS;QACpB,wBAAwB,CAAC,SAAS;QAClC,uBAAuB,CAAC,SAAS,mCAEjC,cAAc,CACjB,EACH;YACE,gEAAgE;YAChE,mEAAmE;YACnE,wBAAwB;YACxB,IACI,SAAS,CAAC,UAAU,CAChB,eAAe,EACf,kBAAkB;YAClB,UAAU,CAAC,SAAS;YACpB,wBAAwB,CAAC,SAAS;YAClC,uBAAuB,CAAC,SAAS,mCAEjC,cAAc,CACjB,EACH;gBACE,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,gBAAgB,EAAE;oBAChD,iBAAiB,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC;iBAC7F;aACJ;iBAAM;gBACH,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CACZ,oBAAS,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC,MAAM,CAAC;oBACzD,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,eAAe,CAAC;oBAC1C,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,kBAAkB,CAAC;iBAChD,CAAC,CACL,CAAC;gBACF,OAAO,KAAK,CAAC;aAChB;SACJ;KACJ;SAAM;QACH,mCAAmC;QACnC,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,gBAAgB,EAAE;YAChD,iBAAiB,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC;SAC7F;KACJ;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAS,qBAAqB,CAC1B,SAAwB,EACxB,QAAqB,EACrB,OAAa,EACb,IAAoC,EACpC,cAA8B,EAC9B,cAAc,GAAG,CAAC;IAElB,IAAI,YAAY,GAAG,IAAI,CAAC;IAExB,cAAc,CAAC,kBAAkB,CAAC,CAAC,gBAAgB,EAAE,EAAE;QACnD,IAAI,IAAA,iBAAS,EAAC,OAAO,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE;YACnD,MAAM,YAAY,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YACjE,IAAI,YAAY,EAAE;gBACd,IAAI,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE;oBAChF,0DAA0D;oBAC1D,IAAI,IAAA,kBAAU,EAAC,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE;wBACzE,OAAO;qBACV;iBACJ;aACJ;iBAAM;gBACH,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,cAAc,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;oBACjF,gBAAgB,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAA,uCAA2B,EAAC,OAAO,CAAC,CAAC,CAAC;iBACnF;gBACD,OAAO;aACV;SACJ;aAAM,IAAI,IAAA,kBAAU,EAAC,OAAO,CAAC,EAAE;YAC5B,MAAM,eAAe,GAAG,OAAO,CAAC;YAChC,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;gBAC3D,MAAM,KAAK,GAAsB;oBAC7B,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;oBACtC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU;oBAC1B,sBAAsB,EAAE,CAAC,CAAC,sBAAsB;oBAChD,eAAe,EAAE,CAAC,CAAC,eAAe;oBAClC,IAAI,EAAE,oBAAY,CAAC,yBAAyB,CAAC,eAAe,EAAE,KAAK,CAAC;iBACvE,CAAC;gBACF,OAAO,KAAK,CAAC;YACjB,CAAC,CAAC,CAAC;YAEH,MAAM,WAAW,GAAG,oBAAY,CAAC,cAAc,CAC3C,EAAE,EACF,EAAE,EACF,EAAE,EACF,OAAO,CAAC,OAAO,CAAC,KAAK,+CAAmC,CAC3D,CAAC;YACF,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBACzB,oBAAY,CAAC,YAAY,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YAClD,CAAC,CAAC,CAAC;YACH,WAAW,CAAC,OAAO,CAAC,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC;YACpE,WAAW,CAAC,OAAO,CAAC,yBAAyB,GAAG,OAAO,CAAC,OAAO,CAAC,yBAAyB,CAAC;YAC1F,WAAW,CAAC,OAAO,CAAC,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC;YACtF,WAAW,CAAC,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;YAC1D,WAAW,CAAC,OAAO,CAAC,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC;YAC1E,WAAW,CAAC,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;YAE1D,IAAI,4BAA4B,GAAG,KAAK,CAAC;YAEzC,MAAM,YAAY,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YACjE,IAAI,YAAY,EAAE;gBACd,+DAA+D;gBAC/D,2BAA2B;gBAC3B,MAAM,gBAAgB,GAAG,IAAA,uCAA2B,EAAC,YAAY,CAAC,CAAC;gBAEnE,6BAA6B;gBAC7B,IACI,SAAS,CAAC,UAAU,CAChB,gBAAgB,EAChB,WAAW;gBACX,UAAU,CAAC,SAAS;gBACpB,wBAAwB,CAAC,SAAS;gBAClC,uBAAuB,CAAC,SAAS,wDAEjC,cAAc,CACjB,EACH;oBACE,4BAA4B,GAAG,IAAI,CAAC;iBACvC;qBAAM,IACH,SAAS,CAAC,UAAU,CAChB,WAAW,EACX,gBAAgB;gBAChB,UAAU,CAAC,SAAS;gBACpB,wBAAwB,CAAC,SAAS;gBAClC,uBAAuB,CAAC,SAAS,wDAEjC,cAAc,CACjB,EACH;oBACE,sEAAsE;oBACtE,gCAAgC;oBAChC,OAAO;iBACV;aACJ;iBAAM;gBACH,4BAA4B,GAAG,IAAI,CAAC;aACvC;YAED,IAAI,4BAA4B,EAAE;gBAC9B,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,cAAc,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;oBACjF,gBAAgB,CAAC,cAAc,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;iBAC1D;gBACD,OAAO;aACV;SACJ;aAAM,IAAI,IAAA,sBAAc,EAAC,OAAO,CAAC,EAAE;YAChC,OAAO;SACV;QAED,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CACZ,oBAAS,CAAC,kBAAkB,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC;YAChD,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC;YAClC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI;SAC9B,CAAC,CACL,CAAC;QAEF,YAAY,GAAG,KAAK,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,IAAI,wBAAwB,EAAE;QAC1B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,4BAA4B,CAAC,CAAC;QACnD,iBAAiB,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;KACxD;IAED,OAAO,YAAY,CAAC;AACxB,CAAC;AAED,sEAAsE;AACtE,wEAAwE;AACxE,6EAA6E;AAC7E,6EAA6E;AAC7E,+EAA+E;AAC/E,oBAAoB;AACpB,SAAgB,yCAAyC,CACrD,SAAwB,EACxB,IAAe,EACf,YAAkB,EAClB,cAA8B,EAC9B,iBAA+C,EAC/C,cAAkC,SAAS;IAE3C,IAAI,IAAA,aAAK,EAAC,YAAY,CAAC,EAAE;QACrB,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YAC9C,iBAAiB,CAAC,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;QACxF,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;KACf;IAED,IAAI,IAAA,iBAAS,EAAC,YAAY,CAAC,IAAI,YAAY,CAAC,OAAO,CAAC,iBAAiB,IAAI,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE;QACrG,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC;KACjD;IAED,IAAI,CAAC,IAAA,eAAO,EAAC,YAAY,CAAC,EAAE;QACxB,OAAO,KAAK,CAAC;KAChB;IAED,2EAA2E;IAC3E,MAAM,gBAAgB,GAAG,YAAY,CAAC,aAAa,CAAC;IACpD,IAAI,CAAC,gBAAgB,EAAE;QACnB,OAAO,SAAS,CAAC,UAAU,CACvB,IAAI,EACJ,YAAY;QACZ,UAAU,CAAC,SAAS,EACpB,cAAc;QACd,uBAAuB,CAAC,SAAS,oDAEpC,CAAC;KACL;IAED,SAAS,CAAC,kCAAkC,CAAC,IAAI,CAAC,CAAC;IAEnD,2EAA2E;IAC3E,8BAA8B;IAC9B,IAAI,iBAAS,CAAC,kBAAkB,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE;QAClD,MAAM,uBAAuB,GAAG,IAAA,mDAAuC,EAAC,YAAY,CAAC,CAAC;QACtF,uBAAuB;aAClB,mBAAmB,EAAE;aACrB,WAAW,EAAE;aACb,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,IAAI,YAAY,GAAG,uBAAuB,CAAC,mBAAmB,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE/F,IAAI,YAAY,IAAI,iBAAiB,EAAE;gBACnC,YAAY,GAAG,IAAA,iCAAqB,EAAC,YAAY,EAAE,iBAAiB,EAAE,WAAW,CAAC,CAAC;aACtF;YAED,IAAI,YAAY,EAAE;gBACd,MAAM,QAAQ,GAAG,mBAAW,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAExD,iBAAiB,CACb,SAAS,EACT,cAAc,EACd,KAAK,CAAC,OAAO,EACb,QAAQ,+BAAuB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,EAC1D,QAAQ,mCAA2B,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CACjE,CAAC;gBAEF,IAAI,KAAK,CAAC,UAAU,EAAE;oBAClB,cAAc,CAAC,eAAe,CAC1B,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;wBAChC,IAAI,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC;wBAEhC,IAAI,iBAAiB,EAAE;4BACnB,SAAS,GAAG,IAAA,iCAAqB,EAAC,UAAU,CAAC,IAAI,EAAE,iBAAiB,EAAE,WAAW,CAAC,CAAC;yBACtF;wBAED,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC;oBACpE,CAAC,CAAC,CACL,CAAC;iBACL;aACJ;QACL,CAAC,CAAC,CAAC;QACP,OAAO,IAAI,CAAC;KACf;IAED,iDAAiD;IACjD,MAAM,mBAAmB,GAAG,IAAA,6BAAiB,EAAC,YAAY,CAAC,CAAC;IAC5D,MAAM,qBAAqB,GAAG,iBAAS,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE;QAC7F,MAAM,OAAO,GAAG,mBAAW,CAAC,cAAc,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC;QAC7D,OAAO,CAAC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;QACrC,IAAI,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE;YAC/B,OAAO,CAAC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;SACtC;QAED,2EAA2E;QAC3E,OAAO,CAAC,OAAO,CAAC,gBAAgB,6BAAqB,CAAC;QACtD,OAAO,CAAC,OAAO,GAAG,mBAAmB,CAAC;QACtC,OAAO,OAAO,CAAC;IACnB,CAAC,CAAC,CAAC;IACH,MAAM,mBAAmB,GAAG,iBAAS,CAAC,sBAAsB,CACxD,YAAY,EACZ,qBAAqB;IACrB,4BAA4B,CAAC,IAAI,CACpC,CAAC;IAEF,8EAA8E;IAC9E,MAAM,QAAQ,GAAG,iBAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE;QACxE,MAAM,OAAO,GAAG,mBAAW,CAAC,cAAc,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC;QAC/D,OAAO,CAAC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;QACrC,OAAO,CAAC,OAAO,CAAC,gBAAgB,GAAG,KAAK,CAAC;QACzC,OAAO,CAAC,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAC9C,IAAI,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE;YAC/B,OAAO,CAAC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;SACtC;QACD,OAAO,mBAAW,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,iBAAS,CAAC,sBAAsB,CAAC,IAAI,EAAE,QAAQ,EAAE,4BAA4B,CAAC,IAAI,CAAC,CAAC;IAC5G,MAAM,uBAAuB,GAAG,IAAI,+BAAc,CAAC,mBAAmB,CAAC,CAAC;IACxE,IACI,SAAS,CAAC,UAAU,CAChB,mBAAmB,EACnB,eAAe;IACf,UAAU,CAAC,SAAS,EACpB,uBAAuB;IACvB,uBAAuB,CAAC,SAAS,oDAEpC,EACH;QACE,IAAI,aAAa,GAAG,IAAI,CAAC;QAEzB,qBAAqB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;YAC7C,IAAI,YAAY,GAAG,uBAAuB,CAAC,mBAAmB,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YACzF,MAAM,aAAa,GAAW,EAAE,CAAC;YAEjC,6EAA6E;YAC7E,uDAAuD;YACvD,IAAI,YAAY,EAAE;gBACd,IAAI,OAAO,CAAC,OAAO,CAAC,WAAW,IAAI,IAAA,kBAAU,EAAC,YAAY,CAAC,EAAE;oBACzD,YAAY,GAAG,IAAA,uCAA2B,EAAC,YAAY,CAAC,CAAC;iBAC5D;gBAED,IAAI,IAAA,eAAO,EAAC,YAAY,CAAC,EAAE;oBACvB,IAAI,iBAA0C,CAAC;oBAE/C,IAAA,qBAAS,EAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;wBACjD,IACI,IAAA,iBAAS,EAAC,OAAO,CAAC;4BAClB,OAAO,CAAC,OAAO,CAAC,aAAa;4BAC7B,OAAO,CAAC,OAAO,CAAC,gBAAgB,KAAK,SAAS;4BAC9C,CAAC,iBAAiB,EACpB;4BACE,iBAAiB,GAAG,OAAO,CAAC;yBAC/B;6BAAM;4BACH,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAC/B;oBACL,CAAC,CAAC,CAAC;oBAEH,IAAI,iBAAiB,EAAE;wBACnB,YAAY,GAAG,iBAAiB,CAAC;qBACpC;iBACJ;aACJ;YAED,sEAAsE;YACtE,+EAA+E;YAC/E,IACI,YAAY;gBACZ,IAAA,iBAAS,EAAC,YAAY,CAAC;gBACvB,YAAY,CAAC,OAAO,CAAC,aAAa;gBAClC,YAAY,CAAC,OAAO,CAAC,gBAAgB,KAAK,SAAS,EACrD;gBACE,MAAM,aAAa,GACf,iBAAS,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;gBACxF,IAAI,KAAK,GAAG,gBAAgB,CAAC,MAAM,EAAE;oBACjC,IAAI,YAAY,GAAqB,IAAA,+CAAmC,EAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;oBAElG,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC1B,YAAY,GAAG,IAAA,oBAAY,EAAC,CAAC,YAAY,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC;qBACjE;oBAED,IAAI,iBAAiB,EAAE;wBACnB,YAAY,GAAG,IAAA,iCAAqB,EAAC,YAAY,EAAE,iBAAiB,EAAE,WAAW,CAAC,CAAC;qBACtF;oBAED,IAAI,YAAY,EAAE;wBACd,MAAM,QAAQ,GAAG,mBAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;wBAElD,yEAAyE;wBACzE,+EAA+E;wBAC/E,2DAA2D;wBAC3D,IAAI,cAAc,CAAC,mBAAmB,EAAE,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE;4BACpE,aAAa,GAAG,KAAK,CAAC;4BACtB,YAAY,GAAG,mBAAW,CAAC,MAAM,EAAE,CAAC;yBACvC;wBAED,iBAAiB,CACb,SAAS,EACT,cAAc,EACd,aAAa,EACb,QAAQ,+BAAuB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,EAC1D,QAAQ,mCAA2B,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CACjE,CAAC;qBACL;yBAAM;wBACH,aAAa,GAAG,KAAK,CAAC;qBACzB;iBACJ;aACJ;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,aAAa,CAAC;KACxB;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAnND,8FAmNC;AAED,2EAA2E;AAC3E,4EAA4E;AAC5E,sDAAsD;AACtD,SAAS,2BAA2B,CAAC,KAAW,EAAE,KAAW;IACzD,mEAAmE;IACnE,IAAI,CAAC,IAAA,uBAAe,EAAC,KAAK,CAAC,IAAI,CAAC,IAAA,uBAAe,EAAC,KAAK,CAAC,EAAE;QACpD,OAAO,SAAS,CAAC;KACpB;IAED,6EAA6E;IAC7E,IACI,CAAC,KAAK,CAAC,kBAAkB;QACzB,CAAC,KAAK,CAAC,kBAAkB;QACzB,KAAK,CAAC,kBAAkB,CAAC,MAAM,KAAK,KAAK,CAAC,kBAAkB,CAAC,MAAM,EACrE;QACE,OAAO,SAAS,CAAC;KACpB;IAED,IAAI,UAAU,GAAG,IAAI,CAAC;IAEtB,MAAM,aAAa,GAAwB,KAAK,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACpF,MAAM,IAAI,GAAG,KAAK,CAAC,kBAAmB,CAAC,KAAK,CAAC,CAAC;QAE9C,sEAAsE;QACtE,6DAA6D;QAC7D,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,EAAE;YACvC,UAAU,GAAG,KAAK,CAAC;SACtB;QAED,OAAO;YACH,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,IAAI,EAAE,IAAA,oBAAY,EAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;SAC7C,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,UAAU,EAAE;QACb,OAAO,SAAS,CAAC;KACpB;IAED,OAAO,IAAA,gCAAoB,EAAC,KAAK,EAAE,aAAa,EAAE,4BAA4B,CAAC,IAAI,EAAE,qBAAqB,CAAC,IAAI,CAAC,CAAC;AACrH,CAAC;AAED,sEAAsE;AACtE,qDAAqD;AACrD,SAAS,iCAAiC,CAAC,SAAwB,EAAE,IAAU;IAC3E,IAAI,CAAC,IAAA,uBAAe,EAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;QACpD,OAAO,IAAI,CAAC;KACf;IAED,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,MAAM,aAAa,GAAwB,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QAC3E,MAAM,YAAY,GAAG,SAAS,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAE3D,IAAI,YAAY,KAAK,GAAG,CAAC,IAAI,EAAE;YAC3B,eAAe,GAAG,IAAI,CAAC;SAC1B;QAED,OAAO;YACH,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,IAAI,EAAE,YAAY;SACrB,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,eAAe,EAAE;QAClB,OAAO,IAAI,CAAC;KACf;IAED,OAAO,IAAA,gCAAoB,EAAC,IAAI,EAAE,aAAa,EAAE,4BAA4B,CAAC,IAAI,EAAE,qBAAqB,CAAC,IAAI,CAAC,CAAC;AACpH,CAAC;AAED,6EAA6E;AAC7E,qCAAqC;AACrC,SAAS,iBAAiB,CAAC,SAAwB,EAAE,cAA8B,EAAE,MAAc;IAC/F,MAAM,qBAAqB,GAAG,cAAc,CAAC,oBAAoB,EAAE,CAAC,MAAM,CAAC;IAC3E,IAAI,qBAAqB,KAAK,CAAC,EAAE;QAC7B,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,iBAAiB,CAAC,CAAC;KAC3C;SAAM,IAAI,qBAAqB,KAAK,CAAC,EAAE;QACpC,0BAA0B,CAAC,SAAS,EAAE,cAAc,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,IAAI,CAAC,CAAC;KAClG;SAAM;QACH,cAAc,CAAC,yBAAyB,CAAC,CAAC,OAAO,EAAE,cAAc,EAAE,EAAE;YACjE,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,eAAe,cAAc,EAAE,CAAC,CAAC;YACtD,0BAA0B,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;KACN;AACL,CAAC;AAED,SAAS,0BAA0B,CAAC,SAAwB,EAAE,OAAgC,EAAE,MAAc;IAC1G,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAE7B,OAAO,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;;QACpC,MAAM,WAAW,GAAG,GAAG,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC7D,MAAM,WAAW,GAAG,MAAA,KAAK,CAAC,qBAAqB,mCAAI,KAAK,CAAC,WAAW,CAAC;QACrE,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAElC,kCAAkC;QAClC,IAAI,WAAW,IAAI,SAAS,IAAI,IAAA,kBAAU,EAAC,WAAW,EAAE,SAAS,CAAC,EAAE;YAChE,OAAO,CAAC,GAAG,CAAC,GAAG,WAAW,MAAM,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YACpE,gBAAgB,GAAG,IAAI,CAAC;SAC3B;aAAM;YACH,IAAI,WAAW,EAAE;gBACb,OAAO,CAAC,GAAG,CAAC,GAAG,WAAW,MAAM,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBACpE,gBAAgB,GAAG,IAAI,CAAC;aAC3B;YACD,IAAI,SAAS,EAAE;gBACX,OAAO,CAAC,GAAG,CAAC,GAAG,WAAW,MAAM,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAClE,gBAAgB,GAAG,IAAI,CAAC;aAC3B;SACJ;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,gBAAgB,EAAE;QACnB,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,gBAAgB,CAAC,CAAC;KAC1C;AACL,CAAC"}
@@ -44,7 +44,7 @@ function applyPartialTransform(evaluator, errorNode, argList, result) {
44
44
  if (!(0, types_1.isClassInstance)(result.returnType) || result.returnType.details.fullName !== 'functools.partial') {
45
45
  return result;
46
46
  }
47
- const callMemberResult = (0, typeUtils_1.lookUpObjectMember)(result.returnType, '__call__', 16 /* SkipInstanceMembers */);
47
+ const callMemberResult = (0, typeUtils_1.lookUpObjectMember)(result.returnType, '__call__', 16 /* MemberAccessFlags.SkipInstanceMembers */);
48
48
  if (!callMemberResult || !(0, types_1.isTypeSame)((0, typeUtils_1.convertToInstance)(callMemberResult.classType), result.returnType)) {
49
49
  return result;
50
50
  }
@@ -67,7 +67,7 @@ function applyPartialTransform(evaluator, errorNode, argList, result) {
67
67
  // Evaluate the inferred return type if necessary.
68
68
  evaluator.inferReturnTypeIfNecessary(origFunctionType);
69
69
  // We don't currently handle unpacked arguments.
70
- if (argList.some((arg) => arg.argumentCategory !== 0 /* Simple */)) {
70
+ if (argList.some((arg) => arg.argumentCategory !== 0 /* ArgumentCategory.Simple */)) {
71
71
  return result;
72
72
  }
73
73
  // Make sure the first argument is a simple function.
@@ -78,7 +78,7 @@ function applyPartialTransform(evaluator, errorNode, argList, result) {
78
78
  }
79
79
  // Create a new copy of the functools.partial class that overrides the __call__ method.
80
80
  const newPartialClass = types_1.ClassType.cloneForSymbolTableUpdate(result.returnType);
81
- newPartialClass.details.fields.set('__call__', symbol_1.Symbol.createWithType(4 /* ClassMember */, transformResult.returnType));
81
+ newPartialClass.details.fields.set('__call__', symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */, transformResult.returnType));
82
82
  return {
83
83
  returnType: newPartialClass,
84
84
  isTypeIncomplete: result.isTypeIncomplete,
@@ -119,9 +119,9 @@ function applyPartialTransform(evaluator, errorNode, argList, result) {
119
119
  else {
120
120
  synthesizedCallType = types_1.OverloadedFunctionType.create(
121
121
  // Set the "overloaded" flag for each of the __call__ overloads.
122
- applicableOverloads.map((overload) => types_1.FunctionType.cloneWithNewFlags(overload, overload.details.flags | 256 /* Overloaded */)));
122
+ applicableOverloads.map((overload) => types_1.FunctionType.cloneWithNewFlags(overload, overload.details.flags | 256 /* FunctionTypeFlags.Overloaded */)));
123
123
  }
124
- newPartialClass.details.fields.set('__call__', symbol_1.Symbol.createWithType(4 /* ClassMember */, synthesizedCallType));
124
+ newPartialClass.details.fields.set('__call__', symbol_1.Symbol.createWithType(4 /* SymbolFlags.ClassMember */, synthesizedCallType));
125
125
  return {
126
126
  returnType: newPartialClass,
127
127
  isTypeIncomplete: result.isTypeIncomplete,
@@ -276,10 +276,10 @@ function applyPartialTransformToFunction(evaluator, errorNode, argList, partialC
276
276
  return specializedParam;
277
277
  });
278
278
  const unassignedParamList = updatedParamList.filter((param) => {
279
- if (param.category === 2 /* KwargsDict */) {
279
+ if (param.category === 2 /* ParameterCategory.KwargsDict */) {
280
280
  return false;
281
281
  }
282
- if (param.category === 1 /* ArgsList */) {
282
+ if (param.category === 1 /* ParameterCategory.ArgsList */) {
283
283
  return true;
284
284
  }
285
285
  return !param.name || !paramMap.has(param.name);
@@ -288,7 +288,7 @@ function applyPartialTransformToFunction(evaluator, errorNode, argList, partialC
288
288
  return param.name && paramMap.get(param.name);
289
289
  });
290
290
  const kwargsParam = updatedParamList.filter((param) => {
291
- return param.category === 2 /* KwargsDict */;
291
+ return param.category === 2 /* ParameterCategory.KwargsDict */;
292
292
  });
293
293
  const newParamList = [];
294
294
  (0, collectionUtils_1.appendArray)(newParamList, unassignedParamList);
@@ -1 +1 @@
1
- {"version":3,"file":"constructorTransform.js","sourceRoot":"","sources":["../../../src/analyzer/constructorTransform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constructorTransform.js","sourceRoot":"","sources":["../../../src/analyzer/constructorTransform.ts"],"names":[],"mappings":"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"}
@@ -26,20 +26,20 @@ const typeVarContext_1 = require("./typeVarContext");
26
26
  const types_1 = require("./types");
27
27
  // Fetches and binds the __new__ method from a class.
28
28
  function getBoundNewMethod(evaluator, errorNode, type, skipObjectBase = true) {
29
- let flags = 32 /* SkipClassMembers */ |
30
- 512 /* SkipAttributeAccessOverride */ |
31
- 256 /* TreatConstructorAsClassMethod */;
29
+ let flags = 32 /* MemberAccessFlags.SkipClassMembers */ |
30
+ 512 /* MemberAccessFlags.SkipAttributeAccessOverride */ |
31
+ 256 /* MemberAccessFlags.TreatConstructorAsClassMethod */;
32
32
  if (skipObjectBase) {
33
- flags |= 4 /* SkipObjectBaseClass */;
33
+ flags |= 4 /* MemberAccessFlags.SkipObjectBaseClass */;
34
34
  }
35
35
  return evaluator.getTypeOfBoundMember(errorNode, type, '__new__', { method: 'get' }, /* diag */ undefined, flags);
36
36
  }
37
37
  exports.getBoundNewMethod = getBoundNewMethod;
38
38
  // Fetches and binds the __init__ method from a class instance.
39
39
  function getBoundInitMethod(evaluator, errorNode, type, skipObjectBase = true) {
40
- let flags = 16 /* SkipInstanceMembers */ | 512 /* SkipAttributeAccessOverride */;
40
+ let flags = 16 /* MemberAccessFlags.SkipInstanceMembers */ | 512 /* MemberAccessFlags.SkipAttributeAccessOverride */;
41
41
  if (skipObjectBase) {
42
- flags |= 4 /* SkipObjectBaseClass */;
42
+ flags |= 4 /* MemberAccessFlags.SkipObjectBaseClass */;
43
43
  }
44
44
  return evaluator.getTypeOfBoundMember(errorNode, type, '__init__', { method: 'get' }, /* diag */ undefined, flags);
45
45
  }
@@ -47,9 +47,9 @@ exports.getBoundInitMethod = getBoundInitMethod;
47
47
  // Fetches and binds the __call__ method from a class or its metaclass.
48
48
  function getBoundCallMethod(evaluator, errorNode, type) {
49
49
  return evaluator.getTypeOfBoundMember(errorNode, type, '__call__', { method: 'get' },
50
- /* diag */ undefined, 16 /* SkipInstanceMembers */ |
51
- 8 /* SkipTypeBaseClass */ |
52
- 512 /* SkipAttributeAccessOverride */);
50
+ /* diag */ undefined, 16 /* MemberAccessFlags.SkipInstanceMembers */ |
51
+ 8 /* MemberAccessFlags.SkipTypeBaseClass */ |
52
+ 512 /* MemberAccessFlags.SkipAttributeAccessOverride */);
53
53
  }
54
54
  exports.getBoundCallMethod = getBoundCallMethod;
55
55
  // Matches the arguments of a call to the constructor for a class.
@@ -367,7 +367,7 @@ function validateInitMethod(evaluator, errorNode, argList, type, skipUnknownArgC
367
367
  function validateFallbackConstructorCall(evaluator, errorNode, argList, type, inferenceContext) {
368
368
  let reportedErrors = false;
369
369
  // It's OK if the argument list consists only of `*args` and `**kwargs`.
370
- if (argList.length > 0 && argList.some((arg) => arg.argumentCategory === 0 /* Simple */)) {
370
+ if (argList.length > 0 && argList.some((arg) => arg.argumentCategory === 0 /* ArgumentCategory.Simple */)) {
371
371
  if (!type.includeSubclasses) {
372
372
  const fileInfo = (0, analyzerNodeInfo_1.getFileInfo)(errorNode);
373
373
  evaluator.addDiagnostic(fileInfo.diagnosticRuleSet.reportGeneralTypeIssues, diagnosticRules_1.DiagnosticRule.reportGeneralTypeIssues, localize_1.Localizer.Diagnostic.constructorNoArgs().format({ type: type.aliasName || type.details.name }), errorNode);
@@ -431,7 +431,7 @@ function applyExpectedTypeForConstructor(evaluator, type, inferenceContext, type
431
431
  // If this isn't a generic type or it's a type that has already been
432
432
  // explicitly specialized, the expected type isn't applicable.
433
433
  if (type.details.typeParameters.length === 0 || type.typeArguments) {
434
- return types_1.ClassType.cloneAsInstance(type);
434
+ return (0, typeUtils_1.applySolvedTypeVars)(types_1.ClassType.cloneAsInstance(type), typeVarContext, { applyInScopePlaceholders: true });
435
435
  }
436
436
  if (inferenceContext) {
437
437
  const specializedExpectedType = (0, typeUtils_1.mapSubtypes)(inferenceContext.expectedType, (expectedSubtype) => {
@@ -468,15 +468,14 @@ function applyExpectedTypeForTupleConstructor(type, inferenceContext) {
468
468
  // taking into consideration the __init__ and __new__ methods.
469
469
  function createFunctionFromConstructor(evaluator, classType, selfType = undefined, recursionCount = 0) {
470
470
  // Use the __init__ method if available. It's usually more detailed.
471
- const initInfo = (0, typeUtils_1.lookUpClassMember)(classType, '__init__', 16 /* SkipInstanceMembers */ |
472
- 512 /* SkipAttributeAccessOverride */ |
473
- 4 /* SkipObjectBaseClass */);
471
+ const initInfo = (0, typeUtils_1.lookUpClassMember)(classType, '__init__', 16 /* MemberAccessFlags.SkipInstanceMembers */ |
472
+ 512 /* MemberAccessFlags.SkipAttributeAccessOverride */ |
473
+ 4 /* MemberAccessFlags.SkipObjectBaseClass */);
474
474
  if (initInfo) {
475
475
  const initType = evaluator.getTypeOfMember(initInfo);
476
476
  const objectType = types_1.ClassType.cloneAsInstance(classType);
477
477
  function convertInitToConstructor(initSubtype) {
478
- let constructorFunction = evaluator.bindFunctionToClassOrObject(objectType, initSubtype,
479
- /* memberClass */ undefined,
478
+ let constructorFunction = evaluator.bindFunctionToClassOrObject(objectType, initSubtype, initInfo && (0, types_1.isInstantiableClass)(initInfo.classType) ? initInfo.classType : undefined,
480
479
  /* treatConstructorAsClassMember */ undefined, selfType,
481
480
  /* diag */ undefined, recursionCount);
482
481
  if (constructorFunction) {
@@ -490,7 +489,7 @@ function createFunctionFromConstructor(evaluator, classType, selfType = undefine
490
489
  if (!constructorFunction.details.docString && classType.details.docString) {
491
490
  constructorFunction.details.docString = classType.details.docString;
492
491
  }
493
- constructorFunction.details.flags &= ~4 /* StaticMethod */;
492
+ constructorFunction.details.flags &= ~4 /* FunctionTypeFlags.StaticMethod */;
494
493
  constructorFunction.details.constructorTypeVarScopeId = (0, typeUtils_1.getTypeVarScopeId)(classType);
495
494
  }
496
495
  return constructorFunction;
@@ -516,14 +515,13 @@ function createFunctionFromConstructor(evaluator, classType, selfType = undefine
516
515
  }
517
516
  }
518
517
  // Fall back on the __new__ method if __init__ isn't available.
519
- const newInfo = (0, typeUtils_1.lookUpClassMember)(classType, '__new__', 16 /* SkipInstanceMembers */ |
520
- 512 /* SkipAttributeAccessOverride */ |
521
- 4 /* SkipObjectBaseClass */);
518
+ const newInfo = (0, typeUtils_1.lookUpClassMember)(classType, '__new__', 16 /* MemberAccessFlags.SkipInstanceMembers */ |
519
+ 512 /* MemberAccessFlags.SkipAttributeAccessOverride */ |
520
+ 4 /* MemberAccessFlags.SkipObjectBaseClass */);
522
521
  if (newInfo) {
523
522
  const newType = evaluator.getTypeOfMember(newInfo);
524
523
  const convertNewToConstructor = (newSubtype) => {
525
- let constructorFunction = evaluator.bindFunctionToClassOrObject(classType, newSubtype,
526
- /* memberClass */ undefined,
524
+ let constructorFunction = evaluator.bindFunctionToClassOrObject(classType, newSubtype, newInfo && (0, types_1.isInstantiableClass)(newInfo.classType) ? newInfo.classType : undefined,
527
525
  /* treatConstructorAsClassMember */ true, selfType,
528
526
  /* diag */ undefined, recursionCount);
529
527
  if (constructorFunction) {
@@ -532,7 +530,7 @@ function createFunctionFromConstructor(evaluator, classType, selfType = undefine
532
530
  if (!constructorFunction.details.docString && classType.details.docString) {
533
531
  constructorFunction.details.docString = classType.details.docString;
534
532
  }
535
- constructorFunction.details.flags &= ~(4 /* StaticMethod */ | 1 /* ConstructorMethod */);
533
+ constructorFunction.details.flags &= ~(4 /* FunctionTypeFlags.StaticMethod */ | 1 /* FunctionTypeFlags.ConstructorMethod */);
536
534
  constructorFunction.details.constructorTypeVarScopeId = (0, typeUtils_1.getTypeVarScopeId)(classType);
537
535
  }
538
536
  return constructorFunction;
@@ -558,7 +556,7 @@ function createFunctionFromConstructor(evaluator, classType, selfType = undefine
558
556
  }
559
557
  }
560
558
  // Return a fallback constructor based on the object.__new__ method.
561
- const constructorFunction = types_1.FunctionType.createSynthesizedInstance('__new__', 0 /* None */);
559
+ const constructorFunction = types_1.FunctionType.createSynthesizedInstance('__new__', 0 /* FunctionTypeFlags.None */);
562
560
  constructorFunction.details.declaredReturnType = types_1.ClassType.cloneAsInstance(classType);
563
561
  // If this is type[T] or a protocol, we don't know what parameters are accepted
564
562
  // by the constructor, so add the default parameters.
@@ -607,7 +605,7 @@ function isDefaultNewMethod(newMethod) {
607
605
  if (params.length !== 2) {
608
606
  return false;
609
607
  }
610
- if (params[0].category !== 1 /* ArgsList */ || params[1].category !== 2 /* KwargsDict */) {
608
+ if (params[0].category !== 1 /* ParameterCategory.ArgsList */ || params[1].category !== 2 /* ParameterCategory.KwargsDict */) {
611
609
  return false;
612
610
  }
613
611
  const returnType = (_a = newMethod.details.declaredReturnType) !== null && _a !== void 0 ? _a : newMethod.inferredReturnType;
@@ -1 +1 @@
1
- {"version":3,"file":"constructors.js","sourceRoot":"","sources":["../../../src/analyzer/constructors.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;AAEH,+DAAwD;AACxD,+DAA2D;AAC3D,uDAAqD;AAErD,yDAAiD;AACjD,yDAA+E;AAC/E,iEAA4F;AAC5F,qDAA2D;AAE3D,2CAeqB;AACrB,qDAAkD;AAClD,mCAiBiB;AAEjB,qDAAqD;AACrD,SAAgB,iBAAiB,CAC7B,SAAwB,EACxB,SAAyB,EACzB,IAAe,EACf,cAAc,GAAG,IAAI;IAErB,IAAI,KAAK,GACL;6CAC6C;+CACE,CAAC;IACpD,IAAI,cAAc,EAAE;QAChB,KAAK,+BAAyC,CAAC;KAClD;IAED,OAAO,SAAS,CAAC,oBAAoB,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AACtH,CAAC;AAfD,8CAeC;AAED,+DAA+D;AAC/D,SAAgB,kBAAkB,CAC9B,SAAwB,EACxB,SAAyB,EACzB,IAAe,EACf,cAAc,GAAG,IAAI;IAErB,IAAI,KAAK,GAAG,oEAAqF,CAAC;IAClG,IAAI,cAAc,EAAE;QAChB,KAAK,+BAAyC,CAAC;KAClD;IAED,OAAO,SAAS,CAAC,oBAAoB,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AACvH,CAAC;AAZD,gDAYC;AAED,uEAAuE;AACvE,SAAgB,kBAAkB,CAAC,SAAwB,EAAE,SAAyB,EAAE,IAAe;IACnG,OAAO,SAAS,CAAC,oBAAoB,CACjC,SAAS,EACT,IAAI,EACJ,UAAU,EACV,EAAE,MAAM,EAAE,KAAK,EAAE;IACjB,UAAU,CAAC,SAAS,EACpB;iCACuC;6CACU,CACpD,CAAC;AACN,CAAC;AAXD,gDAWC;AAED,kEAAkE;AAClE,yEAAyE;AACzE,4EAA4E;AAC5E,SAAgB,4BAA4B,CACxC,SAAwB,EACxB,SAAyB,EACzB,OAA2B,EAC3B,IAAe,EACf,mBAA4B,EAC5B,gBAA8C;;IAE9C,MAAM,eAAe,GAAG,qBAAqB,CACzC,SAAS,EACT,SAAS,EACT,OAAO,EACP,IAAI,EACJ,mBAAmB,EACnB,gBAAgB,CACnB,CAAC;IAEF,IAAI,eAAe,EAAE;QACjB,MAAM,mBAAmB,GAAG,MAAA,eAAe,CAAC,UAAU,mCAAI,mBAAW,CAAC,MAAM,EAAE,CAAC;QAE/E,oEAAoE;QACpE,uEAAuE;QACvE,yEAAyE;QACzE,mCAAmC;QACnC,IAAI,eAAe,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,EAAE,mBAAmB,CAAC,EAAE;YACvG,OAAO,eAAe,CAAC;SAC1B;KACJ;IAED,mEAAmE;IACnE,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAC1E,MAAM,uBAAuB,GAAG,IAAA,8CAAuB,EAAC,IAAI,CAAC,CAAC;IAE9D,4EAA4E;IAC5E,oEAAoE;IACpE,IAAI,YAAY,GAAG,SAAS,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE;QAClG,OAAO,yBAAyB,CAC5B,SAAS,EACT,SAAS,EACT,OAAO,EACP,IAAI,EACJ,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,CACtB,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,uBAAuB,GAAG,CAAC,uBAAuB,IAAI,YAAY,CAAC,cAAc,CAAC;IAEtF,+CAA+C;IAC/C,IAAI,uBAAuB,EAAE;QACzB,IAAI,YAAY,CAAC,cAAc,EAAE;YAC7B,yEAAyE;YACzE,0EAA0E;YAC1E,8CAA8C;YAC9C,yBAAyB,CACrB,SAAS,EACT,SAAS,EACT,OAAO,EACP,IAAI,EACJ,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,CACtB,CAAC;YAEF,uBAAuB,GAAG,IAAI,CAAC;SAClC;aAAM,IAAI,YAAY,CAAC,UAAU,EAAE;YAChC,MAAM,WAAW,GAAG,IAAA,gDAAyB,EAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE;gBAC/E,cAAc,EAAE,CAAC,CAAC,YAAY,CAAC,cAAc;gBAC7C,UAAU,EAAE,YAAY,CAAC,UAAU;gBACnC,gBAAgB,EAAE,CAAC,CAAC,YAAY,CAAC,gBAAgB;aACpD,CAAC,CAAC;YAEH,YAAY,CAAC,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC;YAEjD,IAAI,WAAW,CAAC,gBAAgB,EAAE;gBAC9B,YAAY,CAAC,gBAAgB,GAAG,IAAI,CAAC;aACxC;YAED,IAAI,WAAW,CAAC,cAAc,EAAE;gBAC5B,YAAY,CAAC,cAAc,GAAG,IAAI,CAAC;aACtC;YAED,uBAAuB,GAAG,IAAI,CAAC;SAClC;KACJ;IAED,wEAAwE;IACxE,sEAAsE;IACtE,IAAI,CAAC,uBAAuB,EAAE;QAC1B,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACpB,IAAI,GAAG,CAAC,eAAe,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE;gBAC/E,SAAS,CAAC,mBAAmB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;aACtD;QACL,CAAC,CAAC,CAAC;KACN;IAED,4EAA4E;IAC5E,2EAA2E;IAC3E,iDAAiD;IACjD,IAAI,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,UAAU,EAAE;QAC7B,iFAAiF;QACjF,yCAAyC;QACzC,IAAI,CAAC,YAAY,CAAC,UAAU,IAAI,IAAA,sBAAc,EAAC,YAAY,CAAC,UAAU,CAAC,EAAE;YACrE,IAAI,CAAC,IAAA,sBAAc,EAAC,eAAe,CAAC,UAAU,CAAC,EAAE;gBAC7C,YAAY,GAAG,EAAE,GAAG,YAAY,EAAE,UAAU,EAAE,eAAe,CAAC,UAAU,EAAE,CAAC;aAC9E;SACJ;aAAM,IAAI,YAAY,CAAC,UAAU,IAAI,IAAA,eAAO,EAAC,YAAY,CAAC,UAAU,CAAC,EAAE;YACpE,YAAY,GAAG,EAAE,GAAG,YAAY,EAAE,UAAU,EAAE,eAAe,CAAC,UAAU,EAAE,CAAC;SAC9E;KACJ;IAED,OAAO,YAAY,CAAC;AACxB,CAAC;AAjHD,oEAiHC;AAED,SAAS,yBAAyB,CAC9B,SAAwB,EACxB,SAAyB,EACzB,OAA2B,EAC3B,IAAe,EACf,mBAA4B,EAC5B,gBAA8C,EAC9C,mBAA2C;;IAE3C,IAAI,UAA4B,CAAC;IACjC,IAAI,uBAAuB,GAAG,KAAK,CAAC;IACpC,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,MAAM,oBAAoB,GAAmB,EAAE,CAAC;IAChD,IAAI,mBAAqC,CAAC;IAE1C,qCAAqC;IACrC,IAAI,mBAAmB,EAAE;QACrB,yEAAyE;QACzE,kEAAkE;QAClE,MAAM,aAAa,GAAG,iBAAiB,CACnC,SAAS,EACT,SAAS,EACT,OAAO,EACP,IAAI,EACJ,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB;QACnB,+BAA+B,CAAC,IAAI,CACvC,CAAC;QAEF,IAAI,aAAa,CAAC,cAAc,EAAE;YAC9B,cAAc,GAAG,IAAI,CAAC;SACzB;aAAM;YACH,IAAA,6BAAW,EAAC,oBAAoB,EAAE,MAAA,aAAa,CAAC,oBAAoB,mCAAI,EAAE,CAAC,CAAC;SAC/E;QAED,IAAI,aAAa,CAAC,gBAAgB,EAAE;YAChC,gBAAgB,GAAG,IAAI,CAAC;SAC3B;QAED,mBAAmB,GAAG,aAAa,CAAC,UAAU,CAAC;KAClD;IAED,IAAI,CAAC,mBAAmB,IAAI,kBAAkB,CAAC,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,IAAI,CAAC,EAAE;QACvE,gEAAgE;QAChE,+DAA+D;QAC/D,+CAA+C;QAC/C,mBAAmB,GAAG,iBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;KACzD;SAAM,IAAI,IAAA,sBAAc,EAAC,mBAAmB,CAAC,EAAE;QAC5C,wEAAwE;QACxE,wCAAwC;QACxC,mBAAmB,GAAG,IAAA,+BAAmB,EACrC,iBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,EAC/B,IAAI,+BAAc,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC,EAC3C,EAAE,iBAAiB,EAAE,IAAI,EAAE,CACjB,CAAC;KAClB;IAED,IAAI,oBAA4C,CAAC;IAEjD,iFAAiF;IACjF,IACI,CAAC,cAAc;QACf,CAAC,IAAA,eAAO,EAAC,mBAAmB,CAAC;QAC7B,CAAC,wBAAwB,CAAC,SAAS,EAAE,IAAI,EAAE,mBAAmB,CAAC;QAC/D,IAAA,uBAAe,EAAC,mBAAmB,CAAC,EACtC;QACE,8EAA8E;QAC9E,+EAA+E;QAC/E,6EAA6E;QAC7E,IAAI,oBAAoB,GAAG,mBAAmB,CAAC;QAC/C,IAAI,IAAA,2BAAe,EAAC,oBAAoB,CAAC,EAAE;YACvC,oBAAoB,GAAG,iBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;SAC1D;QAED,oEAAoE;QACpE,oBAAoB,GAAG,kBAAkB,CAAC,SAAS,EAAE,SAAS,EAAE,oBAAoB,CAAC,CAAC;QAEtF,qCAAqC;QACrC,IAAI,oBAAoB,EAAE;YACtB,MAAM,cAAc,GAAG,kBAAkB,CACrC,SAAS,EACT,SAAS,EACT,OAAO,EACP,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,CAAC,IAAI,CAC5B,CAAC;YAEF,IAAI,cAAc,CAAC,cAAc,EAAE;gBAC/B,cAAc,GAAG,IAAI,CAAC;aACzB;iBAAM,IAAI,cAAc,CAAC,oBAAoB,EAAE;gBAC5C,oBAAoB,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,oBAAoB,CAAC,CAAC;aACrE;YAED,IAAI,cAAc,CAAC,gBAAgB,EAAE;gBACjC,gBAAgB,GAAG,IAAI,CAAC;aAC3B;YAED,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC;YACvC,uBAAuB,GAAG,IAAI,CAAC;YAC/B,mBAAmB,GAAG,IAAI,CAAC;SAC9B;KACJ;IAED,IAAI,CAAC,uBAAuB,IAAI,mBAAmB,EAAE;QACjD,8EAA8E;QAC9E,4EAA4E;QAC5E,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,SAAS,CAAC,EAAE;YAC9C,iBAAiB,CACb,SAAS,EACT,SAAS,EACT,OAAO,EACP,IAAI,EACJ,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB;YACnB,+BAA+B,CAAC,KAAK,CACxC,CAAC;SACL;QAED,uBAAuB,GAAG,IAAI,CAAC;QAC/B,UAAU,GAAG,mBAAmB,CAAC;KACpC;IAED,2EAA2E;IAC3E,+DAA+D;IAC/D,IAAI,CAAC,mBAAmB,IAAI,CAAC,oBAAoB,EAAE;QAC/C,MAAM,UAAU,GAAG,+BAA+B,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;QAE1G,IAAI,UAAU,CAAC,cAAc,EAAE;YAC3B,cAAc,GAAG,IAAI,CAAC;SACzB;aAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE;YACxC,IAAA,6BAAW,EAAC,oBAAoB,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;SACtE;QAED,IAAI,UAAU,CAAC,gBAAgB,EAAE;YAC7B,gBAAgB,GAAG,IAAI,CAAC;SAC3B;QAED,UAAU,GAAG,MAAA,UAAU,CAAC,UAAU,mCAAI,mBAAW,CAAC,MAAM,EAAE,CAAC;KAC9D;IAED,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,CAAC;AAClF,CAAC;AAED,kFAAkF;AAClF,8EAA8E;AAC9E,qEAAqE;AACrE,SAAS,iBAAiB,CACtB,SAAwB,EACxB,SAAyB,EACzB,OAA2B,EAC3B,IAAe,EACf,mBAA4B,EAC5B,gBAA8C,EAC9C,mBAA+B,EAC/B,yBAAkC;IAElC,IAAI,aAA+B,CAAC;IACpC,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,MAAM,oBAAoB,GAAmB,EAAE,CAAC;IAEhD,IAAI,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,gBAAgB,EAAE;QACpC,mBAAmB,CAAC,IAAI,GAAG,IAAA,6CAAiC,EACxD,mBAAmB,CAAC,IAAI,EACxB,gBAAgB,CAAC,gBAAgB,EACjC,SAAS,CAAC,KAAK,CAClB,CAAC;KACL;IAED,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC,CAAC;IACnE,cAAc,CAAC,gBAAgB,CAAC,IAAA,6BAAiB,EAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7E,IAAI,IAAI,CAAC,aAAa,EAAE;QACpB,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;KACtE;IAED,MAAM,UAAU,GAAG,SAAS,CAAC,kBAAkB,CAAC,yBAAyB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE;QACpG,OAAO,SAAS,CAAC,qBAAqB,CAClC,SAAS,EACT,OAAO,EACP,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,gBAAgB,CACnB,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,UAAU,CAAC,gBAAgB,EAAE;QAC7B,gBAAgB,GAAG,IAAI,CAAC;KAC3B;IAED,IAAI,UAAU,CAAC,cAAc,EAAE;QAC3B,cAAc,GAAG,IAAI,CAAC;QAEtB,kFAAkF;QAClF,cAAc,CAAC,MAAM,EAAE,CAAC;QACxB,SAAS,CAAC,qBAAqB,CAAC,SAAS,EAAE,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,mBAAmB,CAAC,CAAC;KACjH;SAAM;QACH,aAAa,GAAG,UAAU,CAAC,UAAU,CAAC;QAEtC,IAAI,oBAAoB,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,oBAAoB,EAAE;YACtE,oBAAoB,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;SACjE;KACJ;IAED,IAAI,aAAa,EAAE;QACf,qEAAqE;QACrE,yBAAyB;QACzB,IAAI,IAAA,uBAAe,EAAC,aAAa,CAAC,IAAI,IAAA,wBAAY,EAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE;YACpG,IAAI,aAAa,CAAC,aAAa,IAAI,aAAa,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;gBACzE,aAAa,GAAG,IAAA,gCAAoB,EAAC,aAAa,EAAE;oBAChD,EAAE,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE;iBAC9D,CAAC,CAAC;aACN;YAED,aAAa,GAAG,oCAAoC,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;SACzF;KACJ;SAAM;QACH,aAAa,GAAG,+BAA+B,CAAC,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAC;KACtG;IAED,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,CAAC;AACjG,CAAC;AAED,SAAS,kBAAkB,CACvB,SAAwB,EACxB,SAAyB,EACzB,OAA2B,EAC3B,IAAe,EACf,mBAA4B,EAC5B,gBAA8C,EAC9C,cAAoB;IAEpB,IAAI,UAA4B,CAAC;IACjC,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,MAAM,oBAAoB,GAAmB,EAAE,CAAC;IAEhD,IAAI,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,gBAAgB,EAAE;QACpC,cAAc,GAAG,IAAA,6CAAiC,EAC9C,cAAc,EACd,gBAAgB,CAAC,gBAAgB,EACjC,SAAS,CAAC,KAAK,CAClB,CAAC;KACL;IAED,0EAA0E;IAC1E,4EAA4E;IAC5E,2EAA2E;IAC3E,kEAAkE;IAClE,gBAAgB;IAChB,IAAI,gBAAgB,EAAE;QAClB,IAAI,wBAAwB,GAAG,KAAK,CAAC;QAErC,UAAU,GAAG,IAAA,uBAAW,EACpB,gBAAgB,CAAC,YAAY,EAC7B,CAAC,eAAe,EAAE,EAAE;YAChB,mEAAmE;YACnE,gDAAgD;YAChD,IAAI,wBAAwB,EAAE;gBAC1B,OAAO,SAAS,CAAC;aACpB;YAED,eAAe,GAAG,IAAA,+CAAmC,EAAC,eAAe,CAAC,CAAC;YAEvE,mEAAmE;YACnE,iEAAiE;YACjE,kBAAkB;YAClB,IACI,IAAA,uBAAe,EAAC,eAAe,CAAC;gBAChC,iBAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,eAAe,CAAC;gBACnD,IAAI,CAAC,aAAa,EACpB;gBACE,OAAO,SAAS,CAAC;aACpB;YAED,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC,CAAC;YACnE,cAAc,CAAC,gBAAgB,CAAC,IAAA,6BAAiB,EAAC,cAAc,CAAC,CAAC,CAAC;YAEnE,IACI,IAAA,4DAAyC,EACrC,SAAS,EACT,iBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,EAC/B,eAAe,EACf,cAAc,EACd,IAAA,wCAAuB,EAAC,SAAS,CAAC,EAClC,SAAS,CAAC,KAAK,CAClB,EACH;gBACE,MAAM,sBAAsB,GAAG,IAAA,+BAAmB,EAAC,cAAc,EAAE,cAAc,CAAC,CAAC;gBAEnF,IAAI,UAAkC,CAAC;gBACvC,UAAU,GAAG,SAAS,CAAC,kBAAkB,CAAC,SAAS,EAAE,GAAG,EAAE;oBACtD,OAAO,SAAS,CAAC,qBAAqB,CAClC,SAAS,EACT,OAAO,EACP,EAAE,IAAI,EAAE,sBAAsB,EAAE,EAChC,cAAc,CAAC,KAAK,EAAE,EACtB,mBAAmB,CACtB,CAAC;gBACN,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE;oBAC5B,kEAAkE;oBAClE,oCAAoC;oBACpC,UAAU,GAAG,SAAS,CAAC,qBAAqB,CACxC,SAAS,EACT,OAAO,EACP,EAAE,IAAI,EAAE,sBAAsB,EAAE,EAChC,cAAc,EACd,mBAAmB,CACtB,CAAC;oBAEF,IAAI,UAAU,CAAC,gBAAgB,EAAE;wBAC7B,gBAAgB,GAAG,IAAI,CAAC;qBAC3B;oBAED,IAAI,UAAU,CAAC,cAAc,EAAE;wBAC3B,cAAc,GAAG,IAAI,CAAC;qBACzB;oBAED,IAAI,UAAU,CAAC,oBAAoB,EAAE;wBACjC,IAAA,6BAAW,EAAC,oBAAoB,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;qBACtE;oBAED,qDAAqD;oBACrD,wBAAwB,GAAG,IAAI,CAAC;oBAEhC,OAAO,kCAAkC,CAAC,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;iBAC/F;aACJ;YAED,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,kBAAkB,CAAC,IAAI,CAC1B,CAAC;QAEF,IAAI,IAAA,eAAO,EAAC,UAAU,CAAC,IAAI,cAAc,EAAE;YACvC,UAAU,GAAG,SAAS,CAAC;SAC1B;KACJ;IAED,IAAI,CAAC,UAAU,EAAE;QACb,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa;YACrC,CAAC,CAAC,IAAA,mDAAuC,EAAC,IAAI,CAAC;YAC/C,CAAC,CAAC,IAAI,+BAAc,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC,CAAC;QAElD,cAAc,CAAC,gBAAgB,CAAC,IAAA,6BAAiB,EAAC,cAAc,CAAC,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,SAAS,CAAC,qBAAqB,CAC9C,SAAS,EACT,OAAO,EACP,EAAE,IAAI,EAAE,cAAc,EAAE,EACxB,cAAc,EACd,mBAAmB,CACtB,CAAC;QAEF,IAAI,iBAAiB,GAAG,IAAI,CAAC;QAC7B,IACI,UAAU,CAAC,uBAAuB;YAClC,IAAA,uBAAe,EAAC,UAAU,CAAC,uBAAuB,CAAC;YACnD,iBAAS,CAAC,kBAAkB,CAAC,UAAU,CAAC,uBAAuB,EAAE,iBAAiB,CAAC,EACrF;YACE,iBAAiB,GAAG,iBAAS,CAAC,mBAAmB,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;SACzF;QAED,UAAU,GAAG,+BAA+B,CACxC,SAAS,EACT,iBAAiB;QACjB,sBAAsB,CAAC,SAAS,EAChC,cAAc,CACjB,CAAC;QAEF,IAAI,UAAU,CAAC,gBAAgB,EAAE;YAC7B,gBAAgB,GAAG,IAAI,CAAC;SAC3B;QAED,IAAI,UAAU,CAAC,cAAc,EAAE;YAC3B,cAAc,GAAG,IAAI,CAAC;SACzB;aAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE;YACxC,oBAAoB,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;SACjE;KACJ;IAED,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,CAAC;AAClF,CAAC;AAED,SAAS,+BAA+B,CACpC,SAAwB,EACxB,SAAyB,EACzB,OAA2B,EAC3B,IAAe,EACf,gBAA8C;IAE9C,IAAI,cAAc,GAAG,KAAK,CAAC;IAE3B,wEAAwE;IACxE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,gBAAgB,mBAA4B,CAAC,EAAE;QAC/F,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YACzB,MAAM,QAAQ,GAAG,IAAA,8BAAW,EAAC,SAAS,CAAC,CAAC;YACxC,SAAS,CAAC,aAAa,CACnB,QAAQ,CAAC,iBAAiB,CAAC,uBAAuB,EAClD,gCAAc,CAAC,uBAAuB,EACtC,oBAAS,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,EAC9F,SAAS,CACZ,CAAC;YACF,cAAc,GAAG,IAAI,CAAC;SACzB;KACJ;IAED,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,aAAa,EAAE;QACzC,sEAAsE;QACtE,sEAAsE;QACtE,OAAO;YACH,cAAc,EAAE,cAAc;YAC9B,oBAAoB,EAAE,EAAE;YACxB,UAAU,EAAE,IAAA,6BAAiB,EAAC,IAAI,CAAC;SACtC,CAAC;KACL;IAED,yEAAyE;IACzE,oBAAoB;IACpB,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC,CAAC;IAEnE,IAAI,gBAAgB,EAAE;QAClB,IAAA,4DAAyC,EACrC,SAAS,EACT,iBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,EAC/B,gBAAgB,CAAC,YAAY,EAC7B,cAAc,EACd,IAAA,wCAAuB,EAAC,SAAS,CAAC,EAClC,SAAS,CAAC,KAAK,CAClB,CAAC;KACL;IAED,OAAO;QACH,cAAc,EAAE,cAAc;QAC9B,oBAAoB,EAAE,EAAE;QACxB,UAAU,EAAE,+BAA+B,CAAC,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,CAAC;KACjG,CAAC;AACN,CAAC;AAED,SAAS,qBAAqB,CAC1B,SAAwB,EACxB,SAAyB,EACzB,OAA2B,EAC3B,IAAe,EACf,mBAA4B,EAC5B,gBAA8C;IAE9C,MAAM,uBAAuB,GAAG,kBAAkB,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAE/E,IAAI,uBAAuB,EAAE;QACzB,MAAM,UAAU,GAAG,SAAS,CAAC,qBAAqB,CAC9C,SAAS,EACT,OAAO,EACP,uBAAuB;QACvB,oBAAoB,CAAC,SAAS,EAC9B,mBAAmB,EACnB,gBAAgB,CACnB,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,UAAU,IAAI,IAAA,iBAAS,EAAC,UAAU,CAAC,UAAU,CAAC,EAAE;YAC5D,gEAAgE;YAChE,gEAAgE;YAChE,mBAAmB;YACnB,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC,CAAC;YACnE,UAAU,CAAC,UAAU,GAAG,+BAA+B,CAAC,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAC;SAC9G;QAED,OAAO,UAAU,CAAC;KACrB;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,SAAS,kCAAkC,CACvC,SAAwB,EACxB,IAAe,EACf,eAAqB,EACrB,cAA8B;IAE9B,MAAM,eAAe,GAAG,IAAA,+BAAmB,EAAC,iBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE;QACzF,wBAAwB,EAAE,IAAI;KACjC,CAAC,CAAC;IAEH,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,EAAE,eAAe,CAAC,EAAE;QACzD,OAAO,SAAS,CAAC;KACpB;IAED,yDAAyD;IACzD,IAAI,IAAA,aAAK,EAAC,eAAe,CAAC,EAAE;QACxB,OAAO,eAAe,CAAC;KAC1B;IAED,OAAO,eAAe,CAAC;AAC3B,CAAC;AAED,sEAAsE;AACtE,wEAAwE;AACxE,SAAS,+BAA+B,CACpC,SAAwB,EACxB,IAAe,EACf,gBAA8C,EAC9C,cAA8B;IAE9B,IAAI,0BAA0B,GAAG,IAAI,CAAC;IAEtC,oEAAoE;IACpE,8DAA8D;IAC9D,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE;QAChE,OAAO,iBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;KAC1C;IAED,IAAI,gBAAgB,EAAE;QAClB,MAAM,uBAAuB,GAAG,IAAA,uBAAW,EAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC,eAAe,EAAE,EAAE;YAC3F,OAAO,kCAAkC,CAAC,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;QAChG,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAA,eAAO,EAAC,uBAAuB,CAAC,EAAE;YACnC,OAAO,uBAAuB,CAAC;SAClC;QAED,gEAAgE;QAChE,kEAAkE;QAClE,+CAA+C;QAC/C,IAAI,IAAI,CAAC,aAAa,EAAE;YACpB,0BAA0B,GAAG,KAAK,CAAC;SACtC;KACJ;IAED,MAAM,eAAe,GAAG,IAAA,+BAAmB,EAAC,IAAI,EAAE,cAAc,EAAE;QAC9D,iBAAiB,EAAE,0BAA0B;KAChD,CAAc,CAAC;IAChB,OAAO,iBAAS,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;AACtD,CAAC;AAED,wEAAwE;AACxE,mCAAmC;AACnC,SAAS,oCAAoC,CAAC,IAAe,EAAE,gBAA8C;IACzG,IAAI,eAAe,GAAG,IAAI,CAAC;IAE3B,IACI,gBAAgB;QAChB,IAAA,uBAAe,EAAC,gBAAgB,CAAC,YAAY,CAAC;QAC9C,IAAA,wBAAY,EAAC,gBAAgB,CAAC,YAAY,CAAC;QAC3C,gBAAgB,CAAC,YAAY,CAAC,kBAAkB,EAClD;QACE,eAAe,GAAG,IAAA,gCAAoB,EAAC,IAAI,EAAE,gBAAgB,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;KAClG;IAED,OAAO,eAAe,CAAC;AAC3B,CAAC;AAED,uEAAuE;AACvE,8DAA8D;AAC9D,SAAgB,6BAA6B,CACzC,SAAwB,EACxB,SAAoB,EACpB,WAAgD,SAAS,EACzD,cAAc,GAAG,CAAC;IAElB,oEAAoE;IACpE,MAAM,QAAQ,GAAG,IAAA,6BAAiB,EAC9B,SAAS,EACT,UAAU,EACV;6CACiD;mCACR,CAC5C,CAAC;IAEF,IAAI,QAAQ,EAAE;QACV,MAAM,QAAQ,GAAG,SAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACrD,MAAM,UAAU,GAAG,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAExD,SAAS,wBAAwB,CAAC,WAAyB;YACvD,IAAI,mBAAmB,GAAG,SAAS,CAAC,2BAA2B,CAC3D,UAAU,EACV,WAAW;YACX,iBAAiB,CAAC,SAAS;YAC3B,mCAAmC,CAAC,SAAS,EAC7C,QAAQ;YACR,UAAU,CAAC,SAAS,EACpB,cAAc,CACW,CAAC;YAE9B,IAAI,mBAAmB,EAAE;gBACrB,mBAAmB,GAAG,oBAAY,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBAC9D,mBAAmB,CAAC,OAAO,CAAC,kBAAkB,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,UAAU,CAAC;gBACxE,mBAAmB,CAAC,OAAO,CAAC,IAAI,GAAG,EAAE,CAAC;gBACtC,mBAAmB,CAAC,OAAO,CAAC,QAAQ,GAAG,EAAE,CAAC;gBAE1C,IAAI,mBAAmB,CAAC,gBAAgB,EAAE;oBACtC,mBAAmB,CAAC,gBAAgB,CAAC,UAAU,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,UAAU,CAAC;iBAC5E;gBAED,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,SAAS,IAAI,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE;oBACvE,mBAAmB,CAAC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC;iBACvE;gBAED,mBAAmB,CAAC,OAAO,CAAC,KAAK,IAAI,qBAA+B,CAAC;gBACrE,mBAAmB,CAAC,OAAO,CAAC,yBAAyB,GAAG,IAAA,6BAAiB,EAAC,SAAS,CAAC,CAAC;aACxF;YAED,OAAO,mBAAmB,CAAC;QAC/B,CAAC;QAED,IAAI,IAAA,kBAAU,EAAC,QAAQ,CAAC,EAAE;YACtB,OAAO,wBAAwB,CAAC,QAAQ,CAAC,CAAC;SAC7C;QAED,IAAI,IAAA,4BAAoB,EAAC,QAAQ,CAAC,EAAE;YAChC,MAAM,aAAa,GAAmB,EAAE,CAAC;YACzC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACpC,MAAM,SAAS,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;gBACrD,IAAI,SAAS,EAAE;oBACX,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBACjC;YACL,CAAC,CAAC,CAAC;YAEH,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC5B,OAAO,SAAS,CAAC;aACpB;YAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC5B,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC;aAC3B;YAED,OAAO,8BAAsB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;SACvD;KACJ;IAED,+DAA+D;IAC/D,MAAM,OAAO,GAAG,IAAA,6BAAiB,EAC7B,SAAS,EACT,SAAS,EACT;6CACiD;mCACR,CAC5C,CAAC;IAEF,IAAI,OAAO,EAAE;QACT,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAEnD,MAAM,uBAAuB,GAAG,CAAC,UAAwB,EAAE,EAAE;YACzD,IAAI,mBAAmB,GAAG,SAAS,CAAC,2BAA2B,CAC3D,SAAS,EACT,UAAU;YACV,iBAAiB,CAAC,SAAS;YAC3B,mCAAmC,CAAC,IAAI,EACxC,QAAQ;YACR,UAAU,CAAC,SAAS,EACpB,cAAc,CACW,CAAC;YAE9B,IAAI,mBAAmB,EAAE;gBACrB,mBAAmB,GAAG,oBAAY,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBAC9D,mBAAmB,CAAC,OAAO,CAAC,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC;gBAE/E,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,SAAS,IAAI,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE;oBACvE,mBAAmB,CAAC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC;iBACvE;gBAED,mBAAmB,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,CAClC,gDAAoE,CACvE,CAAC;gBACF,mBAAmB,CAAC,OAAO,CAAC,yBAAyB,GAAG,IAAA,6BAAiB,EAAC,SAAS,CAAC,CAAC;aACxF;YAED,OAAO,mBAAmB,CAAC;QAC/B,CAAC,CAAC;QAEF,IAAI,IAAA,kBAAU,EAAC,OAAO,CAAC,EAAE;YACrB,OAAO,uBAAuB,CAAC,OAAO,CAAC,CAAC;SAC3C;QAED,IAAI,IAAA,4BAAoB,EAAC,OAAO,CAAC,EAAE;YAC/B,MAAM,YAAY,GAAmB,EAAE,CAAC;YACxC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACnC,MAAM,SAAS,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;gBACpD,IAAI,SAAS,EAAE;oBACX,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBAChC;YACL,CAAC,CAAC,CAAC;YAEH,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC3B,OAAO,SAAS,CAAC;aACpB;YAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC3B,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;aAC1B;YAED,OAAO,8BAAsB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;SACtD;KACJ;IAED,oEAAoE;IACpE,MAAM,mBAAmB,GAAG,oBAAY,CAAC,yBAAyB,CAAC,SAAS,eAAyB,CAAC;IACtG,mBAAmB,CAAC,OAAO,CAAC,kBAAkB,GAAG,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAEtF,+EAA+E;IAC/E,qDAAqD;IACrD,IAAI,SAAS,CAAC,iBAAiB,IAAI,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;QACrE,oBAAY,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,CAAC;KAC1D;IAED,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,SAAS,IAAI,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE;QACvE,mBAAmB,CAAC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC;KACvE;IAED,OAAO,mBAAmB,CAAC;AAC/B,CAAC;AA5JD,sEA4JC;AAED,2EAA2E;AAC3E,0EAA0E;AAC1E,kCAAkC;AAClC,SAAS,wBAAwB,CAAC,SAAwB,EAAE,SAAoB,EAAE,mBAAyB;IACvG,MAAM,UAAU,GAAG,SAAS,CAAC,4BAA4B,CAAC,mBAAmB,CAAC,CAAC;IAE/E,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAA,4BAAgB,EAAC,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;QACrC,IAAI,IAAA,sBAAc,EAAC,OAAO,CAAC,EAAE;YACzB,OAAO;SACV;QAED,IAAI,IAAA,uBAAe,EAAC,OAAO,CAAC,EAAE;YAC1B,MAAM,gBAAgB,GAAqB,EAAE,CAAC;YAC9C,MAAM,aAAa,GAAG,iBAAS,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;YAEpF,IAAI,CAAC,aAAa,EAAE;gBAChB,aAAa,GAAG,IAAI,CAAC;aACxB;YAED,OAAO;SACV;QAED,aAAa,GAAG,IAAI,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,OAAO,aAAa,CAAC;AACzB,CAAC;AAED,oEAAoE;AACpE,kDAAkD;AAClD,SAAS,kBAAkB,CAAC,SAAgB;;IACxC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAA,kBAAU,EAAC,SAAS,CAAC,EAAE;QACtC,OAAO,KAAK,CAAC;KAChB;IAED,IAAI,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE;QAC7B,OAAO,KAAK,CAAC;KAChB;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC;IAC5C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;QACrB,OAAO,KAAK,CAAC;KAChB;IAED,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,qBAA+B,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,uBAAiC,EAAE;QAC1G,OAAO,KAAK,CAAC;KAChB;IAED,MAAM,UAAU,GAAG,MAAA,SAAS,CAAC,OAAO,CAAC,kBAAkB,mCAAI,SAAS,CAAC,kBAAkB,CAAC;IACxF,IAAI,CAAC,UAAU,IAAI,CAAC,IAAA,iBAAS,EAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,iBAAiB,EAAE;QAChF,OAAO,KAAK,CAAC;KAChB;IAED,OAAO,IAAI,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"constructors.js","sourceRoot":"","sources":["../../../src/analyzer/constructors.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;AAEH,+DAAwD;AACxD,+DAA2D;AAC3D,uDAAqD;AAErD,yDAAiD;AACjD,yDAA+E;AAC/E,iEAA4F;AAC5F,qDAA2D;AAE3D,2CAeqB;AACrB,qDAAkD;AAClD,mCAkBiB;AAEjB,qDAAqD;AACrD,SAAgB,iBAAiB,CAC7B,SAAwB,EACxB,SAAyB,EACzB,IAAe,EACf,cAAc,GAAG,IAAI;IAErB,IAAI,KAAK,GACL;+DAC6C;iEACE,CAAC;IACpD,IAAI,cAAc,EAAE;QAChB,KAAK,iDAAyC,CAAC;KAClD;IAED,OAAO,SAAS,CAAC,oBAAoB,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AACtH,CAAC;AAfD,8CAeC;AAED,+DAA+D;AAC/D,SAAgB,kBAAkB,CAC9B,SAAwB,EACxB,SAAyB,EACzB,IAAe,EACf,cAAc,GAAG,IAAI;IAErB,IAAI,KAAK,GAAG,wGAAqF,CAAC;IAClG,IAAI,cAAc,EAAE;QAChB,KAAK,iDAAyC,CAAC;KAClD;IAED,OAAO,SAAS,CAAC,oBAAoB,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AACvH,CAAC;AAZD,gDAYC;AAED,uEAAuE;AACvE,SAAgB,kBAAkB,CAAC,SAAwB,EAAE,SAAyB,EAAE,IAAe;IACnG,OAAO,SAAS,CAAC,oBAAoB,CACjC,SAAS,EACT,IAAI,EACJ,UAAU,EACV,EAAE,MAAM,EAAE,KAAK,EAAE;IACjB,UAAU,CAAC,SAAS,EACpB;mDACuC;+DACU,CACpD,CAAC;AACN,CAAC;AAXD,gDAWC;AAED,kEAAkE;AAClE,yEAAyE;AACzE,4EAA4E;AAC5E,SAAgB,4BAA4B,CACxC,SAAwB,EACxB,SAAyB,EACzB,OAA2B,EAC3B,IAAe,EACf,mBAA4B,EAC5B,gBAA8C;;IAE9C,MAAM,eAAe,GAAG,qBAAqB,CACzC,SAAS,EACT,SAAS,EACT,OAAO,EACP,IAAI,EACJ,mBAAmB,EACnB,gBAAgB,CACnB,CAAC;IAEF,IAAI,eAAe,EAAE;QACjB,MAAM,mBAAmB,GAAG,MAAA,eAAe,CAAC,UAAU,mCAAI,mBAAW,CAAC,MAAM,EAAE,CAAC;QAE/E,oEAAoE;QACpE,uEAAuE;QACvE,yEAAyE;QACzE,mCAAmC;QACnC,IAAI,eAAe,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,EAAE,mBAAmB,CAAC,EAAE;YACvG,OAAO,eAAe,CAAC;SAC1B;KACJ;IAED,mEAAmE;IACnE,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAC1E,MAAM,uBAAuB,GAAG,IAAA,8CAAuB,EAAC,IAAI,CAAC,CAAC;IAE9D,4EAA4E;IAC5E,oEAAoE;IACpE,IAAI,YAAY,GAAG,SAAS,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE;QAClG,OAAO,yBAAyB,CAC5B,SAAS,EACT,SAAS,EACT,OAAO,EACP,IAAI,EACJ,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,CACtB,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,uBAAuB,GAAG,CAAC,uBAAuB,IAAI,YAAY,CAAC,cAAc,CAAC;IAEtF,+CAA+C;IAC/C,IAAI,uBAAuB,EAAE;QACzB,IAAI,YAAY,CAAC,cAAc,EAAE;YAC7B,yEAAyE;YACzE,0EAA0E;YAC1E,8CAA8C;YAC9C,yBAAyB,CACrB,SAAS,EACT,SAAS,EACT,OAAO,EACP,IAAI,EACJ,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,CACtB,CAAC;YAEF,uBAAuB,GAAG,IAAI,CAAC;SAClC;aAAM,IAAI,YAAY,CAAC,UAAU,EAAE;YAChC,MAAM,WAAW,GAAG,IAAA,gDAAyB,EAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE;gBAC/E,cAAc,EAAE,CAAC,CAAC,YAAY,CAAC,cAAc;gBAC7C,UAAU,EAAE,YAAY,CAAC,UAAU;gBACnC,gBAAgB,EAAE,CAAC,CAAC,YAAY,CAAC,gBAAgB;aACpD,CAAC,CAAC;YAEH,YAAY,CAAC,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC;YAEjD,IAAI,WAAW,CAAC,gBAAgB,EAAE;gBAC9B,YAAY,CAAC,gBAAgB,GAAG,IAAI,CAAC;aACxC;YAED,IAAI,WAAW,CAAC,cAAc,EAAE;gBAC5B,YAAY,CAAC,cAAc,GAAG,IAAI,CAAC;aACtC;YAED,uBAAuB,GAAG,IAAI,CAAC;SAClC;KACJ;IAED,wEAAwE;IACxE,sEAAsE;IACtE,IAAI,CAAC,uBAAuB,EAAE;QAC1B,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACpB,IAAI,GAAG,CAAC,eAAe,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE;gBAC/E,SAAS,CAAC,mBAAmB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;aACtD;QACL,CAAC,CAAC,CAAC;KACN;IAED,4EAA4E;IAC5E,2EAA2E;IAC3E,iDAAiD;IACjD,IAAI,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,UAAU,EAAE;QAC7B,iFAAiF;QACjF,yCAAyC;QACzC,IAAI,CAAC,YAAY,CAAC,UAAU,IAAI,IAAA,sBAAc,EAAC,YAAY,CAAC,UAAU,CAAC,EAAE;YACrE,IAAI,CAAC,IAAA,sBAAc,EAAC,eAAe,CAAC,UAAU,CAAC,EAAE;gBAC7C,YAAY,GAAG,EAAE,GAAG,YAAY,EAAE,UAAU,EAAE,eAAe,CAAC,UAAU,EAAE,CAAC;aAC9E;SACJ;aAAM,IAAI,YAAY,CAAC,UAAU,IAAI,IAAA,eAAO,EAAC,YAAY,CAAC,UAAU,CAAC,EAAE;YACpE,YAAY,GAAG,EAAE,GAAG,YAAY,EAAE,UAAU,EAAE,eAAe,CAAC,UAAU,EAAE,CAAC;SAC9E;KACJ;IAED,OAAO,YAAY,CAAC;AACxB,CAAC;AAjHD,oEAiHC;AAED,SAAS,yBAAyB,CAC9B,SAAwB,EACxB,SAAyB,EACzB,OAA2B,EAC3B,IAAe,EACf,mBAA4B,EAC5B,gBAA8C,EAC9C,mBAA2C;;IAE3C,IAAI,UAA4B,CAAC;IACjC,IAAI,uBAAuB,GAAG,KAAK,CAAC;IACpC,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,MAAM,oBAAoB,GAAmB,EAAE,CAAC;IAChD,IAAI,mBAAqC,CAAC;IAE1C,qCAAqC;IACrC,IAAI,mBAAmB,EAAE;QACrB,yEAAyE;QACzE,kEAAkE;QAClE,MAAM,aAAa,GAAG,iBAAiB,CACnC,SAAS,EACT,SAAS,EACT,OAAO,EACP,IAAI,EACJ,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB;QACnB,+BAA+B,CAAC,IAAI,CACvC,CAAC;QAEF,IAAI,aAAa,CAAC,cAAc,EAAE;YAC9B,cAAc,GAAG,IAAI,CAAC;SACzB;aAAM;YACH,IAAA,6BAAW,EAAC,oBAAoB,EAAE,MAAA,aAAa,CAAC,oBAAoB,mCAAI,EAAE,CAAC,CAAC;SAC/E;QAED,IAAI,aAAa,CAAC,gBAAgB,EAAE;YAChC,gBAAgB,GAAG,IAAI,CAAC;SAC3B;QAED,mBAAmB,GAAG,aAAa,CAAC,UAAU,CAAC;KAClD;IAED,IAAI,CAAC,mBAAmB,IAAI,kBAAkB,CAAC,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,IAAI,CAAC,EAAE;QACvE,gEAAgE;QAChE,+DAA+D;QAC/D,+CAA+C;QAC/C,mBAAmB,GAAG,iBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;KACzD;SAAM,IAAI,IAAA,sBAAc,EAAC,mBAAmB,CAAC,EAAE;QAC5C,wEAAwE;QACxE,wCAAwC;QACxC,mBAAmB,GAAG,IAAA,+BAAmB,EACrC,iBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,EAC/B,IAAI,+BAAc,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC,EAC3C,EAAE,iBAAiB,EAAE,IAAI,EAAE,CACjB,CAAC;KAClB;IAED,IAAI,oBAA4C,CAAC;IAEjD,iFAAiF;IACjF,IACI,CAAC,cAAc;QACf,CAAC,IAAA,eAAO,EAAC,mBAAmB,CAAC;QAC7B,CAAC,wBAAwB,CAAC,SAAS,EAAE,IAAI,EAAE,mBAAmB,CAAC;QAC/D,IAAA,uBAAe,EAAC,mBAAmB,CAAC,EACtC;QACE,8EAA8E;QAC9E,+EAA+E;QAC/E,6EAA6E;QAC7E,IAAI,oBAAoB,GAAG,mBAAmB,CAAC;QAC/C,IAAI,IAAA,2BAAe,EAAC,oBAAoB,CAAC,EAAE;YACvC,oBAAoB,GAAG,iBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;SAC1D;QAED,oEAAoE;QACpE,oBAAoB,GAAG,kBAAkB,CAAC,SAAS,EAAE,SAAS,EAAE,oBAAoB,CAAC,CAAC;QAEtF,qCAAqC;QACrC,IAAI,oBAAoB,EAAE;YACtB,MAAM,cAAc,GAAG,kBAAkB,CACrC,SAAS,EACT,SAAS,EACT,OAAO,EACP,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,CAAC,IAAI,CAC5B,CAAC;YAEF,IAAI,cAAc,CAAC,cAAc,EAAE;gBAC/B,cAAc,GAAG,IAAI,CAAC;aACzB;iBAAM,IAAI,cAAc,CAAC,oBAAoB,EAAE;gBAC5C,oBAAoB,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,oBAAoB,CAAC,CAAC;aACrE;YAED,IAAI,cAAc,CAAC,gBAAgB,EAAE;gBACjC,gBAAgB,GAAG,IAAI,CAAC;aAC3B;YAED,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC;YACvC,uBAAuB,GAAG,IAAI,CAAC;YAC/B,mBAAmB,GAAG,IAAI,CAAC;SAC9B;KACJ;IAED,IAAI,CAAC,uBAAuB,IAAI,mBAAmB,EAAE;QACjD,8EAA8E;QAC9E,4EAA4E;QAC5E,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,SAAS,CAAC,EAAE;YAC9C,iBAAiB,CACb,SAAS,EACT,SAAS,EACT,OAAO,EACP,IAAI,EACJ,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB;YACnB,+BAA+B,CAAC,KAAK,CACxC,CAAC;SACL;QAED,uBAAuB,GAAG,IAAI,CAAC;QAC/B,UAAU,GAAG,mBAAmB,CAAC;KACpC;IAED,2EAA2E;IAC3E,+DAA+D;IAC/D,IAAI,CAAC,mBAAmB,IAAI,CAAC,oBAAoB,EAAE;QAC/C,MAAM,UAAU,GAAG,+BAA+B,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;QAE1G,IAAI,UAAU,CAAC,cAAc,EAAE;YAC3B,cAAc,GAAG,IAAI,CAAC;SACzB;aAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE;YACxC,IAAA,6BAAW,EAAC,oBAAoB,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;SACtE;QAED,IAAI,UAAU,CAAC,gBAAgB,EAAE;YAC7B,gBAAgB,GAAG,IAAI,CAAC;SAC3B;QAED,UAAU,GAAG,MAAA,UAAU,CAAC,UAAU,mCAAI,mBAAW,CAAC,MAAM,EAAE,CAAC;KAC9D;IAED,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,CAAC;AAClF,CAAC;AAED,kFAAkF;AAClF,8EAA8E;AAC9E,qEAAqE;AACrE,SAAS,iBAAiB,CACtB,SAAwB,EACxB,SAAyB,EACzB,OAA2B,EAC3B,IAAe,EACf,mBAA4B,EAC5B,gBAA8C,EAC9C,mBAA+B,EAC/B,yBAAkC;IAElC,IAAI,aAA+B,CAAC;IACpC,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,MAAM,oBAAoB,GAAmB,EAAE,CAAC;IAEhD,IAAI,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,gBAAgB,EAAE;QACpC,mBAAmB,CAAC,IAAI,GAAG,IAAA,6CAAiC,EACxD,mBAAmB,CAAC,IAAI,EACxB,gBAAgB,CAAC,gBAAgB,EACjC,SAAS,CAAC,KAAK,CAClB,CAAC;KACL;IAED,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC,CAAC;IACnE,cAAc,CAAC,gBAAgB,CAAC,IAAA,6BAAiB,EAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7E,IAAI,IAAI,CAAC,aAAa,EAAE;QACpB,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;KACtE;IAED,MAAM,UAAU,GAAG,SAAS,CAAC,kBAAkB,CAAC,yBAAyB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE;QACpG,OAAO,SAAS,CAAC,qBAAqB,CAClC,SAAS,EACT,OAAO,EACP,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,gBAAgB,CACnB,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,UAAU,CAAC,gBAAgB,EAAE;QAC7B,gBAAgB,GAAG,IAAI,CAAC;KAC3B;IAED,IAAI,UAAU,CAAC,cAAc,EAAE;QAC3B,cAAc,GAAG,IAAI,CAAC;QAEtB,kFAAkF;QAClF,cAAc,CAAC,MAAM,EAAE,CAAC;QACxB,SAAS,CAAC,qBAAqB,CAAC,SAAS,EAAE,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,mBAAmB,CAAC,CAAC;KACjH;SAAM;QACH,aAAa,GAAG,UAAU,CAAC,UAAU,CAAC;QAEtC,IAAI,oBAAoB,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,oBAAoB,EAAE;YACtE,oBAAoB,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;SACjE;KACJ;IAED,IAAI,aAAa,EAAE;QACf,qEAAqE;QACrE,yBAAyB;QACzB,IAAI,IAAA,uBAAe,EAAC,aAAa,CAAC,IAAI,IAAA,wBAAY,EAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE;YACpG,IAAI,aAAa,CAAC,aAAa,IAAI,aAAa,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;gBACzE,aAAa,GAAG,IAAA,gCAAoB,EAAC,aAAa,EAAE;oBAChD,EAAE,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE;iBAC9D,CAAC,CAAC;aACN;YAED,aAAa,GAAG,oCAAoC,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;SACzF;KACJ;SAAM;QACH,aAAa,GAAG,+BAA+B,CAAC,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAC;KACtG;IAED,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,CAAC;AACjG,CAAC;AAED,SAAS,kBAAkB,CACvB,SAAwB,EACxB,SAAyB,EACzB,OAA2B,EAC3B,IAAe,EACf,mBAA4B,EAC5B,gBAA8C,EAC9C,cAAoB;IAEpB,IAAI,UAA4B,CAAC;IACjC,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,MAAM,oBAAoB,GAAmB,EAAE,CAAC;IAEhD,IAAI,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,gBAAgB,EAAE;QACpC,cAAc,GAAG,IAAA,6CAAiC,EAC9C,cAAc,EACd,gBAAgB,CAAC,gBAAgB,EACjC,SAAS,CAAC,KAAK,CAClB,CAAC;KACL;IAED,0EAA0E;IAC1E,4EAA4E;IAC5E,2EAA2E;IAC3E,kEAAkE;IAClE,gBAAgB;IAChB,IAAI,gBAAgB,EAAE;QAClB,IAAI,wBAAwB,GAAG,KAAK,CAAC;QAErC,UAAU,GAAG,IAAA,uBAAW,EACpB,gBAAgB,CAAC,YAAY,EAC7B,CAAC,eAAe,EAAE,EAAE;YAChB,mEAAmE;YACnE,gDAAgD;YAChD,IAAI,wBAAwB,EAAE;gBAC1B,OAAO,SAAS,CAAC;aACpB;YAED,eAAe,GAAG,IAAA,+CAAmC,EAAC,eAAe,CAAC,CAAC;YAEvE,mEAAmE;YACnE,iEAAiE;YACjE,kBAAkB;YAClB,IACI,IAAA,uBAAe,EAAC,eAAe,CAAC;gBAChC,iBAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,eAAe,CAAC;gBACnD,IAAI,CAAC,aAAa,EACpB;gBACE,OAAO,SAAS,CAAC;aACpB;YAED,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC,CAAC;YACnE,cAAc,CAAC,gBAAgB,CAAC,IAAA,6BAAiB,EAAC,cAAc,CAAC,CAAC,CAAC;YAEnE,IACI,IAAA,4DAAyC,EACrC,SAAS,EACT,iBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,EAC/B,eAAe,EACf,cAAc,EACd,IAAA,wCAAuB,EAAC,SAAS,CAAC,EAClC,SAAS,CAAC,KAAK,CAClB,EACH;gBACE,MAAM,sBAAsB,GAAG,IAAA,+BAAmB,EAAC,cAAc,EAAE,cAAc,CAAC,CAAC;gBAEnF,IAAI,UAAkC,CAAC;gBACvC,UAAU,GAAG,SAAS,CAAC,kBAAkB,CAAC,SAAS,EAAE,GAAG,EAAE;oBACtD,OAAO,SAAS,CAAC,qBAAqB,CAClC,SAAS,EACT,OAAO,EACP,EAAE,IAAI,EAAE,sBAAsB,EAAE,EAChC,cAAc,CAAC,KAAK,EAAE,EACtB,mBAAmB,CACtB,CAAC;gBACN,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE;oBAC5B,kEAAkE;oBAClE,oCAAoC;oBACpC,UAAU,GAAG,SAAS,CAAC,qBAAqB,CACxC,SAAS,EACT,OAAO,EACP,EAAE,IAAI,EAAE,sBAAsB,EAAE,EAChC,cAAc,EACd,mBAAmB,CACtB,CAAC;oBAEF,IAAI,UAAU,CAAC,gBAAgB,EAAE;wBAC7B,gBAAgB,GAAG,IAAI,CAAC;qBAC3B;oBAED,IAAI,UAAU,CAAC,cAAc,EAAE;wBAC3B,cAAc,GAAG,IAAI,CAAC;qBACzB;oBAED,IAAI,UAAU,CAAC,oBAAoB,EAAE;wBACjC,IAAA,6BAAW,EAAC,oBAAoB,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;qBACtE;oBAED,qDAAqD;oBACrD,wBAAwB,GAAG,IAAI,CAAC;oBAEhC,OAAO,kCAAkC,CAAC,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;iBAC/F;aACJ;YAED,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,kBAAkB,CAAC,IAAI,CAC1B,CAAC;QAEF,IAAI,IAAA,eAAO,EAAC,UAAU,CAAC,IAAI,cAAc,EAAE;YACvC,UAAU,GAAG,SAAS,CAAC;SAC1B;KACJ;IAED,IAAI,CAAC,UAAU,EAAE;QACb,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa;YACrC,CAAC,CAAC,IAAA,mDAAuC,EAAC,IAAI,CAAC;YAC/C,CAAC,CAAC,IAAI,+BAAc,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC,CAAC;QAElD,cAAc,CAAC,gBAAgB,CAAC,IAAA,6BAAiB,EAAC,cAAc,CAAC,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,SAAS,CAAC,qBAAqB,CAC9C,SAAS,EACT,OAAO,EACP,EAAE,IAAI,EAAE,cAAc,EAAE,EACxB,cAAc,EACd,mBAAmB,CACtB,CAAC;QAEF,IAAI,iBAAiB,GAAG,IAAI,CAAC;QAC7B,IACI,UAAU,CAAC,uBAAuB;YAClC,IAAA,uBAAe,EAAC,UAAU,CAAC,uBAAuB,CAAC;YACnD,iBAAS,CAAC,kBAAkB,CAAC,UAAU,CAAC,uBAAuB,EAAE,iBAAiB,CAAC,EACrF;YACE,iBAAiB,GAAG,iBAAS,CAAC,mBAAmB,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;SACzF;QAED,UAAU,GAAG,+BAA+B,CACxC,SAAS,EACT,iBAAiB;QACjB,sBAAsB,CAAC,SAAS,EAChC,cAAc,CACjB,CAAC;QAEF,IAAI,UAAU,CAAC,gBAAgB,EAAE;YAC7B,gBAAgB,GAAG,IAAI,CAAC;SAC3B;QAED,IAAI,UAAU,CAAC,cAAc,EAAE;YAC3B,cAAc,GAAG,IAAI,CAAC;SACzB;aAAM,IAAI,UAAU,CAAC,oBAAoB,EAAE;YACxC,oBAAoB,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;SACjE;KACJ;IAED,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,CAAC;AAClF,CAAC;AAED,SAAS,+BAA+B,CACpC,SAAwB,EACxB,SAAyB,EACzB,OAA2B,EAC3B,IAAe,EACf,gBAA8C;IAE9C,IAAI,cAAc,GAAG,KAAK,CAAC;IAE3B,wEAAwE;IACxE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,gBAAgB,oCAA4B,CAAC,EAAE;QAC/F,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YACzB,MAAM,QAAQ,GAAG,IAAA,8BAAW,EAAC,SAAS,CAAC,CAAC;YACxC,SAAS,CAAC,aAAa,CACnB,QAAQ,CAAC,iBAAiB,CAAC,uBAAuB,EAClD,gCAAc,CAAC,uBAAuB,EACtC,oBAAS,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,EAC9F,SAAS,CACZ,CAAC;YACF,cAAc,GAAG,IAAI,CAAC;SACzB;KACJ;IAED,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,aAAa,EAAE;QACzC,sEAAsE;QACtE,sEAAsE;QACtE,OAAO;YACH,cAAc,EAAE,cAAc;YAC9B,oBAAoB,EAAE,EAAE;YACxB,UAAU,EAAE,IAAA,6BAAiB,EAAC,IAAI,CAAC;SACtC,CAAC;KACL;IAED,yEAAyE;IACzE,oBAAoB;IACpB,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC,CAAC;IAEnE,IAAI,gBAAgB,EAAE;QAClB,IAAA,4DAAyC,EACrC,SAAS,EACT,iBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,EAC/B,gBAAgB,CAAC,YAAY,EAC7B,cAAc,EACd,IAAA,wCAAuB,EAAC,SAAS,CAAC,EAClC,SAAS,CAAC,KAAK,CAClB,CAAC;KACL;IAED,OAAO;QACH,cAAc,EAAE,cAAc;QAC9B,oBAAoB,EAAE,EAAE;QACxB,UAAU,EAAE,+BAA+B,CAAC,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,CAAC;KACjG,CAAC;AACN,CAAC;AAED,SAAS,qBAAqB,CAC1B,SAAwB,EACxB,SAAyB,EACzB,OAA2B,EAC3B,IAAe,EACf,mBAA4B,EAC5B,gBAA8C;IAE9C,MAAM,uBAAuB,GAAG,kBAAkB,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAE/E,IAAI,uBAAuB,EAAE;QACzB,MAAM,UAAU,GAAG,SAAS,CAAC,qBAAqB,CAC9C,SAAS,EACT,OAAO,EACP,uBAAuB;QACvB,oBAAoB,CAAC,SAAS,EAC9B,mBAAmB,EACnB,gBAAgB,CACnB,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,UAAU,IAAI,IAAA,iBAAS,EAAC,UAAU,CAAC,UAAU,CAAC,EAAE;YAC5D,gEAAgE;YAChE,gEAAgE;YAChE,mBAAmB;YACnB,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC,CAAC;YACnE,UAAU,CAAC,UAAU,GAAG,+BAA+B,CAAC,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAC;SAC9G;QAED,OAAO,UAAU,CAAC;KACrB;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,SAAS,kCAAkC,CACvC,SAAwB,EACxB,IAAe,EACf,eAAqB,EACrB,cAA8B;IAE9B,MAAM,eAAe,GAAG,IAAA,+BAAmB,EAAC,iBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE;QACzF,wBAAwB,EAAE,IAAI;KACjC,CAAC,CAAC;IAEH,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,EAAE,eAAe,CAAC,EAAE;QACzD,OAAO,SAAS,CAAC;KACpB;IAED,yDAAyD;IACzD,IAAI,IAAA,aAAK,EAAC,eAAe,CAAC,EAAE;QACxB,OAAO,eAAe,CAAC;KAC1B;IAED,OAAO,eAAe,CAAC;AAC3B,CAAC;AAED,sEAAsE;AACtE,wEAAwE;AACxE,SAAS,+BAA+B,CACpC,SAAwB,EACxB,IAAe,EACf,gBAA8C,EAC9C,cAA8B;IAE9B,IAAI,0BAA0B,GAAG,IAAI,CAAC;IAEtC,oEAAoE;IACpE,8DAA8D;IAC9D,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE;QAChE,OAAO,IAAA,+BAAmB,EAAC,iBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,EAAE,wBAAwB,EAAE,IAAI,EAAE,CAAC,CAAC;KACnH;IAED,IAAI,gBAAgB,EAAE;QAClB,MAAM,uBAAuB,GAAG,IAAA,uBAAW,EAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC,eAAe,EAAE,EAAE;YAC3F,OAAO,kCAAkC,CAAC,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;QAChG,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAA,eAAO,EAAC,uBAAuB,CAAC,EAAE;YACnC,OAAO,uBAAuB,CAAC;SAClC;QAED,gEAAgE;QAChE,kEAAkE;QAClE,+CAA+C;QAC/C,IAAI,IAAI,CAAC,aAAa,EAAE;YACpB,0BAA0B,GAAG,KAAK,CAAC;SACtC;KACJ;IAED,MAAM,eAAe,GAAG,IAAA,+BAAmB,EAAC,IAAI,EAAE,cAAc,EAAE;QAC9D,iBAAiB,EAAE,0BAA0B;KAChD,CAAc,CAAC;IAChB,OAAO,iBAAS,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;AACtD,CAAC;AAED,wEAAwE;AACxE,mCAAmC;AACnC,SAAS,oCAAoC,CAAC,IAAe,EAAE,gBAA8C;IACzG,IAAI,eAAe,GAAG,IAAI,CAAC;IAE3B,IACI,gBAAgB;QAChB,IAAA,uBAAe,EAAC,gBAAgB,CAAC,YAAY,CAAC;QAC9C,IAAA,wBAAY,EAAC,gBAAgB,CAAC,YAAY,CAAC;QAC3C,gBAAgB,CAAC,YAAY,CAAC,kBAAkB,EAClD;QACE,eAAe,GAAG,IAAA,gCAAoB,EAAC,IAAI,EAAE,gBAAgB,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;KAClG;IAED,OAAO,eAAe,CAAC;AAC3B,CAAC;AAED,uEAAuE;AACvE,8DAA8D;AAC9D,SAAgB,6BAA6B,CACzC,SAAwB,EACxB,SAAoB,EACpB,WAAgD,SAAS,EACzD,cAAc,GAAG,CAAC;IAElB,oEAAoE;IACpE,MAAM,QAAQ,GAAG,IAAA,6BAAiB,EAC9B,SAAS,EACT,UAAU,EACV;+DACiD;qDACR,CAC5C,CAAC;IAEF,IAAI,QAAQ,EAAE;QACV,MAAM,QAAQ,GAAG,SAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACrD,MAAM,UAAU,GAAG,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAExD,SAAS,wBAAwB,CAAC,WAAyB;YACvD,IAAI,mBAAmB,GAAG,SAAS,CAAC,2BAA2B,CAC3D,UAAU,EACV,WAAW,EACX,QAAQ,IAAI,IAAA,2BAAmB,EAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;YACpF,mCAAmC,CAAC,SAAS,EAC7C,QAAQ;YACR,UAAU,CAAC,SAAS,EACpB,cAAc,CACW,CAAC;YAE9B,IAAI,mBAAmB,EAAE;gBACrB,mBAAmB,GAAG,oBAAY,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBAC9D,mBAAmB,CAAC,OAAO,CAAC,kBAAkB,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,UAAU,CAAC;gBACxE,mBAAmB,CAAC,OAAO,CAAC,IAAI,GAAG,EAAE,CAAC;gBACtC,mBAAmB,CAAC,OAAO,CAAC,QAAQ,GAAG,EAAE,CAAC;gBAE1C,IAAI,mBAAmB,CAAC,gBAAgB,EAAE;oBACtC,mBAAmB,CAAC,gBAAgB,CAAC,UAAU,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,UAAU,CAAC;iBAC5E;gBAED,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,SAAS,IAAI,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE;oBACvE,mBAAmB,CAAC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC;iBACvE;gBAED,mBAAmB,CAAC,OAAO,CAAC,KAAK,IAAI,uCAA+B,CAAC;gBACrE,mBAAmB,CAAC,OAAO,CAAC,yBAAyB,GAAG,IAAA,6BAAiB,EAAC,SAAS,CAAC,CAAC;aACxF;YAED,OAAO,mBAAmB,CAAC;QAC/B,CAAC;QAED,IAAI,IAAA,kBAAU,EAAC,QAAQ,CAAC,EAAE;YACtB,OAAO,wBAAwB,CAAC,QAAQ,CAAC,CAAC;SAC7C;QAED,IAAI,IAAA,4BAAoB,EAAC,QAAQ,CAAC,EAAE;YAChC,MAAM,aAAa,GAAmB,EAAE,CAAC;YACzC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACpC,MAAM,SAAS,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;gBACrD,IAAI,SAAS,EAAE;oBACX,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBACjC;YACL,CAAC,CAAC,CAAC;YAEH,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC5B,OAAO,SAAS,CAAC;aACpB;YAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC5B,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC;aAC3B;YAED,OAAO,8BAAsB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;SACvD;KACJ;IAED,+DAA+D;IAC/D,MAAM,OAAO,GAAG,IAAA,6BAAiB,EAC7B,SAAS,EACT,SAAS,EACT;+DACiD;qDACR,CAC5C,CAAC;IAEF,IAAI,OAAO,EAAE;QACT,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAEnD,MAAM,uBAAuB,GAAG,CAAC,UAAwB,EAAE,EAAE;YACzD,IAAI,mBAAmB,GAAG,SAAS,CAAC,2BAA2B,CAC3D,SAAS,EACT,UAAU,EACV,OAAO,IAAI,IAAA,2BAAmB,EAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;YACjF,mCAAmC,CAAC,IAAI,EACxC,QAAQ;YACR,UAAU,CAAC,SAAS,EACpB,cAAc,CACW,CAAC;YAE9B,IAAI,mBAAmB,EAAE;gBACrB,mBAAmB,GAAG,oBAAY,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBAC9D,mBAAmB,CAAC,OAAO,CAAC,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC;gBAE/E,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,SAAS,IAAI,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE;oBACvE,mBAAmB,CAAC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC;iBACvE;gBAED,mBAAmB,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,CAClC,oFAAoE,CACvE,CAAC;gBACF,mBAAmB,CAAC,OAAO,CAAC,yBAAyB,GAAG,IAAA,6BAAiB,EAAC,SAAS,CAAC,CAAC;aACxF;YAED,OAAO,mBAAmB,CAAC;QAC/B,CAAC,CAAC;QAEF,IAAI,IAAA,kBAAU,EAAC,OAAO,CAAC,EAAE;YACrB,OAAO,uBAAuB,CAAC,OAAO,CAAC,CAAC;SAC3C;QAED,IAAI,IAAA,4BAAoB,EAAC,OAAO,CAAC,EAAE;YAC/B,MAAM,YAAY,GAAmB,EAAE,CAAC;YACxC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACnC,MAAM,SAAS,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;gBACpD,IAAI,SAAS,EAAE;oBACX,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBAChC;YACL,CAAC,CAAC,CAAC;YAEH,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC3B,OAAO,SAAS,CAAC;aACpB;YAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC3B,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;aAC1B;YAED,OAAO,8BAAsB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;SACtD;KACJ;IAED,oEAAoE;IACpE,MAAM,mBAAmB,GAAG,oBAAY,CAAC,yBAAyB,CAAC,SAAS,iCAAyB,CAAC;IACtG,mBAAmB,CAAC,OAAO,CAAC,kBAAkB,GAAG,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAEtF,+EAA+E;IAC/E,qDAAqD;IACrD,IAAI,SAAS,CAAC,iBAAiB,IAAI,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;QACrE,oBAAY,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,CAAC;KAC1D;IAED,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,SAAS,IAAI,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE;QACvE,mBAAmB,CAAC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC;KACvE;IAED,OAAO,mBAAmB,CAAC;AAC/B,CAAC;AA5JD,sEA4JC;AAED,2EAA2E;AAC3E,0EAA0E;AAC1E,kCAAkC;AAClC,SAAS,wBAAwB,CAAC,SAAwB,EAAE,SAAoB,EAAE,mBAAyB;IACvG,MAAM,UAAU,GAAG,SAAS,CAAC,4BAA4B,CAAC,mBAAmB,CAAC,CAAC;IAE/E,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAA,4BAAgB,EAAC,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;QACrC,IAAI,IAAA,sBAAc,EAAC,OAAO,CAAC,EAAE;YACzB,OAAO;SACV;QAED,IAAI,IAAA,uBAAe,EAAC,OAAO,CAAC,EAAE;YAC1B,MAAM,gBAAgB,GAAqB,EAAE,CAAC;YAC9C,MAAM,aAAa,GAAG,iBAAS,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;YAEpF,IAAI,CAAC,aAAa,EAAE;gBAChB,aAAa,GAAG,IAAI,CAAC;aACxB;YAED,OAAO;SACV;QAED,aAAa,GAAG,IAAI,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,OAAO,aAAa,CAAC;AACzB,CAAC;AAED,oEAAoE;AACpE,kDAAkD;AAClD,SAAS,kBAAkB,CAAC,SAAgB;;IACxC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAA,kBAAU,EAAC,SAAS,CAAC,EAAE;QACtC,OAAO,KAAK,CAAC;KAChB;IAED,IAAI,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE;QAC7B,OAAO,KAAK,CAAC;KAChB;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC;IAC5C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;QACrB,OAAO,KAAK,CAAC;KAChB;IAED,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,uCAA+B,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,yCAAiC,EAAE;QAC1G,OAAO,KAAK,CAAC;KAChB;IAED,MAAM,UAAU,GAAG,MAAA,SAAS,CAAC,OAAO,CAAC,kBAAkB,mCAAI,SAAS,CAAC,kBAAkB,CAAC;IACxF,IAAI,CAAC,UAAU,IAAI,CAAC,IAAA,iBAAS,EAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,iBAAiB,EAAE;QAChF,OAAO,KAAK,CAAC;KAChB;IAED,OAAO,IAAI,CAAC;AAChB,CAAC"}