@zzzen/pyright-internal 1.2.0-dev.20230430 → 1.2.0-dev.20230514

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 (231) hide show
  1. package/dist/analyzer/backgroundAnalysisProgram.d.ts +4 -1
  2. package/dist/analyzer/backgroundAnalysisProgram.js +12 -0
  3. package/dist/analyzer/backgroundAnalysisProgram.js.map +1 -1
  4. package/dist/analyzer/checker.d.ts +1 -0
  5. package/dist/analyzer/checker.js +89 -6
  6. package/dist/analyzer/checker.js.map +1 -1
  7. package/dist/analyzer/constraintSolver.js +14 -15
  8. package/dist/analyzer/constraintSolver.js.map +1 -1
  9. package/dist/analyzer/constructors.d.ts +6 -0
  10. package/dist/analyzer/constructors.js +513 -0
  11. package/dist/analyzer/constructors.js.map +1 -0
  12. package/dist/analyzer/dataClasses.js +86 -2
  13. package/dist/analyzer/dataClasses.js.map +1 -1
  14. package/dist/analyzer/docStringConversion.js +1 -1
  15. package/dist/analyzer/docStringConversion.js.map +1 -1
  16. package/dist/analyzer/enums.js +62 -8
  17. package/dist/analyzer/enums.js.map +1 -1
  18. package/dist/analyzer/importResolver.js +47 -29
  19. package/dist/analyzer/importResolver.js.map +1 -1
  20. package/dist/analyzer/importStatementUtils.d.ts +2 -2
  21. package/dist/analyzer/importStatementUtils.js.map +1 -1
  22. package/dist/analyzer/namedTuples.js +3 -6
  23. package/dist/analyzer/namedTuples.js.map +1 -1
  24. package/dist/analyzer/operations.d.ts +16 -0
  25. package/dist/analyzer/operations.js +749 -0
  26. package/dist/analyzer/operations.js.map +1 -0
  27. package/dist/analyzer/parseTreeUtils.d.ts +4 -2
  28. package/dist/analyzer/parseTreeUtils.js +32 -1
  29. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  30. package/dist/analyzer/patternMatching.js +16 -0
  31. package/dist/analyzer/patternMatching.js.map +1 -1
  32. package/dist/analyzer/program.d.ts +11 -33
  33. package/dist/analyzer/program.js +73 -735
  34. package/dist/analyzer/program.js.map +1 -1
  35. package/dist/analyzer/protocols.js +1 -1
  36. package/dist/analyzer/protocols.js.map +1 -1
  37. package/dist/analyzer/service.d.ts +5 -21
  38. package/dist/analyzer/service.js +26 -33
  39. package/dist/analyzer/service.js.map +1 -1
  40. package/dist/analyzer/sourceFile.d.ts +9 -41
  41. package/dist/analyzer/sourceFile.js +219 -238
  42. package/dist/analyzer/sourceFile.js.map +1 -1
  43. package/dist/analyzer/sourceFileInfoUtils.d.ts +3 -9
  44. package/dist/analyzer/sourceFileInfoUtils.js.map +1 -1
  45. package/dist/analyzer/symbol.d.ts +3 -1
  46. package/dist/analyzer/symbol.js +5 -0
  47. package/dist/analyzer/symbol.js.map +1 -1
  48. package/dist/analyzer/typeEvaluator.js +460 -1425
  49. package/dist/analyzer/typeEvaluator.js.map +1 -1
  50. package/dist/analyzer/typeEvaluatorTypes.d.ts +42 -7
  51. package/dist/analyzer/typeEvaluatorTypes.js +33 -1
  52. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  53. package/dist/analyzer/typeGuards.js +2 -8
  54. package/dist/analyzer/typeGuards.js.map +1 -1
  55. package/dist/analyzer/typePrinter.d.ts +3 -3
  56. package/dist/analyzer/typePrinter.js +247 -100
  57. package/dist/analyzer/typePrinter.js.map +1 -1
  58. package/dist/analyzer/typeUtils.d.ts +14 -7
  59. package/dist/analyzer/typeUtils.js +204 -49
  60. package/dist/analyzer/typeUtils.js.map +1 -1
  61. package/dist/analyzer/typeVarContext.d.ts +6 -7
  62. package/dist/analyzer/typeVarContext.js +21 -32
  63. package/dist/analyzer/typeVarContext.js.map +1 -1
  64. package/dist/analyzer/typedDicts.js +2 -2
  65. package/dist/analyzer/typedDicts.js.map +1 -1
  66. package/dist/analyzer/types.d.ts +7 -4
  67. package/dist/analyzer/types.js +20 -10
  68. package/dist/analyzer/types.js.map +1 -1
  69. package/dist/backgroundAnalysisBase.d.ts +1 -1
  70. package/dist/backgroundAnalysisBase.js +16 -0
  71. package/dist/backgroundAnalysisBase.js.map +1 -1
  72. package/dist/commands/dumpFileDebugInfoCommand.js +0 -1
  73. package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
  74. package/dist/common/extensibility.d.ts +28 -4
  75. package/dist/common/extensibility.js.map +1 -1
  76. package/dist/common/logTracker.d.ts +2 -0
  77. package/dist/common/logTracker.js +8 -1
  78. package/dist/common/logTracker.js.map +1 -1
  79. package/dist/common/lspUtils.d.ts +4 -1
  80. package/dist/common/lspUtils.js +38 -1
  81. package/dist/common/lspUtils.js.map +1 -1
  82. package/dist/common/pathUtils.d.ts +11 -11
  83. package/dist/common/pathUtils.js.map +1 -1
  84. package/dist/common/pythonVersion.d.ts +2 -1
  85. package/dist/common/pythonVersion.js +1 -0
  86. package/dist/common/pythonVersion.js.map +1 -1
  87. package/dist/common/workspaceEditUtils.d.ts +8 -8
  88. package/dist/common/workspaceEditUtils.js +10 -10
  89. package/dist/common/workspaceEditUtils.js.map +1 -1
  90. package/dist/languageServerBase.d.ts +3 -7
  91. package/dist/languageServerBase.js +41 -73
  92. package/dist/languageServerBase.js.map +1 -1
  93. package/dist/languageService/autoImporter.d.ts +50 -51
  94. package/dist/languageService/autoImporter.js +125 -210
  95. package/dist/languageService/autoImporter.js.map +1 -1
  96. package/dist/languageService/callHierarchyProvider.d.ts +1 -1
  97. package/dist/languageService/callHierarchyProvider.js +11 -37
  98. package/dist/languageService/callHierarchyProvider.js.map +1 -1
  99. package/dist/languageService/completionProvider.d.ts +39 -81
  100. package/dist/languageService/completionProvider.js +572 -801
  101. package/dist/languageService/completionProvider.js.map +1 -1
  102. package/dist/languageService/documentHighlightProvider.js +1 -1
  103. package/dist/languageService/documentHighlightProvider.js.map +1 -1
  104. package/dist/languageService/documentSymbolCollector.d.ts +6 -7
  105. package/dist/languageService/documentSymbolCollector.js +47 -28
  106. package/dist/languageService/documentSymbolCollector.js.map +1 -1
  107. package/dist/languageService/documentSymbolProvider.d.ts +13 -35
  108. package/dist/languageService/documentSymbolProvider.js +52 -264
  109. package/dist/languageService/documentSymbolProvider.js.map +1 -1
  110. package/dist/languageService/hoverProvider.d.ts +5 -6
  111. package/dist/languageService/hoverProvider.js +40 -132
  112. package/dist/languageService/hoverProvider.js.map +1 -1
  113. package/dist/languageService/referencesProvider.d.ts +6 -11
  114. package/dist/languageService/referencesProvider.js +23 -17
  115. package/dist/languageService/referencesProvider.js.map +1 -1
  116. package/dist/languageService/renameProvider.d.ts +16 -0
  117. package/dist/languageService/renameProvider.js +139 -0
  118. package/dist/languageService/renameProvider.js.map +1 -0
  119. package/dist/languageService/symbolIndexer.d.ts +31 -0
  120. package/dist/languageService/symbolIndexer.js +105 -0
  121. package/dist/languageService/symbolIndexer.js.map +1 -0
  122. package/dist/languageService/tooltipUtils.d.ts +8 -1
  123. package/dist/languageService/tooltipUtils.js +102 -1
  124. package/dist/languageService/tooltipUtils.js.map +1 -1
  125. package/dist/languageService/workspaceSymbolProvider.d.ts +17 -0
  126. package/dist/languageService/workspaceSymbolProvider.js +133 -0
  127. package/dist/languageService/workspaceSymbolProvider.js.map +1 -0
  128. package/dist/localization/localize.d.ts +33 -15
  129. package/dist/localization/localize.js +13 -7
  130. package/dist/localization/localize.js.map +1 -1
  131. package/dist/localization/package.nls.en-us.json +14 -7
  132. package/dist/parser/parser.js +3 -0
  133. package/dist/parser/parser.js.map +1 -1
  134. package/dist/pyright.js +26 -4
  135. package/dist/pyright.js.map +1 -1
  136. package/dist/tests/chainedSourceFiles.test.js +15 -20
  137. package/dist/tests/chainedSourceFiles.test.js.map +1 -1
  138. package/dist/tests/checker.test.js +14 -0
  139. package/dist/tests/checker.test.js.map +1 -1
  140. package/dist/tests/completions.test.js +11 -236
  141. package/dist/tests/completions.test.js.map +1 -1
  142. package/dist/tests/docStringConversion.test.js +36 -2
  143. package/dist/tests/docStringConversion.test.js.map +1 -1
  144. package/dist/tests/documentSymbolCollector.test.js +3 -3
  145. package/dist/tests/documentSymbolCollector.test.js.map +1 -1
  146. package/dist/tests/fourslash/completions.override2.fourslash.js +1 -16
  147. package/dist/tests/fourslash/completions.override2.fourslash.js.map +1 -1
  148. package/dist/tests/fourslash/fourslash.d.ts +4 -4
  149. package/dist/tests/fourslash/missingTypeStub.codeAction.fourslash.js +1 -1
  150. package/dist/tests/fourslash/missingTypeStub.codeAction.fourslash.js.map +1 -1
  151. package/dist/tests/harness/fourslash/testState.d.ts +17 -11
  152. package/dist/tests/harness/fourslash/testState.js +39 -50
  153. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  154. package/dist/tests/importResolver.test.js +81 -1
  155. package/dist/tests/importResolver.test.js.map +1 -1
  156. package/dist/tests/sourceFile.test.js +1 -1
  157. package/dist/tests/sourceFile.test.js.map +1 -1
  158. package/dist/tests/testStateUtils.d.ts +2 -2
  159. package/dist/tests/testStateUtils.js +38 -8
  160. package/dist/tests/testStateUtils.js.map +1 -1
  161. package/dist/tests/typeEvaluator2.test.js +13 -1
  162. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  163. package/dist/tests/typeEvaluator3.test.js +5 -1
  164. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  165. package/dist/tests/typeEvaluator4.test.js +9 -1
  166. package/dist/tests/typeEvaluator4.test.js.map +1 -1
  167. package/dist/tests/typeEvaluator5.test.js +25 -9
  168. package/dist/tests/typeEvaluator5.test.js.map +1 -1
  169. package/dist/tests/workspaceEditUtils.test.js +95 -6
  170. package/dist/tests/workspaceEditUtils.test.js.map +1 -1
  171. package/package.json +4 -4
  172. package/dist/languageService/importAdder.d.ts +0 -40
  173. package/dist/languageService/importAdder.js +0 -388
  174. package/dist/languageService/importAdder.js.map +0 -1
  175. package/dist/languageService/indentationUtils.d.ts +0 -16
  176. package/dist/languageService/indentationUtils.js +0 -727
  177. package/dist/languageService/indentationUtils.js.map +0 -1
  178. package/dist/languageService/insertionPointUtils.d.ts +0 -9
  179. package/dist/languageService/insertionPointUtils.js +0 -132
  180. package/dist/languageService/insertionPointUtils.js.map +0 -1
  181. package/dist/languageService/renameModuleProvider.d.ts +0 -65
  182. package/dist/languageService/renameModuleProvider.js +0 -939
  183. package/dist/languageService/renameModuleProvider.js.map +0 -1
  184. package/dist/tests/fourslash/completions.commitChars.fourslash.d.ts +0 -1
  185. package/dist/tests/fourslash/completions.commitChars.fourslash.js +0 -81
  186. package/dist/tests/fourslash/completions.commitChars.fourslash.js.map +0 -1
  187. package/dist/tests/importAdder.test.d.ts +0 -1
  188. package/dist/tests/importAdder.test.js +0 -1325
  189. package/dist/tests/importAdder.test.js.map +0 -1
  190. package/dist/tests/indentationUtils.ptvs.test.d.ts +0 -1
  191. package/dist/tests/indentationUtils.ptvs.test.js +0 -324
  192. package/dist/tests/indentationUtils.ptvs.test.js.map +0 -1
  193. package/dist/tests/indentationUtils.reindent.test.d.ts +0 -1
  194. package/dist/tests/indentationUtils.reindent.test.js +0 -372
  195. package/dist/tests/indentationUtils.reindent.test.js.map +0 -1
  196. package/dist/tests/indentationUtils.test.d.ts +0 -1
  197. package/dist/tests/indentationUtils.test.js +0 -502
  198. package/dist/tests/indentationUtils.test.js.map +0 -1
  199. package/dist/tests/insertionPointUtils.test.d.ts +0 -1
  200. package/dist/tests/insertionPointUtils.test.js +0 -154
  201. package/dist/tests/insertionPointUtils.test.js.map +0 -1
  202. package/dist/tests/moveSymbol.importAdder.test.d.ts +0 -1
  203. package/dist/tests/moveSymbol.importAdder.test.js +0 -298
  204. package/dist/tests/moveSymbol.importAdder.test.js.map +0 -1
  205. package/dist/tests/moveSymbol.insertion.test.d.ts +0 -1
  206. package/dist/tests/moveSymbol.insertion.test.js +0 -537
  207. package/dist/tests/moveSymbol.insertion.test.js.map +0 -1
  208. package/dist/tests/moveSymbol.misc.test.d.ts +0 -1
  209. package/dist/tests/moveSymbol.misc.test.js +0 -169
  210. package/dist/tests/moveSymbol.misc.test.js.map +0 -1
  211. package/dist/tests/moveSymbol.updateReference.test.d.ts +0 -1
  212. package/dist/tests/moveSymbol.updateReference.test.js +0 -1071
  213. package/dist/tests/moveSymbol.updateReference.test.js.map +0 -1
  214. package/dist/tests/renameModule.folder.test.d.ts +0 -1
  215. package/dist/tests/renameModule.folder.test.js +0 -229
  216. package/dist/tests/renameModule.folder.test.js.map +0 -1
  217. package/dist/tests/renameModule.fromImports.test.d.ts +0 -1
  218. package/dist/tests/renameModule.fromImports.test.js +0 -790
  219. package/dist/tests/renameModule.fromImports.test.js.map +0 -1
  220. package/dist/tests/renameModule.imports.test.d.ts +0 -1
  221. package/dist/tests/renameModule.imports.test.js +0 -380
  222. package/dist/tests/renameModule.imports.test.js.map +0 -1
  223. package/dist/tests/renameModule.misc.test.d.ts +0 -1
  224. package/dist/tests/renameModule.misc.test.js +0 -615
  225. package/dist/tests/renameModule.misc.test.js.map +0 -1
  226. package/dist/tests/renameModule.relativePath.test.d.ts +0 -1
  227. package/dist/tests/renameModule.relativePath.test.js +0 -231
  228. package/dist/tests/renameModule.relativePath.test.js.map +0 -1
  229. package/dist/tests/renameModuleTestUtils.d.ts +0 -4
  230. package/dist/tests/renameModuleTestUtils.js +0 -76
  231. package/dist/tests/renameModuleTestUtils.js.map +0 -1
@@ -245,7 +245,7 @@ function synthesizeTypedDictClassMethods(evaluator, node, classType, isClassFina
245
245
  const createGetMethod = (keyType, valueType, includeDefault, isEntryRequired = false, defaultTypeMatchesField = false) => {
246
246
  const getOverload = types_1.FunctionType.createSynthesizedInstance('get', 256 /* Overloaded */);
247
247
  types_1.FunctionType.addParameter(getOverload, selfParam);
248
- getOverload.details.typeVarScopeId = evaluator.getScopeIdForNode(node);
248
+ getOverload.details.typeVarScopeId = ParseTreeUtils.getScopeIdForNode(node);
249
249
  types_1.FunctionType.addParameter(getOverload, {
250
250
  category: 0 /* Simple */,
251
251
  name: 'k',
@@ -300,7 +300,7 @@ function synthesizeTypedDictClassMethods(evaluator, node, classType, isClassFina
300
300
  const popOverload2 = types_1.FunctionType.createSynthesizedInstance('pop', 256 /* Overloaded */);
301
301
  types_1.FunctionType.addParameter(popOverload2, selfParam);
302
302
  types_1.FunctionType.addParameter(popOverload2, keyParam);
303
- popOverload2.details.typeVarScopeId = evaluator.getScopeIdForNode(node);
303
+ popOverload2.details.typeVarScopeId = ParseTreeUtils.getScopeIdForNode(node);
304
304
  const defaultTypeVar = createDefaultTypeVar(popOverload2);
305
305
  types_1.FunctionType.addParameter(popOverload2, {
306
306
  category: 0 /* Simple */,
@@ -1 +1 @@
1
- {"version":3,"file":"typedDicts.js","sourceRoot":"","sources":["../../../src/analyzer/typedDicts.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;;AAEH,+DAAwD;AACxD,2CAAyC;AACzC,qDAA0D;AAC1D,+DAA2D;AAC3D,2DAAgE;AAChE,mDAAgD;AAChD,uDAAqD;AAWrD,qEAAuD;AAEvD,iEAAmD;AACnD,qCAA4D;AAC5D,+CAA8D;AAE9D,mCAqBiB;AACjB,2CAUqB;AACrB,qDAAkD;AAElD,gDAAgD;AAChD,SAAgB,mBAAmB,CAC/B,SAAwB,EACxB,SAAyB,EACzB,cAAyB,EACzB,OAA2B;IAE3B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAEzD,6CAA6C;IAC7C,qEAAqE;IACrE,0DAA0D;IAC1D,IAAI,SAAS,GAAG,WAAW,CAAC;IAC5B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;QACtB,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,iBAAiB,EAAE,EAAE,SAAS,CAAC,CAAC;KAC3E;SAAM;QACH,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,IACI,OAAO,CAAC,gBAAgB,mBAA4B;YACpD,CAAC,OAAO,CAAC,eAAe;YACxB,OAAO,CAAC,eAAe,CAAC,QAAQ,wBAA6B,EAC/D;YACE,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,iBAAiB,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC;SACzG;aAAM;YACH,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC5E;KACJ;IAED,MAAM,SAAS,GAAG,iBAAS,CAAC,kBAAkB,CAC1C,SAAS,EACT,cAAc,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,EAC1E,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,QAAQ,4BAEjB,cAAc,CAAC,eAAe,CAAC,SAAS,CAAC;IACzC,uBAAuB,CAAC,SAAS,EACjC,cAAc,CAAC,OAAO,CAAC,kBAAkB,CAC5C,CAAC;IACF,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACnD,IAAA,mCAAuB,EAAC,SAAS,CAAC,CAAC;IAEnC,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;IAC7C,WAAW,CAAC,GAAG,CACX,WAAW,EACX,eAAM,CAAC,cAAc,CAAC,sDAA6D,EAAE,SAAS,CAAC,CAClG,CAAC;IAEF,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACpB,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,sBAAsB,EAAE,EAAE,SAAS,CAAC,CAAC;KAChF;SAAM;QACH,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAE9B,IACI,UAAU,CAAC,gBAAgB,mBAA4B;YACvD,UAAU,CAAC,eAAe;YAC1B,UAAU,CAAC,eAAe,CAAC,QAAQ,wBAA6B,EAClE;YACE,eAAe,GAAG,IAAI,CAAC;YAEvB,gCAAgC,CAAC,SAAS,EAAE,UAAU,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;SACxF;aAAM,IAAI,UAAU,CAAC,IAAI,EAAE;YACxB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;YACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACrC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBACzB,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE;oBACvC,SAAS;iBACZ;gBAED,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBAChC,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,oBAAoB,EAAE,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;oBACvF,SAAS;iBACZ;gBAED,8CAA8C;gBAC9C,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE/B,MAAM,SAAS,GAAG,IAAI,eAAM,wBAA4B,CAAC;gBACzD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBACzD,MAAM,WAAW,GAAwB;oBACrC,IAAI,kBAA0B;oBAC9B,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI,EAAE,QAAQ,CAAC,QAAQ;oBACvB,kBAAkB,EAAE,KAAK,CAAC,eAAe;oBACzC,uBAAuB,EAAE,IAAI;oBAC7B,KAAK,EAAE,IAAA,qCAAqB,EACxB,KAAK,CAAC,IAAI,CAAC,KAAK,EAChB,qBAAS,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,EACvC,QAAQ,CAAC,KAAK,CACjB;oBACD,UAAU,EAAE,QAAQ,CAAC,UAAU;oBAC/B,eAAe,EAAE,KAAK;iBACzB,CAAC;gBACF,SAAS,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;gBAEtC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;aAChD;SACJ;aAAM;YACH,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,sBAAsB,EAAE,EAAE,SAAS,CAAC,CAAC;SAChF;KACJ;IAED,IAAI,eAAe,EAAE;QACjB,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE;YACrB,IACI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;gBAChB,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO;gBACjC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe;gBAC3B,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,sBAA2B;gBAC9D,CAAC,CACG,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,mBAAsB;oBAC1D,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,kBAAqB,CAC5D,EACH;gBACE,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,mBAAmB,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC;aAC3G;iBAAM,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,mBAAsB,EAAE;gBACnE,SAAS,CAAC,OAAO,CAAC,KAAK,+BAAoC,CAAC;aAC/D;SACJ;QAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACpB,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,kBAAkB,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC;SAC1G;KACJ;IAED,+BAA+B,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAE3F,OAAO,SAAS,CAAC;AACrB,CAAC;AA/HD,kDA+HC;AAED,oFAAoF;AACpF,SAAgB,0BAA0B,CACtC,SAAwB,EACxB,QAAwB,EACxB,cAAyB;IAEzB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,aAAa,CAAC;IAEhC,MAAM,SAAS,GAAG,iBAAS,CAAC,kBAAkB,CAC1C,SAAS,EACT,cAAc,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,EACzE,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,QAAQ,4BAEjB,cAAc,CAAC,eAAe,CAAC,QAAQ,CAAC;IACxC,uBAAuB,CAAC,SAAS,EACjC,cAAc,CAAC,OAAO,CAAC,kBAAkB,CAC5C,CAAC;IACF,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACnD,IAAA,mCAAuB,EAAC,SAAS,CAAC,CAAC;IAEnC,gCAAgC,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAChF,+BAA+B,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAEzF,OAAO,SAAS,CAAC;AACrB,CAAC;AAzBD,gEAyBC;AAED,SAAgB,+BAA+B,CAC3C,SAAwB,EACxB,IAAgC,EAChC,SAAoB,EACpB,YAAqB;IAErB,IAAA,cAAM,EAAC,iBAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;IAE9C,+BAA+B;IAC/B,MAAM,OAAO,GAAG,oBAAY,CAAC,yBAAyB,CAAC,SAAS,4BAAsC,CAAC;IACvG,oBAAY,CAAC,YAAY,CAAC,OAAO,EAAE;QAC/B,QAAQ,gBAA0B;QAClC,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,IAAI;KACxB,CAAC,CAAC;IACH,oBAAY,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC3C,OAAO,CAAC,OAAO,CAAC,kBAAkB,GAAG,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAE1E,oDAAoD;IACpD,MAAM,aAAa,GAAG,oBAAY,CAAC,yBAAyB,CAAC,UAAU,uBAA+B,CAAC;IACvG,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;QACrC,QAAQ,gBAA0B;QAClC,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC;QAC1C,eAAe,EAAE,IAAI;KACxB,CAAC,CAAC;IACH,aAAa,CAAC,OAAO,CAAC,kBAAkB,GAAG,gBAAQ,CAAC,cAAc,EAAE,CAAC;IAErE,+CAA+C;IAC/C,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;QACrC,QAAQ,gBAA0B;QAClC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC;QAC1C,eAAe,EAAE,IAAI;KACxB,CAAC,CAAC;IAEH,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;QACrC,QAAQ,gBAA0B;QAClC,IAAI,EAAE,EAAE;QACR,IAAI,EAAE,mBAAW,CAAC,MAAM,EAAE;KAC7B,CAAC,CAAC;IAEH,mEAAmE;IACnE,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;QACrC,QAAQ,oBAA8B;QACtC,IAAI,EAAE,eAAO,CAAC,MAAM,EAAE;QACtB,eAAe,EAAE,IAAI;KACxB,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,oBAAY,CAAC,yBAAyB,CAAC,UAAU,uBAA+B,CAAC;IACvG,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;QACrC,QAAQ,gBAA0B;QAClC,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC;QAC1C,eAAe,EAAE,IAAI;KACxB,CAAC,CAAC;IACH,aAAa,CAAC,OAAO,CAAC,kBAAkB,GAAG,gBAAQ,CAAC,cAAc,EAAE,CAAC;IAErE,wDAAwD;IACxD,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;QACrC,QAAQ,oBAA8B;QACtC,IAAI,EAAE,eAAO,CAAC,MAAM,EAAE;QACtB,eAAe,EAAE,IAAI;KACxB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,2BAA2B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAClE,IAAI,wBAAwB,GAAG,IAAI,CAAC;IACpC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QAC5B,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;YACrC,QAAQ,gBAA0B;YAClC,IAAI;YACJ,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,KAAK,CAAC,SAAS;YACrB,eAAe,EAAE,IAAI;SACxB,CAAC,CAAC;QAEH,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;YACrC,QAAQ,gBAA0B;YAClC,IAAI;YACJ,UAAU,EAAE,CAAC,KAAK,CAAC,UAAU;YAC7B,IAAI,EAAE,KAAK,CAAC,SAAS;YACrB,eAAe,EAAE,IAAI;SACxB,CAAC,CAAC;QAEH,IAAI,KAAK,CAAC,UAAU,EAAE;YAClB,wBAAwB,GAAG,KAAK,CAAC;SACpC;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;IAC7C,MAAM,QAAQ,GAAG,8BAAsB,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC;IAC/E,WAAW,CAAC,GAAG,CAAC,UAAU,EAAE,eAAM,CAAC,cAAc,sBAA0B,QAAQ,CAAC,CAAC,CAAC;IACtF,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,eAAM,CAAC,cAAc,sBAA0B,OAAO,CAAC,CAAC,CAAC;IAEpF,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAEvD,uEAAuE;IACvE,IAAI,IAAA,2BAAmB,EAAC,QAAQ,CAAC,EAAE;QAC/B,MAAM,SAAS,GAAsB;YACjC,QAAQ,gBAA0B;YAClC,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC;YAC1C,eAAe,EAAE,IAAI;SACxB,CAAC;QACF,MAAM,oBAAoB,GAAG,CAAC,IAAkB,EAAE,EAAE;YAChD,IAAI,cAAc,GAAG,mBAAW,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;YAC9D,cAAc,GAAG,mBAAW,CAAC,eAAe,CACxC,cAAc,EACd,IAAI,CAAC,OAAO,CAAC,cAAe,EAC5B,SAAS,CAAC,OAAO,CAAC,IAAI,mBAEzB,CAAC;YACF,OAAO,cAAc,CAAC;QAC1B,CAAC,CAAC;QAEF,MAAM,eAAe,GAAG,CACpB,OAAa,EACb,SAA2B,EAC3B,cAAuB,EACvB,eAAe,GAAG,KAAK,EACvB,uBAAuB,GAAG,KAAK,EACjC,EAAE;YACA,MAAM,WAAW,GAAG,oBAAY,CAAC,yBAAyB,CAAC,KAAK,uBAA+B,CAAC;YAChG,oBAAY,CAAC,YAAY,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAClD,WAAW,CAAC,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACvE,oBAAY,CAAC,YAAY,CAAC,WAAW,EAAE;gBACnC,QAAQ,gBAA0B;gBAClC,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,OAAO;gBACb,eAAe,EAAE,IAAI;aACxB,CAAC,CAAC;YAEH,IAAI,cAAc,EAAE;gBAChB,MAAM,cAAc,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;gBACzD,IAAI,gBAAsB,CAAC;gBAC3B,IAAI,UAAgB,CAAC;gBAErB,IAAI,eAAe,EAAE;oBACjB,yEAAyE;oBACzE,oDAAoD;oBACpD,gBAAgB,GAAG,eAAO,CAAC,MAAM,EAAE,CAAC;oBACpC,UAAU,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,eAAO,CAAC,MAAM,EAAE,CAAC;iBAC9C;qBAAM;oBACH,gBAAgB,GAAG,uBAAuB,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC;oBACrF,IAAI,SAAS,EAAE;wBACX,UAAU,GAAG,uBAAuB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAA,oBAAY,EAAC,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC;qBAChG;yBAAM;wBACH,UAAU,GAAG,cAAc,CAAC;qBAC/B;iBACJ;gBAED,oBAAY,CAAC,YAAY,CAAC,WAAW,EAAE;oBACnC,QAAQ,gBAA0B;oBAClC,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,gBAAgB;oBACtB,eAAe,EAAE,IAAI;iBACxB,CAAC,CAAC;gBACH,WAAW,CAAC,OAAO,CAAC,kBAAkB,GAAG,UAAU,CAAC;aACvD;iBAAM;gBACH,WAAW,CAAC,OAAO,CAAC,kBAAkB,GAAG,eAAe;oBACpD,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,IAAA,oBAAY,EAAC,CAAC,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,eAAO,CAAC,MAAM,EAAE,EAAE,gBAAQ,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;aAClF;YACD,OAAO,WAAW,CAAC;QACvB,CAAC,CAAC;QAEF,MAAM,gBAAgB,GAAG,CAAC,OAAa,EAAE,SAAe,EAAE,EAAE;YACxD,MAAM,QAAQ,GAAsB;gBAChC,QAAQ,gBAA0B;gBAClC,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,OAAO;gBACb,eAAe,EAAE,IAAI;aACxB,CAAC;YAEF,MAAM,YAAY,GAAG,oBAAY,CAAC,yBAAyB,CAAC,KAAK,uBAA+B,CAAC;YACjG,oBAAY,CAAC,YAAY,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;YACnD,oBAAY,CAAC,YAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YAClD,YAAY,CAAC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;YAEpD,MAAM,YAAY,GAAG,oBAAY,CAAC,yBAAyB,CAAC,KAAK,uBAA+B,CAAC;YACjG,oBAAY,CAAC,YAAY,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;YACnD,oBAAY,CAAC,YAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YAClD,YAAY,CAAC,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxE,MAAM,cAAc,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC;YAC1D,oBAAY,CAAC,YAAY,CAAC,YAAY,EAAE;gBACpC,QAAQ,gBAA0B;gBAClC,IAAI,EAAE,SAAS;gBACf,eAAe,EAAE,IAAI;gBACrB,IAAI,EAAE,cAAc;gBACpB,UAAU,EAAE,IAAI;aACnB,CAAC,CAAC;YACH,YAAY,CAAC,OAAO,CAAC,kBAAkB,GAAG,IAAA,oBAAY,EAAC,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC;YACpF,OAAO,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QACxC,CAAC,CAAC;QAEF,MAAM,sBAAsB,GAAG,CAAC,OAAa,EAAE,SAAe,EAAE,EAAE;YAC9D,MAAM,kBAAkB,GAAG,oBAAY,CAAC,yBAAyB,CAC7D,YAAY,uBAEf,CAAC;YACF,oBAAY,CAAC,YAAY,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;YACzD,oBAAY,CAAC,YAAY,CAAC,kBAAkB,EAAE;gBAC1C,QAAQ,gBAA0B;gBAClC,IAAI,EAAE,GAAG;gBACT,eAAe,EAAE,IAAI;gBACrB,IAAI,EAAE,OAAO;aAChB,CAAC,CAAC;YACH,oBAAY,CAAC,YAAY,CAAC,kBAAkB,EAAE;gBAC1C,QAAQ,gBAA0B;gBAClC,IAAI,EAAE,SAAS;gBACf,eAAe,EAAE,IAAI;gBACrB,IAAI,EAAE,SAAS;aAClB,CAAC,CAAC;YACH,kBAAkB,CAAC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;YAC1D,OAAO,kBAAkB,CAAC;QAC9B,CAAC,CAAC;QAEF,MAAM,mBAAmB,GAAG,CAAC,OAAa,EAAE,EAAE;YAC1C,MAAM,eAAe,GAAG,oBAAY,CAAC,yBAAyB,CAAC,SAAS,uBAA+B,CAAC;YACxG,oBAAY,CAAC,YAAY,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;YACtD,oBAAY,CAAC,YAAY,CAAC,eAAe,EAAE;gBACvC,QAAQ,gBAA0B;gBAClC,IAAI,EAAE,GAAG;gBACT,eAAe,EAAE,IAAI;gBACrB,IAAI,EAAE,OAAO;aAChB,CAAC,CAAC;YACH,eAAe,CAAC,OAAO,CAAC,kBAAkB,GAAG,gBAAQ,CAAC,cAAc,EAAE,CAAC;YACvE,OAAO,eAAe,CAAC;QAC3B,CAAC,CAAC;QAEF,MAAM,YAAY,GAAmB,EAAE,CAAC;QACxC,MAAM,YAAY,GAAmB,EAAE,CAAC;QACxC,MAAM,mBAAmB,GAAmB,EAAE,CAAC;QAE/C,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,eAAe,GAAG,iBAAS,CAAC,eAAe,CAAC,iBAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;YAE9F,YAAY,CAAC,IAAI,CACb,eAAe,CAAC,eAAe,EAAE,KAAK,CAAC,SAAS,EAAE,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAClG,CAAC;YAEF,IAAI,KAAK,CAAC,UAAU,EAAE;gBAClB,YAAY,CAAC,IAAI,CACb,eAAe,CACX,eAAe,EACf,KAAK,CAAC,SAAS;gBACf,oBAAoB,CAAC,IAAI;gBACzB,qBAAqB,CAAC,IAAI;gBAC1B,6BAA6B,CAAC,IAAI,CACrC,CACJ,CAAC;aACL;iBAAM;gBACH,YAAY,CAAC,IAAI,CACb,eAAe,CACX,eAAe,EACf,KAAK,CAAC,SAAS;gBACf,oBAAoB,CAAC,IAAI;gBACzB,qBAAqB,CAAC,KAAK;gBAC3B,6BAA6B,CAAC,IAAI,CACrC,CACJ,CAAC;gBACF,YAAY,CAAC,IAAI,CACb,eAAe,CACX,eAAe,EACf,KAAK,CAAC,SAAS;gBACf,oBAAoB,CAAC,IAAI;gBACzB,qBAAqB,CAAC,KAAK;gBAC3B,6BAA6B,CAAC,KAAK,CACtC,CACJ,CAAC;aACL;YAED,iDAAiD;YACjD,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;gBACnB,IAAA,6BAAW,EAAC,YAAY,EAAE,gBAAgB,CAAC,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;aACjF;YAED,mBAAmB,CAAC,IAAI,CAAC,sBAAsB,CAAC,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QACvF,CAAC,CAAC,CAAC;QAEH,wEAAwE;QACxE,sDAAsD;QACtD,IAAI,YAAY,EAAE;YACd,MAAM,iBAAiB,GAAG,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YACzE,IAAI,iBAAiB,IAAI,IAAA,2BAAmB,EAAC,iBAAiB,CAAC,EAAE;gBAC7D,MAAM,qBAAqB,GAAG,iBAAS,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;gBAC3E,YAAY,CAAC,IAAI,CACb,eAAe,CACX,qBAAqB,EACrB,gBAAQ,CAAC,cAAc,EAAE;gBACzB,oBAAoB,CAAC,KAAK;gBAC1B,qBAAqB,CAAC,IAAI,CAC7B,CACJ,CAAC;gBACF,YAAY,CAAC,IAAI,CACb,eAAe,CAAC,qBAAqB,EAAE,eAAe,CAAC,SAAS,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAC/F,CAAC;aACL;SACJ;QAED,qEAAqE;QACrE,sDAAsD;QACtD,MAAM,OAAO,GAAG,iBAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACpD,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,eAAO,CAAC,MAAM,EAAE,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1F,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,eAAO,CAAC,MAAM,EAAE,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;QAEzF,WAAW,CAAC,GAAG,CACX,KAAK,EACL,eAAM,CAAC,cAAc,sBAA0B,8BAAsB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAC9F,CAAC;QACF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YACzB,WAAW,CAAC,GAAG,CACX,KAAK,EACL,eAAM,CAAC,cAAc,sBAA0B,8BAAsB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAC9F,CAAC;SACL;QACD,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE;YAChC,WAAW,CAAC,GAAG,CACX,YAAY,EACZ,eAAM,CAAC,cAAc,sBAA0B,8BAAsB,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CACrG,CAAC;SACL;QACD,WAAW,CAAC,GAAG,CAAC,aAAa,EAAE,eAAM,CAAC,cAAc,sBAA0B,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE7G,oEAAoE;QACpE,sCAAsC;QACtC,IAAI,YAAY,IAAI,wBAAwB,EAAE;YAC1C,MAAM,WAAW,GAAG,oBAAY,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;YACpE,oBAAY,CAAC,YAAY,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAClD,WAAW,CAAC,OAAO,CAAC,kBAAkB,GAAG,gBAAQ,CAAC,cAAc,EAAE,CAAC;YACnE,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,eAAM,CAAC,cAAc,sBAA0B,WAAW,CAAC,CAAC,CAAC;YAEtF,MAAM,aAAa,GAAG,oBAAY,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;YACxE,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YACpD,IAAI,SAAS,GAAG,SAAS,CAAC,iBAAiB,EAAE,CAAC;YAC9C,IAAI,SAAS,IAAI,IAAA,2BAAmB,EAAC,SAAS,CAAC,EAAE;gBAC7C,SAAS,GAAG,IAAA,gCAAoB,EAC5B,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC,EACpC;oBACI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE;oBACrC,EAAE,IAAI,EAAE,mBAAW,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;iBACrD;gBACD,4BAA4B,CAAC,IAAI,CACpC,CAAC;aACL;iBAAM;gBACH,SAAS,GAAG,mBAAW,CAAC,MAAM,EAAE,CAAC;aACpC;YACD,aAAa,CAAC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;YACrD,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,eAAM,CAAC,cAAc,sBAA0B,aAAa,CAAC,CAAC,CAAC;SAC7F;KACJ;AACL,CAAC;AAhWD,0EAgWC;AAED,SAAgB,2BAA2B,CAAC,SAAwB,EAAE,SAAoB,EAAE,aAAa,GAAG,KAAK;IAC7G,kDAAkD;IAClD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,gBAAgB,EAAE;QACrC,MAAM,OAAO,GAAG,IAAI,GAAG,EAA0B,CAAC;QAClD,oCAAoC,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAEpE,mCAAmC;QACnC,SAAS,CAAC,OAAO,CAAC,gBAAgB,GAAG,OAAO,CAAC;KAChD;IAED,MAAM,cAAc,GAAG,IAAA,mDAAuC,EAAC,SAAS,CAAC,CAAC;IAE1E,0EAA0E;IAC1E,MAAM,OAAO,GAAG,IAAI,GAAG,EAA0B,CAAC;IAClD,SAAS,CAAC,OAAO,CAAC,gBAAiB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACvD,MAAM,OAAO,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;QAC7B,OAAO,CAAC,SAAS,GAAG,IAAA,+BAAmB,EAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,8DAA8D;IAC9D,IAAI,aAAa,IAAI,SAAS,CAAC,wBAAwB,EAAE;QACrD,SAAS,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACtD,MAAM,OAAO,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;YAC7B,OAAO,CAAC,SAAS,GAAG,IAAA,+BAAmB,EAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;YAC3E,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;KACN;IAED,OAAO,OAAO,CAAC;AACnB,CAAC;AA9BD,kEA8BC;AAED,SAAS,gCAAgC,CACrC,SAAwB,EACxB,SAAyB,EACzB,WAAwB;IAExB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAEzD,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAChC,IAAI,KAAK,CAAC,QAAQ,gCAAqC,EAAE;YACrD,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,2BAA2B,EAAE,EAAE,KAAK,CAAC,CAAC;YAC9E,OAAO;SACV;QAED,IAAI,KAAK,CAAC,aAAa,CAAC,QAAQ,wBAA6B,EAAE;YAC3D,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,kBAAkB,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;YACnF,OAAO;SACV;QAED,MAAM,SAAS,GAAG,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,SAAS,EAAE;YACZ,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,kBAAkB,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;YACnF,OAAO;SACV;QAED,IAAI,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YACzB,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,oBAAoB,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;YACrF,OAAO;SACV;QAED,8CAA8C;QAC9C,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAExB,MAAM,SAAS,GAAG,IAAI,eAAM,wBAA4B,CAAC;QACzD,MAAM,WAAW,GAAwB;YACrC,IAAI,kBAA0B;YAC9B,IAAI,EAAE,KAAK,CAAC,aAAa;YACzB,IAAI,EAAE,QAAQ,CAAC,QAAQ;YACvB,kBAAkB,EAAE,KAAK,CAAC,eAAe;YACzC,uBAAuB,EAAE,IAAI;YAC7B,KAAK,EAAE,IAAA,qCAAqB,EACxB,KAAK,CAAC,aAAa,CAAC,KAAK,EACzB,qBAAS,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,EACrC,QAAQ,CAAC,KAAK,CACjB;YACD,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,eAAe,EAAE,KAAK;SACzB,CAAC;QACF,SAAS,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAEtC,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,iEAAiE;IACjE,uBAAuB;IACvB,SAAS,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,oCAAoC,CACzC,SAAwB,EACxB,SAAoB,EACpB,MAAmC,EACnC,cAAc,GAAG,CAAC;IAElB,IAAA,cAAM,EAAC,iBAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9C,IAAI,cAAc,GAAG,6BAAqB,EAAE;QACxC,OAAO;KACV;IACD,cAAc,EAAE,CAAC;IAEjB,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;QACpD,IAAI,IAAA,2BAAmB,EAAC,aAAa,CAAC,IAAI,iBAAS,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE;YACjF,MAAM,wBAAwB,GAAG,IAAA,mCAAuB,EAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YACnF,IAAA,cAAM,EAAC,IAAA,eAAO,EAAC,wBAAwB,CAAC,CAAC,CAAC;YAC1C,oCAAoC,CAAC,SAAS,EAAE,wBAAwB,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;SACrG;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,IAAA,mDAAuC,EAAC,SAAS,CAAC,CAAC;IAE1E,kDAAkD;IAClD,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;QAC9C,IAAI,CAAC,MAAM,CAAC,yBAAyB,EAAE,EAAE;YACrC,gEAAgE;YAChE,MAAM,QAAQ,GAAG,IAAA,2CAA6B,EAAC,MAAM,CAAC,CAAC;YACvD,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,qBAA6B,EAAE;gBACxD,IAAI,SAAS,GAAG,SAAS,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;gBAC3D,SAAS,GAAG,IAAA,+BAAmB,EAAC,SAAS,EAAE,cAAc,CAAC,CAAC;gBAE3D,IAAI,UAAU,GAAG,CAAC,iBAAS,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;gBAE3D,IAAI,2BAA2B,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE;oBAChD,UAAU,GAAG,IAAI,CAAC;iBACrB;qBAAM,IAAI,8BAA8B,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE;oBAC1D,UAAU,GAAG,KAAK,CAAC;iBACtB;gBAED,+DAA+D;gBAC/D,6DAA6D;gBAC7D,wBAAwB;gBACxB,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACvC,IAAI,aAAa,EAAE;oBACf,IAAI,CAAC,IAAA,kBAAU,EAAC,aAAa,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE;wBACjD,MAAM,IAAI,GAAG,IAAI,+BAAkB,EAAE,CAAC;wBACtC,IAAI,CAAC,UAAU,CACX,oBAAS,CAAC,kBAAkB,CAAC,0BAA0B,EAAE,CAAC,MAAM,CAAC;4BAC7D,UAAU,EAAE,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC;4BACxD,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC;yBAC5C,CAAC,CACL,CAAC;wBACF,SAAS,CAAC,aAAa,CACnB,gBAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,uBAAuB,EACrF,gCAAc,CAAC,uBAAuB,EACtC,oBAAS,CAAC,UAAU,CAAC,0BAA0B,EAAE,CAAC,MAAM,CAAC;4BACrD,IAAI;yBACP,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,EACrB,QAAQ,CAAC,IAAI,CAChB,CAAC;qBACL;iBACJ;gBAED,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE;oBACb,SAAS;oBACT,UAAU;oBACV,UAAU,EAAE,KAAK;iBACpB,CAAC,CAAC;aACN;SACJ;IACL,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAgB,0BAA0B,CACtC,SAAwB,EACxB,QAAmB,EACnB,OAAkB,EAClB,IAAoC,EACpC,cAA0C,EAC1C,KAAsB,EACtB,cAAc,GAAG,CAAC;IAElB,IAAI,kBAAkB,GAAG,IAAI,CAAC;IAC9B,MAAM,WAAW,GAAG,2BAA2B,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACrE,MAAM,UAAU,GAAG,2BAA2B,CAAC,SAAS,EAAE,OAAO,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAE7F,WAAW,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE;QACpC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,EAAE;YACX,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,GAAG,UAAU,CAC7B,oBAAS,CAAC,kBAAkB,CAAC,qBAAqB,EAAE,CAAC,MAAM,CAAC;gBACxD,IAAI;gBACJ,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC;aACrC,CAAC,CACL,CAAC;YACF,kBAAkB,GAAG,KAAK,CAAC;SAC9B;aAAM;YACH,IAAI,SAAS,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;gBAC9C,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,GAAG,UAAU,CAC7B,oBAAS,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC,MAAM,CAAC;oBACzD,IAAI;oBACJ,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC;iBACtC,CAAC,CACL,CAAC;gBACF,kBAAkB,GAAG,KAAK,CAAC;aAC9B;iBAAM,IAAI,CAAC,SAAS,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,EAAE;gBACrD,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,GAAG,UAAU,CAC7B,oBAAS,CAAC,kBAAkB,CAAC,yBAAyB,EAAE,CAAC,MAAM,CAAC;oBAC5D,IAAI;oBACJ,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC;iBACtC,CAAC,CACL,CAAC;gBACF,kBAAkB,GAAG,KAAK,CAAC;aAC9B;YAED,MAAM,OAAO,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,EAAE,CAAC;YACvC,IACI,CAAC,SAAS,CAAC,UAAU,CACjB,SAAS,CAAC,SAAS,EACnB,QAAQ,CAAC,SAAS,EAClB,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,EACzB,cAAc;YACd,uBAAuB,CAAC,SAAS,EACjC,KAAK,EACL,cAAc,CACjB,EACH;gBACE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,CAAC,oBAAS,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACxF,kBAAkB,GAAG,KAAK,CAAC;aAC9B;SACJ;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,kBAAkB,CAAC;AAC9B,CAAC;AA7DD,gEA6DC;AAED,sEAAsE;AACtE,qEAAqE;AACrE,sEAAsE;AACtE,oEAAoE;AACpE,oEAAoE;AACpE,4DAA4D;AAC5D,SAAgB,iBAAiB,CAC7B,SAAwB,EACxB,SAAoB,EACpB,QAA8B,EAC9B,UAAgC,EAChC,YAAiC;IAEjC,IAAA,cAAM,EAAC,IAAA,uBAAe,EAAC,SAAS,CAAC,CAAC,CAAC;IACnC,IAAA,cAAM,EAAC,iBAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9C,IAAA,cAAM,EAAC,QAAQ,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,CAAC,CAAC;IAE9C,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,MAAM,eAAe,GAAG,IAAI,GAAG,EAA0B,CAAC;IAE1D,IAAI,cAA0C,CAAC;IAC/C,IAAI,gBAAgB,GAAG,SAAS,CAAC;IAEjC,IAAI,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;QAC7C,cAAc,GAAG,IAAI,+BAAc,CAAC,IAAA,6BAAiB,EAAC,SAAS,CAAC,CAAC,CAAC;QAElE,0DAA0D;QAC1D,IAAI,SAAS,CAAC,aAAa,EAAE;YACzB,gBAAgB,GAAG,iBAAS,CAAC,sBAAsB,CAC/C,SAAS;YACT,mBAAmB,CAAC,SAAS;YAC7B,4BAA4B,CAAC,KAAK,CACrC,CAAC;SACL;KACJ;IAED,MAAM,SAAS,GAAG,2BAA2B,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IAE3E,QAAQ,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE;QACtC,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC;QACnC,IAAI,CAAC,IAAA,uBAAe,EAAC,OAAO,CAAC,IAAI,CAAC,iBAAS,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAA,yBAAa,EAAC,OAAO,CAAC,EAAE;YAC9F,OAAO,GAAG,KAAK,CAAC;SACnB;aAAM;YACH,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAsB,CAAC;YAChD,MAAM,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAE5C,IAAI,CAAC,WAAW,EAAE;gBACd,uCAAuC;gBACvC,OAAO,GAAG,KAAK,CAAC;gBAChB,IAAI,YAAY,EAAE;oBACd,MAAM,OAAO,GAAG,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,cAAc,EAAE,CAAC;oBAC/C,OAAO,CAAC,UAAU,CACd,oBAAS,CAAC,kBAAkB,CAAC,uBAAuB,EAAE,CAAC,MAAM,CAAC;wBAC1D,IAAI,EAAE,OAAO,CAAC,YAAsB;wBACpC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;qBAClE,CAAC,CACL,CAAC;oBAEF,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;iBAC5C;aACJ;iBAAM;gBACH,gDAAgD;gBAChD,MAAM,OAAO,GAAG,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,cAAc,EAAE,CAAC;gBAC/C,IACI,CAAC,SAAS,CAAC,UAAU,CACjB,WAAW,CAAC,SAAS,EACrB,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,EACtB,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,EACzB,cAAc;gBACd,uBAAuB,CAAC,SAAS,qCAEpC,EACH;oBACE,IAAI,OAAO,EAAE;wBACT,OAAO,CAAC,UAAU,CACd,oBAAS,CAAC,kBAAkB,CAAC,0BAA0B,EAAE,CAAC,MAAM,CAAC;4BAC7D,IAAI,EAAE,OAAO,CAAC,YAAsB;4BACpC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;yBACpD,CAAC,CACL,CAAC;wBAEF,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;qBAC5C;oBACD,OAAO,GAAG,KAAK,CAAC;iBACnB;gBAED,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;oBACzB,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE;wBAC1B,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI;wBACjC,UAAU,EAAE,KAAK;wBACjB,UAAU,EAAE,IAAI;qBACnB,CAAC,CAAC;iBACN;gBAED,WAAW,CAAC,UAAU,GAAG,IAAI,CAAC;aACjC;SACJ;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,EAAE;QACV,OAAO,SAAS,CAAC;KACpB;IAED,wCAAwC;IACxC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QAC9B,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;YACvC,IAAI,YAAY,EAAE;gBACd,YAAY,CAAC,UAAU,CACnB,oBAAS,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC,MAAM,CAAC;oBACzD,IAAI;oBACJ,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC;iBACvC,CAAC,CACL,CAAC;aACL;YACD,OAAO,GAAG,KAAK,CAAC;SACnB;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,EAAE;QACV,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,oBAAoB,GAAG,cAAc;QACvC,CAAC,CAAE,IAAA,+BAAmB,EAAC,gBAAgB,EAAE,cAAc,CAAe;QACtE,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO,eAAe,CAAC,IAAI,KAAK,CAAC;QAC7B,CAAC,CAAC,oBAAoB;QACtB,CAAC,CAAC,iBAAS,CAAC,gCAAgC,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;AAC5F,CAAC;AA3HD,8CA2HC;AAED,SAAgB,yBAAyB,CACrC,SAAwB,EACxB,IAAe,EACf,QAAmB,EACnB,KAAqB;IAErB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QAC7G,OAAO,EAAE,IAAI,EAAE,mBAAW,CAAC,MAAM,EAAE,EAAE,CAAC;KACzC;IAED,gEAAgE;IAChE,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,mBAA4B,EAAE;QACxG,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,OAAO,GAAG,2BAA2B,CAAC,SAAS,EAAE,QAAQ,EAAE,mBAAmB,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC;IAE7G,MAAM,eAAe,GAAG,SAAS,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;IACrF,MAAM,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC;IACvC,IAAI,IAAI,GAAG,IAAI,+BAAkB,EAAE,CAAC;IACpC,IAAI,8BAA8B,GAAG,IAAI,CAAC;IAE1C,MAAM,aAAa,GAAG,IAAA,uBAAW,EAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;;QACrD,IAAI,IAAA,sBAAc,EAAC,OAAO,CAAC,EAAE;YACzB,OAAO,OAAO,CAAC;SAClB;QAED,IAAI,IAAA,uBAAe,EAAC,OAAO,CAAC,IAAI,iBAAS,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;YACjE,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;gBACpC,sDAAsD;gBACtD,mDAAmD;gBACnD,OAAO,mBAAW,CAAC,MAAM,EAAE,CAAC;aAC/B;YAED,uDAAuD;YACvD,MAAM,SAAS,GAAG,OAAO,CAAC,YAAsB,CAAC;YACjD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACrC,IAAI,CAAC,KAAK,EAAE;gBACR,IAAI,CAAC,UAAU,CACX,oBAAS,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC;oBAC/C,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC;iBACtC,CAAC,CACL,CAAC;gBACF,8BAA8B,GAAG,KAAK,CAAC;gBACvC,OAAO,mBAAW,CAAC,MAAM,EAAE,CAAC;aAC/B;iBAAM,IAAI,CAAC,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;gBAC1E,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,EAAE,yBAAyB,CAAC,IAAI,CAAC,EAAE;oBACxE,IAAI,CAAC,UAAU,CACX,oBAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC;wBACjD,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC;qBACtC,CAAC,CACL,CAAC;iBACL;aACJ;YAED,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;gBACxB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,MAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,IAAI,mCAAI,eAAO,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE;oBACvF,8BAA8B,GAAG,KAAK,CAAC;iBAC1C;aACJ;iBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,KAAK,CAAC,UAAU,EAAE;gBACnD,IAAI,CAAC,UAAU,CACX,oBAAS,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC;oBACrD,IAAI,EAAE,SAAS;iBAClB,CAAC,CACL,CAAC;gBACF,8BAA8B,GAAG,KAAK,CAAC;aAC1C;YAED,OAAO,KAAK,CAAC,SAAS,CAAC;SAC1B;QAED,IAAI,CAAC,UAAU,CACX,oBAAS,CAAC,kBAAkB,CAAC,oBAAoB,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CACrG,CAAC;QACF,8BAA8B,GAAG,KAAK,CAAC;QACvC,OAAO,mBAAW,CAAC,MAAM,EAAE,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,4EAA4E;IAC5E,wEAAwE;IACxE,uBAAuB;IACvB,IAAI,KAAK,CAAC,mBAAmB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAE;QACtF,IAAI,GAAG,KAAK,CAAC,mBAAmB,CAAC;KACpC;IAED,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE;QACjB,IAAI,aAAqB,CAAC;QAC1B,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;YACxB,aAAa,GAAG,oBAAS,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;SACvD;aAAM,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;YAC/B,aAAa,GAAG,oBAAS,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC;SAC1D;aAAM;YACH,aAAa,GAAG,oBAAS,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC;SAC1D;QAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACpD,SAAS,CAAC,aAAa,CACnB,8BAA8B;YAC1B,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,gCAAgC;YAC7D,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,uBAAuB,EACxD,8BAA8B;YAC1B,CAAC,CAAC,gCAAc,CAAC,gCAAgC;YACjD,CAAC,CAAC,gCAAc,CAAC,uBAAuB,EAC5C,aAAa,GAAG,IAAI,CAAC,SAAS,EAAE,EAChC,IAAI,CACP,CAAC;KACL;IAED,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;AACjF,CAAC;AAhHD,8DAgHC;AAED,sEAAsE;AACtE,kBAAkB;AAClB,SAAgB,sBAAsB,CAAC,SAAoB,EAAE,GAAW;;IACpE,uFAAuF;IACvF,kFAAkF;IAClF,gBAAgB;IAChB,IAAI,CAAC,iBAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,gBAAgB,EAAE;QAC/E,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5D,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,EAAE;QAChC,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,eAAe,GAAG,MAAA,SAAS,CAAC,wBAAwB,0CAAE,GAAG,CAAC,GAAG,CAAC,CAAC;IACrE,IAAI,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,UAAU,EAAE;QAC7B,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,eAAe,GAAG,SAAS,CAAC,wBAAwB;QACtD,CAAC,CAAC,IAAI,GAAG,CAAyB,SAAS,CAAC,wBAAwB,CAAC;QACrE,CAAC,CAAC,IAAI,GAAG,EAA0B,CAAC;IACxC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAEhG,OAAO,iBAAS,CAAC,gCAAgC,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;AAClF,CAAC;AAxBD,wDAwBC;AAED,SAAS,2BAA2B,CAAC,SAAwB,EAAE,MAAc;IACzE,OAAO,MAAM,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1C,IAAI,IAAI,CAAC,IAAI,qBAA6B,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YACpE,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,aAAa,GAAG,SAAS,CAAC,gCAAgC,CAAC,IAAI,CAAC,kBAAkB,EAAE;YACtF,UAAU,EAAE,IAAI;YAChB,aAAa,EAAE,IAAI;SACtB,CAAC,CAAC;QAEH,OAAO,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC;IACtC,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,8BAA8B,CAAC,SAAwB,EAAE,MAAc;IAC5E,OAAO,MAAM,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1C,IAAI,IAAI,CAAC,IAAI,qBAA6B,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YACpE,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,aAAa,GAAG,SAAS,CAAC,gCAAgC,CAAC,IAAI,CAAC,kBAAkB,EAAE;YACtF,UAAU,EAAE,IAAI;YAChB,aAAa,EAAE,IAAI;SACtB,CAAC,CAAC;QAEH,OAAO,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC;IACzC,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"typedDicts.js","sourceRoot":"","sources":["../../../src/analyzer/typedDicts.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;;AAEH,+DAAwD;AACxD,2CAAyC;AACzC,qDAA0D;AAC1D,+DAA2D;AAC3D,2DAAgE;AAChE,mDAAgD;AAChD,uDAAqD;AAWrD,qEAAuD;AAEvD,iEAAmD;AACnD,qCAA4D;AAC5D,+CAA8D;AAE9D,mCAqBiB;AACjB,2CAUqB;AACrB,qDAAkD;AAElD,gDAAgD;AAChD,SAAgB,mBAAmB,CAC/B,SAAwB,EACxB,SAAyB,EACzB,cAAyB,EACzB,OAA2B;IAE3B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAEzD,6CAA6C;IAC7C,qEAAqE;IACrE,0DAA0D;IAC1D,IAAI,SAAS,GAAG,WAAW,CAAC;IAC5B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;QACtB,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,iBAAiB,EAAE,EAAE,SAAS,CAAC,CAAC;KAC3E;SAAM;QACH,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,IACI,OAAO,CAAC,gBAAgB,mBAA4B;YACpD,CAAC,OAAO,CAAC,eAAe;YACxB,OAAO,CAAC,eAAe,CAAC,QAAQ,wBAA6B,EAC/D;YACE,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,iBAAiB,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC;SACzG;aAAM;YACH,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC5E;KACJ;IAED,MAAM,SAAS,GAAG,iBAAS,CAAC,kBAAkB,CAC1C,SAAS,EACT,cAAc,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,EAC1E,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,QAAQ,4BAEjB,cAAc,CAAC,eAAe,CAAC,SAAS,CAAC;IACzC,uBAAuB,CAAC,SAAS,EACjC,cAAc,CAAC,OAAO,CAAC,kBAAkB,CAC5C,CAAC;IACF,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACnD,IAAA,mCAAuB,EAAC,SAAS,CAAC,CAAC;IAEnC,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;IAC7C,WAAW,CAAC,GAAG,CACX,WAAW,EACX,eAAM,CAAC,cAAc,CAAC,sDAA6D,EAAE,SAAS,CAAC,CAClG,CAAC;IAEF,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACpB,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,sBAAsB,EAAE,EAAE,SAAS,CAAC,CAAC;KAChF;SAAM;QACH,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAE9B,IACI,UAAU,CAAC,gBAAgB,mBAA4B;YACvD,UAAU,CAAC,eAAe;YAC1B,UAAU,CAAC,eAAe,CAAC,QAAQ,wBAA6B,EAClE;YACE,eAAe,GAAG,IAAI,CAAC;YAEvB,gCAAgC,CAAC,SAAS,EAAE,UAAU,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;SACxF;aAAM,IAAI,UAAU,CAAC,IAAI,EAAE;YACxB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;YACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACrC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBACzB,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE;oBACvC,SAAS;iBACZ;gBAED,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBAChC,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,oBAAoB,EAAE,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;oBACvF,SAAS;iBACZ;gBAED,8CAA8C;gBAC9C,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE/B,MAAM,SAAS,GAAG,IAAI,eAAM,wBAA4B,CAAC;gBACzD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBACzD,MAAM,WAAW,GAAwB;oBACrC,IAAI,kBAA0B;oBAC9B,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI,EAAE,QAAQ,CAAC,QAAQ;oBACvB,kBAAkB,EAAE,KAAK,CAAC,eAAe;oBACzC,uBAAuB,EAAE,IAAI;oBAC7B,KAAK,EAAE,IAAA,qCAAqB,EACxB,KAAK,CAAC,IAAI,CAAC,KAAK,EAChB,qBAAS,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,EACvC,QAAQ,CAAC,KAAK,CACjB;oBACD,UAAU,EAAE,QAAQ,CAAC,UAAU;oBAC/B,eAAe,EAAE,KAAK;iBACzB,CAAC;gBACF,SAAS,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;gBAEtC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;aAChD;SACJ;aAAM;YACH,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,sBAAsB,EAAE,EAAE,SAAS,CAAC,CAAC;SAChF;KACJ;IAED,IAAI,eAAe,EAAE;QACjB,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE;YACrB,IACI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;gBAChB,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO;gBACjC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe;gBAC3B,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,sBAA2B;gBAC9D,CAAC,CACG,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,mBAAsB;oBAC1D,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,kBAAqB,CAC5D,EACH;gBACE,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,mBAAmB,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC;aAC3G;iBAAM,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,mBAAsB,EAAE;gBACnE,SAAS,CAAC,OAAO,CAAC,KAAK,+BAAoC,CAAC;aAC/D;SACJ;QAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACpB,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,kBAAkB,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC;SAC1G;KACJ;IAED,+BAA+B,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAE3F,OAAO,SAAS,CAAC;AACrB,CAAC;AA/HD,kDA+HC;AAED,oFAAoF;AACpF,SAAgB,0BAA0B,CACtC,SAAwB,EACxB,QAAwB,EACxB,cAAyB;IAEzB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,aAAa,CAAC;IAEhC,MAAM,SAAS,GAAG,iBAAS,CAAC,kBAAkB,CAC1C,SAAS,EACT,cAAc,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,EACzE,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,QAAQ,4BAEjB,cAAc,CAAC,eAAe,CAAC,QAAQ,CAAC;IACxC,uBAAuB,CAAC,SAAS,EACjC,cAAc,CAAC,OAAO,CAAC,kBAAkB,CAC5C,CAAC;IACF,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACnD,IAAA,mCAAuB,EAAC,SAAS,CAAC,CAAC;IAEnC,gCAAgC,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAChF,+BAA+B,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAEzF,OAAO,SAAS,CAAC;AACrB,CAAC;AAzBD,gEAyBC;AAED,SAAgB,+BAA+B,CAC3C,SAAwB,EACxB,IAAgC,EAChC,SAAoB,EACpB,YAAqB;IAErB,IAAA,cAAM,EAAC,iBAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;IAE9C,+BAA+B;IAC/B,MAAM,OAAO,GAAG,oBAAY,CAAC,yBAAyB,CAAC,SAAS,4BAAsC,CAAC;IACvG,oBAAY,CAAC,YAAY,CAAC,OAAO,EAAE;QAC/B,QAAQ,gBAA0B;QAClC,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,IAAI;KACxB,CAAC,CAAC;IACH,oBAAY,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC3C,OAAO,CAAC,OAAO,CAAC,kBAAkB,GAAG,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAE1E,oDAAoD;IACpD,MAAM,aAAa,GAAG,oBAAY,CAAC,yBAAyB,CAAC,UAAU,uBAA+B,CAAC;IACvG,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;QACrC,QAAQ,gBAA0B;QAClC,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC;QAC1C,eAAe,EAAE,IAAI;KACxB,CAAC,CAAC;IACH,aAAa,CAAC,OAAO,CAAC,kBAAkB,GAAG,gBAAQ,CAAC,cAAc,EAAE,CAAC;IAErE,+CAA+C;IAC/C,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;QACrC,QAAQ,gBAA0B;QAClC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC;QAC1C,eAAe,EAAE,IAAI;KACxB,CAAC,CAAC;IAEH,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;QACrC,QAAQ,gBAA0B;QAClC,IAAI,EAAE,EAAE;QACR,IAAI,EAAE,mBAAW,CAAC,MAAM,EAAE;KAC7B,CAAC,CAAC;IAEH,mEAAmE;IACnE,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;QACrC,QAAQ,oBAA8B;QACtC,IAAI,EAAE,eAAO,CAAC,MAAM,EAAE;QACtB,eAAe,EAAE,IAAI;KACxB,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,oBAAY,CAAC,yBAAyB,CAAC,UAAU,uBAA+B,CAAC;IACvG,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;QACrC,QAAQ,gBAA0B;QAClC,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC;QAC1C,eAAe,EAAE,IAAI;KACxB,CAAC,CAAC;IACH,aAAa,CAAC,OAAO,CAAC,kBAAkB,GAAG,gBAAQ,CAAC,cAAc,EAAE,CAAC;IAErE,wDAAwD;IACxD,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;QACrC,QAAQ,oBAA8B;QACtC,IAAI,EAAE,eAAO,CAAC,MAAM,EAAE;QACtB,eAAe,EAAE,IAAI;KACxB,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,2BAA2B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAClE,IAAI,wBAAwB,GAAG,IAAI,CAAC;IACpC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QAC5B,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;YACrC,QAAQ,gBAA0B;YAClC,IAAI;YACJ,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,KAAK,CAAC,SAAS;YACrB,eAAe,EAAE,IAAI;SACxB,CAAC,CAAC;QAEH,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;YACrC,QAAQ,gBAA0B;YAClC,IAAI;YACJ,UAAU,EAAE,CAAC,KAAK,CAAC,UAAU;YAC7B,IAAI,EAAE,KAAK,CAAC,SAAS;YACrB,eAAe,EAAE,IAAI;SACxB,CAAC,CAAC;QAEH,IAAI,KAAK,CAAC,UAAU,EAAE;YAClB,wBAAwB,GAAG,KAAK,CAAC;SACpC;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;IAC7C,MAAM,QAAQ,GAAG,8BAAsB,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC;IAC/E,WAAW,CAAC,GAAG,CAAC,UAAU,EAAE,eAAM,CAAC,cAAc,sBAA0B,QAAQ,CAAC,CAAC,CAAC;IACtF,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,eAAM,CAAC,cAAc,sBAA0B,OAAO,CAAC,CAAC,CAAC;IAEpF,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAEvD,uEAAuE;IACvE,IAAI,IAAA,2BAAmB,EAAC,QAAQ,CAAC,EAAE;QAC/B,MAAM,SAAS,GAAsB;YACjC,QAAQ,gBAA0B;YAClC,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC;YAC1C,eAAe,EAAE,IAAI;SACxB,CAAC;QACF,MAAM,oBAAoB,GAAG,CAAC,IAAkB,EAAE,EAAE;YAChD,IAAI,cAAc,GAAG,mBAAW,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;YAC9D,cAAc,GAAG,mBAAW,CAAC,eAAe,CACxC,cAAc,EACd,IAAI,CAAC,OAAO,CAAC,cAAe,EAC5B,SAAS,CAAC,OAAO,CAAC,IAAI,mBAEzB,CAAC;YACF,OAAO,cAAc,CAAC;QAC1B,CAAC,CAAC;QAEF,MAAM,eAAe,GAAG,CACpB,OAAa,EACb,SAA2B,EAC3B,cAAuB,EACvB,eAAe,GAAG,KAAK,EACvB,uBAAuB,GAAG,KAAK,EACjC,EAAE;YACA,MAAM,WAAW,GAAG,oBAAY,CAAC,yBAAyB,CAAC,KAAK,uBAA+B,CAAC;YAChG,oBAAY,CAAC,YAAY,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAClD,WAAW,CAAC,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC5E,oBAAY,CAAC,YAAY,CAAC,WAAW,EAAE;gBACnC,QAAQ,gBAA0B;gBAClC,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,OAAO;gBACb,eAAe,EAAE,IAAI;aACxB,CAAC,CAAC;YAEH,IAAI,cAAc,EAAE;gBAChB,MAAM,cAAc,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;gBACzD,IAAI,gBAAsB,CAAC;gBAC3B,IAAI,UAAgB,CAAC;gBAErB,IAAI,eAAe,EAAE;oBACjB,yEAAyE;oBACzE,oDAAoD;oBACpD,gBAAgB,GAAG,eAAO,CAAC,MAAM,EAAE,CAAC;oBACpC,UAAU,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,eAAO,CAAC,MAAM,EAAE,CAAC;iBAC9C;qBAAM;oBACH,gBAAgB,GAAG,uBAAuB,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC;oBACrF,IAAI,SAAS,EAAE;wBACX,UAAU,GAAG,uBAAuB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAA,oBAAY,EAAC,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC;qBAChG;yBAAM;wBACH,UAAU,GAAG,cAAc,CAAC;qBAC/B;iBACJ;gBAED,oBAAY,CAAC,YAAY,CAAC,WAAW,EAAE;oBACnC,QAAQ,gBAA0B;oBAClC,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,gBAAgB;oBACtB,eAAe,EAAE,IAAI;iBACxB,CAAC,CAAC;gBACH,WAAW,CAAC,OAAO,CAAC,kBAAkB,GAAG,UAAU,CAAC;aACvD;iBAAM;gBACH,WAAW,CAAC,OAAO,CAAC,kBAAkB,GAAG,eAAe;oBACpD,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,IAAA,oBAAY,EAAC,CAAC,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,eAAO,CAAC,MAAM,EAAE,EAAE,gBAAQ,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;aAClF;YACD,OAAO,WAAW,CAAC;QACvB,CAAC,CAAC;QAEF,MAAM,gBAAgB,GAAG,CAAC,OAAa,EAAE,SAAe,EAAE,EAAE;YACxD,MAAM,QAAQ,GAAsB;gBAChC,QAAQ,gBAA0B;gBAClC,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,OAAO;gBACb,eAAe,EAAE,IAAI;aACxB,CAAC;YAEF,MAAM,YAAY,GAAG,oBAAY,CAAC,yBAAyB,CAAC,KAAK,uBAA+B,CAAC;YACjG,oBAAY,CAAC,YAAY,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;YACnD,oBAAY,CAAC,YAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YAClD,YAAY,CAAC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;YAEpD,MAAM,YAAY,GAAG,oBAAY,CAAC,yBAAyB,CAAC,KAAK,uBAA+B,CAAC;YACjG,oBAAY,CAAC,YAAY,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;YACnD,oBAAY,CAAC,YAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YAClD,YAAY,CAAC,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC7E,MAAM,cAAc,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC;YAC1D,oBAAY,CAAC,YAAY,CAAC,YAAY,EAAE;gBACpC,QAAQ,gBAA0B;gBAClC,IAAI,EAAE,SAAS;gBACf,eAAe,EAAE,IAAI;gBACrB,IAAI,EAAE,cAAc;gBACpB,UAAU,EAAE,IAAI;aACnB,CAAC,CAAC;YACH,YAAY,CAAC,OAAO,CAAC,kBAAkB,GAAG,IAAA,oBAAY,EAAC,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC;YACpF,OAAO,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QACxC,CAAC,CAAC;QAEF,MAAM,sBAAsB,GAAG,CAAC,OAAa,EAAE,SAAe,EAAE,EAAE;YAC9D,MAAM,kBAAkB,GAAG,oBAAY,CAAC,yBAAyB,CAC7D,YAAY,uBAEf,CAAC;YACF,oBAAY,CAAC,YAAY,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;YACzD,oBAAY,CAAC,YAAY,CAAC,kBAAkB,EAAE;gBAC1C,QAAQ,gBAA0B;gBAClC,IAAI,EAAE,GAAG;gBACT,eAAe,EAAE,IAAI;gBACrB,IAAI,EAAE,OAAO;aAChB,CAAC,CAAC;YACH,oBAAY,CAAC,YAAY,CAAC,kBAAkB,EAAE;gBAC1C,QAAQ,gBAA0B;gBAClC,IAAI,EAAE,SAAS;gBACf,eAAe,EAAE,IAAI;gBACrB,IAAI,EAAE,SAAS;aAClB,CAAC,CAAC;YACH,kBAAkB,CAAC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;YAC1D,OAAO,kBAAkB,CAAC;QAC9B,CAAC,CAAC;QAEF,MAAM,mBAAmB,GAAG,CAAC,OAAa,EAAE,EAAE;YAC1C,MAAM,eAAe,GAAG,oBAAY,CAAC,yBAAyB,CAAC,SAAS,uBAA+B,CAAC;YACxG,oBAAY,CAAC,YAAY,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;YACtD,oBAAY,CAAC,YAAY,CAAC,eAAe,EAAE;gBACvC,QAAQ,gBAA0B;gBAClC,IAAI,EAAE,GAAG;gBACT,eAAe,EAAE,IAAI;gBACrB,IAAI,EAAE,OAAO;aAChB,CAAC,CAAC;YACH,eAAe,CAAC,OAAO,CAAC,kBAAkB,GAAG,gBAAQ,CAAC,cAAc,EAAE,CAAC;YACvE,OAAO,eAAe,CAAC;QAC3B,CAAC,CAAC;QAEF,MAAM,YAAY,GAAmB,EAAE,CAAC;QACxC,MAAM,YAAY,GAAmB,EAAE,CAAC;QACxC,MAAM,mBAAmB,GAAmB,EAAE,CAAC;QAE/C,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,eAAe,GAAG,iBAAS,CAAC,eAAe,CAAC,iBAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;YAE9F,YAAY,CAAC,IAAI,CACb,eAAe,CAAC,eAAe,EAAE,KAAK,CAAC,SAAS,EAAE,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAClG,CAAC;YAEF,IAAI,KAAK,CAAC,UAAU,EAAE;gBAClB,YAAY,CAAC,IAAI,CACb,eAAe,CACX,eAAe,EACf,KAAK,CAAC,SAAS;gBACf,oBAAoB,CAAC,IAAI;gBACzB,qBAAqB,CAAC,IAAI;gBAC1B,6BAA6B,CAAC,IAAI,CACrC,CACJ,CAAC;aACL;iBAAM;gBACH,YAAY,CAAC,IAAI,CACb,eAAe,CACX,eAAe,EACf,KAAK,CAAC,SAAS;gBACf,oBAAoB,CAAC,IAAI;gBACzB,qBAAqB,CAAC,KAAK;gBAC3B,6BAA6B,CAAC,IAAI,CACrC,CACJ,CAAC;gBACF,YAAY,CAAC,IAAI,CACb,eAAe,CACX,eAAe,EACf,KAAK,CAAC,SAAS;gBACf,oBAAoB,CAAC,IAAI;gBACzB,qBAAqB,CAAC,KAAK;gBAC3B,6BAA6B,CAAC,KAAK,CACtC,CACJ,CAAC;aACL;YAED,iDAAiD;YACjD,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;gBACnB,IAAA,6BAAW,EAAC,YAAY,EAAE,gBAAgB,CAAC,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;aACjF;YAED,mBAAmB,CAAC,IAAI,CAAC,sBAAsB,CAAC,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QACvF,CAAC,CAAC,CAAC;QAEH,wEAAwE;QACxE,sDAAsD;QACtD,IAAI,YAAY,EAAE;YACd,MAAM,iBAAiB,GAAG,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YACzE,IAAI,iBAAiB,IAAI,IAAA,2BAAmB,EAAC,iBAAiB,CAAC,EAAE;gBAC7D,MAAM,qBAAqB,GAAG,iBAAS,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;gBAC3E,YAAY,CAAC,IAAI,CACb,eAAe,CACX,qBAAqB,EACrB,gBAAQ,CAAC,cAAc,EAAE;gBACzB,oBAAoB,CAAC,KAAK;gBAC1B,qBAAqB,CAAC,IAAI,CAC7B,CACJ,CAAC;gBACF,YAAY,CAAC,IAAI,CACb,eAAe,CAAC,qBAAqB,EAAE,eAAe,CAAC,SAAS,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAC/F,CAAC;aACL;SACJ;QAED,qEAAqE;QACrE,sDAAsD;QACtD,MAAM,OAAO,GAAG,iBAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACpD,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,eAAO,CAAC,MAAM,EAAE,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1F,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,eAAO,CAAC,MAAM,EAAE,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;QAEzF,WAAW,CAAC,GAAG,CACX,KAAK,EACL,eAAM,CAAC,cAAc,sBAA0B,8BAAsB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAC9F,CAAC;QACF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YACzB,WAAW,CAAC,GAAG,CACX,KAAK,EACL,eAAM,CAAC,cAAc,sBAA0B,8BAAsB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAC9F,CAAC;SACL;QACD,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE;YAChC,WAAW,CAAC,GAAG,CACX,YAAY,EACZ,eAAM,CAAC,cAAc,sBAA0B,8BAAsB,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CACrG,CAAC;SACL;QACD,WAAW,CAAC,GAAG,CAAC,aAAa,EAAE,eAAM,CAAC,cAAc,sBAA0B,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE7G,oEAAoE;QACpE,sCAAsC;QACtC,IAAI,YAAY,IAAI,wBAAwB,EAAE;YAC1C,MAAM,WAAW,GAAG,oBAAY,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;YACpE,oBAAY,CAAC,YAAY,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAClD,WAAW,CAAC,OAAO,CAAC,kBAAkB,GAAG,gBAAQ,CAAC,cAAc,EAAE,CAAC;YACnE,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,eAAM,CAAC,cAAc,sBAA0B,WAAW,CAAC,CAAC,CAAC;YAEtF,MAAM,aAAa,GAAG,oBAAY,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;YACxE,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YACpD,IAAI,SAAS,GAAG,SAAS,CAAC,iBAAiB,EAAE,CAAC;YAC9C,IAAI,SAAS,IAAI,IAAA,2BAAmB,EAAC,SAAS,CAAC,EAAE;gBAC7C,SAAS,GAAG,IAAA,gCAAoB,EAC5B,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC,EACpC;oBACI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE;oBACrC,EAAE,IAAI,EAAE,mBAAW,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;iBACrD;gBACD,4BAA4B,CAAC,IAAI,CACpC,CAAC;aACL;iBAAM;gBACH,SAAS,GAAG,mBAAW,CAAC,MAAM,EAAE,CAAC;aACpC;YACD,aAAa,CAAC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;YACrD,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,eAAM,CAAC,cAAc,sBAA0B,aAAa,CAAC,CAAC,CAAC;SAC7F;KACJ;AACL,CAAC;AAhWD,0EAgWC;AAED,SAAgB,2BAA2B,CAAC,SAAwB,EAAE,SAAoB,EAAE,aAAa,GAAG,KAAK;IAC7G,kDAAkD;IAClD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,gBAAgB,EAAE;QACrC,MAAM,OAAO,GAAG,IAAI,GAAG,EAA0B,CAAC;QAClD,oCAAoC,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAEpE,mCAAmC;QACnC,SAAS,CAAC,OAAO,CAAC,gBAAgB,GAAG,OAAO,CAAC;KAChD;IAED,MAAM,cAAc,GAAG,IAAA,mDAAuC,EAAC,SAAS,CAAC,CAAC;IAE1E,0EAA0E;IAC1E,MAAM,OAAO,GAAG,IAAI,GAAG,EAA0B,CAAC;IAClD,SAAS,CAAC,OAAO,CAAC,gBAAiB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACvD,MAAM,OAAO,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;QAC7B,OAAO,CAAC,SAAS,GAAG,IAAA,+BAAmB,EAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,8DAA8D;IAC9D,IAAI,aAAa,IAAI,SAAS,CAAC,wBAAwB,EAAE;QACrD,SAAS,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACtD,MAAM,OAAO,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;YAC7B,OAAO,CAAC,SAAS,GAAG,IAAA,+BAAmB,EAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;YAC3E,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;KACN;IAED,OAAO,OAAO,CAAC;AACnB,CAAC;AA9BD,kEA8BC;AAED,SAAS,gCAAgC,CACrC,SAAwB,EACxB,SAAyB,EACzB,WAAwB;IAExB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAEzD,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAChC,IAAI,KAAK,CAAC,QAAQ,gCAAqC,EAAE;YACrD,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,2BAA2B,EAAE,EAAE,KAAK,CAAC,CAAC;YAC9E,OAAO;SACV;QAED,IAAI,KAAK,CAAC,aAAa,CAAC,QAAQ,wBAA6B,EAAE;YAC3D,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,kBAAkB,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;YACnF,OAAO;SACV;QAED,MAAM,SAAS,GAAG,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,SAAS,EAAE;YACZ,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,kBAAkB,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;YACnF,OAAO;SACV;QAED,IAAI,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YACzB,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,oBAAoB,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;YACrF,OAAO;SACV;QAED,8CAA8C;QAC9C,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAExB,MAAM,SAAS,GAAG,IAAI,eAAM,wBAA4B,CAAC;QACzD,MAAM,WAAW,GAAwB;YACrC,IAAI,kBAA0B;YAC9B,IAAI,EAAE,KAAK,CAAC,aAAa;YACzB,IAAI,EAAE,QAAQ,CAAC,QAAQ;YACvB,kBAAkB,EAAE,KAAK,CAAC,eAAe;YACzC,uBAAuB,EAAE,IAAI;YAC7B,KAAK,EAAE,IAAA,qCAAqB,EACxB,KAAK,CAAC,aAAa,CAAC,KAAK,EACzB,qBAAS,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,EACrC,QAAQ,CAAC,KAAK,CACjB;YACD,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,eAAe,EAAE,KAAK;SACzB,CAAC;QACF,SAAS,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAEtC,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,iEAAiE;IACjE,uBAAuB;IACvB,SAAS,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,oCAAoC,CACzC,SAAwB,EACxB,SAAoB,EACpB,MAAmC,EACnC,cAAc,GAAG,CAAC;IAElB,IAAA,cAAM,EAAC,iBAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9C,IAAI,cAAc,GAAG,6BAAqB,EAAE;QACxC,OAAO;KACV;IACD,cAAc,EAAE,CAAC;IAEjB,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;QACpD,IAAI,IAAA,2BAAmB,EAAC,aAAa,CAAC,IAAI,iBAAS,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE;YACjF,MAAM,wBAAwB,GAAG,IAAA,mCAAuB,EAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YACnF,IAAA,cAAM,EAAC,IAAA,eAAO,EAAC,wBAAwB,CAAC,CAAC,CAAC;YAC1C,oCAAoC,CAAC,SAAS,EAAE,wBAAwB,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;SACrG;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,IAAA,mDAAuC,EAAC,SAAS,CAAC,CAAC;IAE1E,kDAAkD;IAClD,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;QAC9C,IAAI,CAAC,MAAM,CAAC,yBAAyB,EAAE,EAAE;YACrC,gEAAgE;YAChE,MAAM,QAAQ,GAAG,IAAA,2CAA6B,EAAC,MAAM,CAAC,CAAC;YACvD,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,qBAA6B,EAAE;gBACxD,IAAI,SAAS,GAAG,SAAS,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;gBAC3D,SAAS,GAAG,IAAA,+BAAmB,EAAC,SAAS,EAAE,cAAc,CAAC,CAAC;gBAE3D,IAAI,UAAU,GAAG,CAAC,iBAAS,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;gBAE3D,IAAI,2BAA2B,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE;oBAChD,UAAU,GAAG,IAAI,CAAC;iBACrB;qBAAM,IAAI,8BAA8B,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE;oBAC1D,UAAU,GAAG,KAAK,CAAC;iBACtB;gBAED,+DAA+D;gBAC/D,6DAA6D;gBAC7D,wBAAwB;gBACxB,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACvC,IAAI,aAAa,EAAE;oBACf,IAAI,CAAC,IAAA,kBAAU,EAAC,aAAa,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE;wBACjD,MAAM,IAAI,GAAG,IAAI,+BAAkB,EAAE,CAAC;wBACtC,IAAI,CAAC,UAAU,CACX,oBAAS,CAAC,kBAAkB,CAAC,0BAA0B,EAAE,CAAC,MAAM,CAAC;4BAC7D,UAAU,EAAE,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC;4BACxD,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC;yBAC5C,CAAC,CACL,CAAC;wBACF,SAAS,CAAC,aAAa,CACnB,gBAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,uBAAuB,EACrF,gCAAc,CAAC,uBAAuB,EACtC,oBAAS,CAAC,UAAU,CAAC,0BAA0B,EAAE,CAAC,MAAM,CAAC;4BACrD,IAAI;yBACP,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,EACrB,QAAQ,CAAC,IAAI,CAChB,CAAC;qBACL;iBACJ;gBAED,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE;oBACb,SAAS;oBACT,UAAU;oBACV,UAAU,EAAE,KAAK;iBACpB,CAAC,CAAC;aACN;SACJ;IACL,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAgB,0BAA0B,CACtC,SAAwB,EACxB,QAAmB,EACnB,OAAkB,EAClB,IAAoC,EACpC,cAA0C,EAC1C,KAAsB,EACtB,cAAc,GAAG,CAAC;IAElB,IAAI,kBAAkB,GAAG,IAAI,CAAC;IAC9B,MAAM,WAAW,GAAG,2BAA2B,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACrE,MAAM,UAAU,GAAG,2BAA2B,CAAC,SAAS,EAAE,OAAO,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAE7F,WAAW,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE;QACpC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,EAAE;YACX,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,GAAG,UAAU,CAC7B,oBAAS,CAAC,kBAAkB,CAAC,qBAAqB,EAAE,CAAC,MAAM,CAAC;gBACxD,IAAI;gBACJ,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC;aACrC,CAAC,CACL,CAAC;YACF,kBAAkB,GAAG,KAAK,CAAC;SAC9B;aAAM;YACH,IAAI,SAAS,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;gBAC9C,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,GAAG,UAAU,CAC7B,oBAAS,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC,MAAM,CAAC;oBACzD,IAAI;oBACJ,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC;iBACtC,CAAC,CACL,CAAC;gBACF,kBAAkB,GAAG,KAAK,CAAC;aAC9B;iBAAM,IAAI,CAAC,SAAS,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,EAAE;gBACrD,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,GAAG,UAAU,CAC7B,oBAAS,CAAC,kBAAkB,CAAC,yBAAyB,EAAE,CAAC,MAAM,CAAC;oBAC5D,IAAI;oBACJ,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC;iBACtC,CAAC,CACL,CAAC;gBACF,kBAAkB,GAAG,KAAK,CAAC;aAC9B;YAED,MAAM,OAAO,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,EAAE,CAAC;YACvC,IACI,CAAC,SAAS,CAAC,UAAU,CACjB,SAAS,CAAC,SAAS,EACnB,QAAQ,CAAC,SAAS,EAClB,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,EACzB,cAAc;YACd,uBAAuB,CAAC,SAAS,EACjC,KAAK,EACL,cAAc,CACjB,EACH;gBACE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,CAAC,oBAAS,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACxF,kBAAkB,GAAG,KAAK,CAAC;aAC9B;SACJ;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,kBAAkB,CAAC;AAC9B,CAAC;AA7DD,gEA6DC;AAED,sEAAsE;AACtE,qEAAqE;AACrE,sEAAsE;AACtE,oEAAoE;AACpE,oEAAoE;AACpE,4DAA4D;AAC5D,SAAgB,iBAAiB,CAC7B,SAAwB,EACxB,SAAoB,EACpB,QAA8B,EAC9B,UAAgC,EAChC,YAAiC;IAEjC,IAAA,cAAM,EAAC,IAAA,uBAAe,EAAC,SAAS,CAAC,CAAC,CAAC;IACnC,IAAA,cAAM,EAAC,iBAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9C,IAAA,cAAM,EAAC,QAAQ,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,CAAC,CAAC;IAE9C,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,MAAM,eAAe,GAAG,IAAI,GAAG,EAA0B,CAAC;IAE1D,IAAI,cAA0C,CAAC;IAC/C,IAAI,gBAAgB,GAAG,SAAS,CAAC;IAEjC,IAAI,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;QAC7C,cAAc,GAAG,IAAI,+BAAc,CAAC,IAAA,6BAAiB,EAAC,SAAS,CAAC,CAAC,CAAC;QAElE,0DAA0D;QAC1D,IAAI,SAAS,CAAC,aAAa,EAAE;YACzB,gBAAgB,GAAG,iBAAS,CAAC,sBAAsB,CAC/C,SAAS;YACT,mBAAmB,CAAC,SAAS;YAC7B,4BAA4B,CAAC,KAAK,CACrC,CAAC;SACL;KACJ;IAED,MAAM,SAAS,GAAG,2BAA2B,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IAE3E,QAAQ,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE;QACtC,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC;QACnC,IAAI,CAAC,IAAA,uBAAe,EAAC,OAAO,CAAC,IAAI,CAAC,iBAAS,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAA,yBAAa,EAAC,OAAO,CAAC,EAAE;YAC9F,OAAO,GAAG,KAAK,CAAC;SACnB;aAAM;YACH,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAsB,CAAC;YAChD,MAAM,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAE5C,IAAI,CAAC,WAAW,EAAE;gBACd,uCAAuC;gBACvC,OAAO,GAAG,KAAK,CAAC;gBAChB,IAAI,YAAY,EAAE;oBACd,MAAM,OAAO,GAAG,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,cAAc,EAAE,CAAC;oBAC/C,OAAO,CAAC,UAAU,CACd,oBAAS,CAAC,kBAAkB,CAAC,uBAAuB,EAAE,CAAC,MAAM,CAAC;wBAC1D,IAAI,EAAE,OAAO,CAAC,YAAsB;wBACpC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;qBAClE,CAAC,CACL,CAAC;oBAEF,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;iBAC5C;aACJ;iBAAM;gBACH,gDAAgD;gBAChD,MAAM,OAAO,GAAG,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,cAAc,EAAE,CAAC;gBAC/C,IACI,CAAC,SAAS,CAAC,UAAU,CACjB,WAAW,CAAC,SAAS,EACrB,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,EACtB,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,EACzB,cAAc;gBACd,uBAAuB,CAAC,SAAS,qCAEpC,EACH;oBACE,IAAI,OAAO,EAAE;wBACT,OAAO,CAAC,UAAU,CACd,oBAAS,CAAC,kBAAkB,CAAC,0BAA0B,EAAE,CAAC,MAAM,CAAC;4BAC7D,IAAI,EAAE,OAAO,CAAC,YAAsB;4BACpC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;yBACpD,CAAC,CACL,CAAC;wBAEF,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;qBAC5C;oBACD,OAAO,GAAG,KAAK,CAAC;iBACnB;gBAED,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;oBACzB,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE;wBAC1B,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI;wBACjC,UAAU,EAAE,KAAK;wBACjB,UAAU,EAAE,IAAI;qBACnB,CAAC,CAAC;iBACN;gBAED,WAAW,CAAC,UAAU,GAAG,IAAI,CAAC;aACjC;SACJ;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,EAAE;QACV,OAAO,SAAS,CAAC;KACpB;IAED,wCAAwC;IACxC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QAC9B,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;YACvC,IAAI,YAAY,EAAE;gBACd,YAAY,CAAC,UAAU,CACnB,oBAAS,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC,MAAM,CAAC;oBACzD,IAAI;oBACJ,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC;iBACvC,CAAC,CACL,CAAC;aACL;YACD,OAAO,GAAG,KAAK,CAAC;SACnB;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,EAAE;QACV,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,oBAAoB,GAAG,cAAc;QACvC,CAAC,CAAE,IAAA,+BAAmB,EAAC,gBAAgB,EAAE,cAAc,CAAe;QACtE,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO,eAAe,CAAC,IAAI,KAAK,CAAC;QAC7B,CAAC,CAAC,oBAAoB;QACtB,CAAC,CAAC,iBAAS,CAAC,gCAAgC,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;AAC5F,CAAC;AA3HD,8CA2HC;AAED,SAAgB,yBAAyB,CACrC,SAAwB,EACxB,IAAe,EACf,QAAmB,EACnB,KAAqB;IAErB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,SAAS,CAAC,QAAQ,CAAC,oBAAS,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QAC7G,OAAO,EAAE,IAAI,EAAE,mBAAW,CAAC,MAAM,EAAE,EAAE,CAAC;KACzC;IAED,gEAAgE;IAChE,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,mBAA4B,EAAE;QACxG,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,OAAO,GAAG,2BAA2B,CAAC,SAAS,EAAE,QAAQ,EAAE,mBAAmB,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC;IAE7G,MAAM,eAAe,GAAG,SAAS,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;IACrF,MAAM,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC;IACvC,IAAI,IAAI,GAAG,IAAI,+BAAkB,EAAE,CAAC;IACpC,IAAI,8BAA8B,GAAG,IAAI,CAAC;IAE1C,MAAM,aAAa,GAAG,IAAA,uBAAW,EAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;;QACrD,IAAI,IAAA,sBAAc,EAAC,OAAO,CAAC,EAAE;YACzB,OAAO,OAAO,CAAC;SAClB;QAED,IAAI,IAAA,uBAAe,EAAC,OAAO,CAAC,IAAI,iBAAS,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;YACjE,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;gBACpC,sDAAsD;gBACtD,mDAAmD;gBACnD,OAAO,mBAAW,CAAC,MAAM,EAAE,CAAC;aAC/B;YAED,uDAAuD;YACvD,MAAM,SAAS,GAAG,OAAO,CAAC,YAAsB,CAAC;YACjD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACrC,IAAI,CAAC,KAAK,EAAE;gBACR,IAAI,CAAC,UAAU,CACX,oBAAS,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC;oBAC/C,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC;iBACtC,CAAC,CACL,CAAC;gBACF,8BAA8B,GAAG,KAAK,CAAC;gBACvC,OAAO,mBAAW,CAAC,MAAM,EAAE,CAAC;aAC/B;iBAAM,IAAI,CAAC,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;gBAC1E,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,EAAE,yBAAyB,CAAC,IAAI,CAAC,EAAE;oBACxE,IAAI,CAAC,UAAU,CACX,oBAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC;wBACjD,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC;qBACtC,CAAC,CACL,CAAC;iBACL;aACJ;YAED,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;gBACxB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,MAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,IAAI,mCAAI,eAAO,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE;oBACvF,8BAA8B,GAAG,KAAK,CAAC;iBAC1C;aACJ;iBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,KAAK,CAAC,UAAU,EAAE;gBACnD,IAAI,CAAC,UAAU,CACX,oBAAS,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC;oBACrD,IAAI,EAAE,SAAS;iBAClB,CAAC,CACL,CAAC;gBACF,8BAA8B,GAAG,KAAK,CAAC;aAC1C;YAED,OAAO,KAAK,CAAC,SAAS,CAAC;SAC1B;QAED,IAAI,CAAC,UAAU,CACX,oBAAS,CAAC,kBAAkB,CAAC,oBAAoB,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CACrG,CAAC;QACF,8BAA8B,GAAG,KAAK,CAAC;QACvC,OAAO,mBAAW,CAAC,MAAM,EAAE,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,4EAA4E;IAC5E,wEAAwE;IACxE,uBAAuB;IACvB,IAAI,KAAK,CAAC,mBAAmB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAE;QACtF,IAAI,GAAG,KAAK,CAAC,mBAAmB,CAAC;KACpC;IAED,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE;QACjB,IAAI,aAAqB,CAAC;QAC1B,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;YACxB,aAAa,GAAG,oBAAS,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;SACvD;aAAM,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;YAC/B,aAAa,GAAG,oBAAS,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC;SAC1D;aAAM;YACH,aAAa,GAAG,oBAAS,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC;SAC1D;QAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACpD,SAAS,CAAC,aAAa,CACnB,8BAA8B;YAC1B,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,gCAAgC;YAC7D,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,uBAAuB,EACxD,8BAA8B;YAC1B,CAAC,CAAC,gCAAc,CAAC,gCAAgC;YACjD,CAAC,CAAC,gCAAc,CAAC,uBAAuB,EAC5C,aAAa,GAAG,IAAI,CAAC,SAAS,EAAE,EAChC,IAAI,CACP,CAAC;KACL;IAED,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;AACjF,CAAC;AAhHD,8DAgHC;AAED,sEAAsE;AACtE,kBAAkB;AAClB,SAAgB,sBAAsB,CAAC,SAAoB,EAAE,GAAW;;IACpE,uFAAuF;IACvF,kFAAkF;IAClF,gBAAgB;IAChB,IAAI,CAAC,iBAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,gBAAgB,EAAE;QAC/E,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5D,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,EAAE;QAChC,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,eAAe,GAAG,MAAA,SAAS,CAAC,wBAAwB,0CAAE,GAAG,CAAC,GAAG,CAAC,CAAC;IACrE,IAAI,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,UAAU,EAAE;QAC7B,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,eAAe,GAAG,SAAS,CAAC,wBAAwB;QACtD,CAAC,CAAC,IAAI,GAAG,CAAyB,SAAS,CAAC,wBAAwB,CAAC;QACrE,CAAC,CAAC,IAAI,GAAG,EAA0B,CAAC;IACxC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAEhG,OAAO,iBAAS,CAAC,gCAAgC,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;AAClF,CAAC;AAxBD,wDAwBC;AAED,SAAS,2BAA2B,CAAC,SAAwB,EAAE,MAAc;IACzE,OAAO,MAAM,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1C,IAAI,IAAI,CAAC,IAAI,qBAA6B,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YACpE,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,aAAa,GAAG,SAAS,CAAC,gCAAgC,CAAC,IAAI,CAAC,kBAAkB,EAAE;YACtF,UAAU,EAAE,IAAI;YAChB,aAAa,EAAE,IAAI;SACtB,CAAC,CAAC;QAEH,OAAO,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC;IACtC,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,8BAA8B,CAAC,SAAwB,EAAE,MAAc;IAC5E,OAAO,MAAM,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1C,IAAI,IAAI,CAAC,IAAI,qBAA6B,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YACpE,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,aAAa,GAAG,SAAS,CAAC,gCAAgC,CAAC,IAAI,CAAC,kBAAkB,EAAE;YACtF,UAAU,EAAE,IAAI;YAChB,aAAa,EAAE,IAAI;SACtB,CAAC,CAAC;QAEH,OAAO,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC;IACzC,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1,4 +1,4 @@
1
- import { ExpressionNode, NameNode, ParameterCategory } from '../parser/parseNodes';
1
+ import { ArgumentNode, ExpressionNode, NameNode, ParameterCategory } from '../parser/parseNodes';
2
2
  import { FunctionDeclaration } from './declaration';
3
3
  import { Symbol, SymbolTable } from './symbol';
4
4
  export declare const enum TypeCategory {
@@ -25,6 +25,7 @@ export declare type UnionableType = UnboundType | UnknownType | AnyType | NoneTy
25
25
  export declare type Type = UnionableType | NeverType | UnionType;
26
26
  export declare type TypeVarScopeId = string;
27
27
  export declare const WildcardTypeVarScopeId = "*";
28
+ export declare const InScopePlaceholderScopeId = "-";
28
29
  export declare class EnumLiteral {
29
30
  classFullName: string;
30
31
  className: string;
@@ -116,6 +117,7 @@ export interface DataClassEntry {
116
117
  defaultValueExpression?: ExpressionNode | undefined;
117
118
  includeInInit: boolean;
118
119
  type: Type;
120
+ converter?: ArgumentNode | undefined;
119
121
  }
120
122
  export interface TypedDictEntry {
121
123
  valueType: Type;
@@ -276,7 +278,6 @@ export declare const enum FunctionTypeFlags {
276
278
  Generator = 16,
277
279
  DisableDefaultChecks = 32,
278
280
  SynthesizedMethod = 64,
279
- SkipConstructorCheck = 128,
280
281
  Overloaded = 256,
281
282
  Async = 512,
282
283
  WrapReturnTypeInAwait = 1024,
@@ -299,13 +300,14 @@ interface FunctionDetails {
299
300
  declaredReturnType?: Type | undefined;
300
301
  declaration?: FunctionDeclaration | undefined;
301
302
  typeVarScopeId?: TypeVarScopeId | undefined;
302
- constructorTypeVarScopeId?: TypeVarScopeId | undefined;
303
303
  builtInName?: string | undefined;
304
304
  docString?: string | undefined;
305
305
  deprecatedMessage?: string | undefined;
306
306
  decoratorDataClassBehaviors?: DataClassBehaviors | undefined;
307
307
  paramSpec?: TypeVarType | undefined;
308
308
  rescopedTypeParameters?: TypeVarType[];
309
+ constructorTypeVarScopeId?: TypeVarScopeId | undefined;
310
+ paramSpecTypeVarScopeId?: TypeVarScopeId | undefined;
309
311
  }
310
312
  export interface SpecializedFunctionTypes {
311
313
  parameterTypes: Type[];
@@ -351,7 +353,6 @@ export declare namespace FunctionType {
351
353
  function isAbstractMethod(type: FunctionType): boolean;
352
354
  function isGenerator(type: FunctionType): boolean;
353
355
  function isSynthesizedMethod(type: FunctionType): boolean;
354
- function isSkipConstructorCheck(type: FunctionType): boolean;
355
356
  function isOverloaded(type: FunctionType): boolean;
356
357
  function isDefaultParameterCheckDisabled(type: FunctionType): boolean;
357
358
  function isAsync(type: FunctionType): boolean;
@@ -467,6 +468,7 @@ export interface TypeVarType extends TypeBase {
467
468
  isVariadicInUnion?: boolean | undefined;
468
469
  paramSpecAccess?: ParamSpecAccess;
469
470
  computedVariance?: Variance;
471
+ isInScopePlaceholder?: boolean;
470
472
  }
471
473
  export declare namespace TypeVarType {
472
474
  function createInstance(name: string): TypeVarType;
@@ -480,6 +482,7 @@ export declare namespace TypeVarType {
480
482
  function cloneAsInvariant(type: TypeVarType): TypeVarType;
481
483
  function cloneForParamSpecAccess(type: TypeVarType, access: ParamSpecAccess | undefined): TypeVarType;
482
484
  function cloneAsSpecializedSelf(type: TypeVarType, specializedBoundType: Type): TypeVarType;
485
+ function cloneAsInScopePlaceholder(type: TypeVarType): TypeVarType;
483
486
  function makeNameWithScope(name: string, scopeId: string): string;
484
487
  function addConstraint(typeVarType: TypeVarType, constraintType: Type): void;
485
488
  function getNameWithScope(typeVarType: TypeVarType): string;
@@ -8,8 +8,8 @@
8
8
  * Representation of types used during type analysis within Python.
9
9
  */
10
10
  Object.defineProperty(exports, "__esModule", { value: true });
11
- exports.removeNoneFromUnion = exports.removeUnbound = exports.cleanIncompleteUnknown = exports.removeIncompleteUnknownFromUnion = exports.removeUnknownFromUnion = exports.isTypeSame = exports.getTypeAliasInfo = exports.isOverloadedFunction = exports.isFunction = exports.isParamSpec = exports.isUnpacked = exports.isUnpackedClass = exports.isUnpackedVariadicTypeVar = exports.isVariadicTypeVar = exports.isTypeVar = exports.isModule = exports.isClassInstance = exports.isInstantiableClass = exports.isClass = exports.isPossiblyUnbound = exports.isUnion = exports.isUnbound = exports.isAnyOrUnknown = exports.isUnknown = exports.isAny = exports.isNoneTypeClass = exports.isNoneInstance = exports.isNever = exports.TypeVarType = exports.TypeVarScopeType = exports.Variance = exports.UnionType = exports.TypeCondition = exports.AnyType = exports.NeverType = exports.NoneType = exports.OverloadedFunctionType = exports.FunctionType = exports.FunctionTypeFlags = exports.ClassType = exports.ClassTypeFlags = exports.ModuleType = exports.UnknownType = exports.UnboundType = exports.TypeBase = exports.maxTypeRecursionCount = exports.EnumLiteral = exports.WildcardTypeVarScopeId = exports.TypeFlags = exports.TypeCategory = void 0;
12
- exports.isSameWithoutLiteralValue = exports.combineTypes = exports.findSubtype = exports.removeFromUnion = void 0;
11
+ exports.removeUnbound = exports.cleanIncompleteUnknown = exports.removeIncompleteUnknownFromUnion = exports.removeUnknownFromUnion = exports.isTypeSame = exports.getTypeAliasInfo = exports.isOverloadedFunction = exports.isFunction = exports.isParamSpec = exports.isUnpacked = exports.isUnpackedClass = exports.isUnpackedVariadicTypeVar = exports.isVariadicTypeVar = exports.isTypeVar = exports.isModule = exports.isClassInstance = exports.isInstantiableClass = exports.isClass = exports.isPossiblyUnbound = exports.isUnion = exports.isUnbound = exports.isAnyOrUnknown = exports.isUnknown = exports.isAny = exports.isNoneTypeClass = exports.isNoneInstance = exports.isNever = exports.TypeVarType = exports.TypeVarScopeType = exports.Variance = exports.UnionType = exports.TypeCondition = exports.AnyType = exports.NeverType = exports.NoneType = exports.OverloadedFunctionType = exports.FunctionType = exports.FunctionTypeFlags = exports.ClassType = exports.ClassTypeFlags = exports.ModuleType = exports.UnknownType = exports.UnboundType = exports.TypeBase = exports.maxTypeRecursionCount = exports.EnumLiteral = exports.InScopePlaceholderScopeId = exports.WildcardTypeVarScopeId = exports.TypeFlags = exports.TypeCategory = void 0;
12
+ exports.isSameWithoutLiteralValue = exports.combineTypes = exports.findSubtype = exports.removeFromUnion = exports.removeNoneFromUnion = void 0;
13
13
  const debug_1 = require("../common/debug");
14
14
  var TypeCategory;
15
15
  (function (TypeCategory) {
@@ -56,6 +56,7 @@ var TypeFlags;
56
56
  TypeFlags[TypeFlags["SpecialForm"] = 8] = "SpecialForm";
57
57
  })(TypeFlags = exports.TypeFlags || (exports.TypeFlags = {}));
58
58
  exports.WildcardTypeVarScopeId = '*';
59
+ exports.InScopePlaceholderScopeId = '-';
59
60
  class EnumLiteral {
60
61
  constructor(classFullName, className, itemName, itemType) {
61
62
  this.classFullName = classFullName;
@@ -780,10 +781,6 @@ var FunctionTypeFlags;
780
781
  // Method has no declaration in user code, it's synthesized; used
781
782
  // for implied methods such as those used in namedtuple, dataclass, etc.
782
783
  FunctionTypeFlags[FunctionTypeFlags["SynthesizedMethod"] = 64] = "SynthesizedMethod";
783
- // For some synthesized classes (in particular, NamedTuple), the
784
- // __init__ method is created with default parameters, so we will
785
- // skip the constructor check for these methods.
786
- FunctionTypeFlags[FunctionTypeFlags["SkipConstructorCheck"] = 128] = "SkipConstructorCheck";
787
784
  // Function is decorated with @overload
788
785
  FunctionTypeFlags[FunctionTypeFlags["Overloaded"] = 256] = "Overloaded";
789
786
  // Function is declared with async keyword
@@ -1004,6 +1001,9 @@ var FunctionType;
1004
1001
  return newFunction;
1005
1002
  }
1006
1003
  FunctionType.cloneWithDocString = cloneWithDocString;
1004
+ // Creates a new function based on a solved ParamSpec. The input type is assumed to
1005
+ // have a signature that ends in "*args: P.args, **kwargs: P.kwargs". These will be
1006
+ // replaced by the parameters in the ParamSpec.
1007
1007
  function cloneForParamSpecApplication(type, paramSpecValue) {
1008
1008
  const newFunction = TypeBase.cloneType(type);
1009
1009
  // Make a shallow clone of the details.
@@ -1044,6 +1044,10 @@ var FunctionType;
1044
1044
  if (!newFunction.details.docString) {
1045
1045
  newFunction.details.docString = paramSpecValue.details.docString;
1046
1046
  }
1047
+ // Note the TypeVar scope ID of the original captured function. This
1048
+ // allows any unsolved TypeVars within that scope to be solved when the
1049
+ // resulting function is called.
1050
+ newFunction.details.paramSpecTypeVarScopeId = paramSpecValue.details.typeVarScopeId;
1047
1051
  return newFunction;
1048
1052
  }
1049
1053
  FunctionType.cloneForParamSpecApplication = cloneForParamSpecApplication;
@@ -1148,10 +1152,6 @@ var FunctionType;
1148
1152
  return (type.details.flags & 64 /* SynthesizedMethod */) !== 0;
1149
1153
  }
1150
1154
  FunctionType.isSynthesizedMethod = isSynthesizedMethod;
1151
- function isSkipConstructorCheck(type) {
1152
- return (type.details.flags & 128 /* SkipConstructorCheck */) !== 0;
1153
- }
1154
- FunctionType.isSkipConstructorCheck = isSkipConstructorCheck;
1155
1155
  function isOverloaded(type) {
1156
1156
  return (type.details.flags & 256 /* Overloaded */) !== 0;
1157
1157
  }
@@ -1584,6 +1584,16 @@ var TypeVarType;
1584
1584
  return newInstance;
1585
1585
  }
1586
1586
  TypeVarType.cloneAsSpecializedSelf = cloneAsSpecializedSelf;
1587
+ function cloneAsInScopePlaceholder(type) {
1588
+ if (type.isInScopePlaceholder) {
1589
+ return type;
1590
+ }
1591
+ const newInstance = TypeBase.cloneType(type);
1592
+ newInstance.isInScopePlaceholder = true;
1593
+ newInstance.scopeId = exports.InScopePlaceholderScopeId;
1594
+ return newInstance;
1595
+ }
1596
+ TypeVarType.cloneAsInScopePlaceholder = cloneAsInScopePlaceholder;
1587
1597
  function makeNameWithScope(name, scopeId) {
1588
1598
  return `${name}.${scopeId}`;
1589
1599
  }