@zzzen/pyright-internal 1.2.0-dev.20240526 → 1.2.0-dev.20240609

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 (160) hide show
  1. package/dist/analyzer/analyzerNodeInfo.d.ts +2 -2
  2. package/dist/analyzer/binder.d.ts +3 -3
  3. package/dist/analyzer/binder.js +46 -40
  4. package/dist/analyzer/binder.js.map +1 -1
  5. package/dist/analyzer/checker.d.ts +3 -3
  6. package/dist/analyzer/checker.js +82 -65
  7. package/dist/analyzer/checker.js.map +1 -1
  8. package/dist/analyzer/codeFlowEngine.js +4 -4
  9. package/dist/analyzer/codeFlowTypes.js +3 -3
  10. package/dist/analyzer/constraintSolver.js +26 -34
  11. package/dist/analyzer/constraintSolver.js.map +1 -1
  12. package/dist/analyzer/constructorTransform.js +1 -1
  13. package/dist/analyzer/constructorTransform.js.map +1 -1
  14. package/dist/analyzer/constructors.js +12 -8
  15. package/dist/analyzer/constructors.js.map +1 -1
  16. package/dist/analyzer/dataClasses.js +1 -1
  17. package/dist/analyzer/dataClasses.js.map +1 -1
  18. package/dist/analyzer/declarationUtils.js +3 -3
  19. package/dist/analyzer/enums.d.ts +1 -1
  20. package/dist/analyzer/enums.js +25 -22
  21. package/dist/analyzer/enums.js.map +1 -1
  22. package/dist/analyzer/importResolver.d.ts +1 -0
  23. package/dist/analyzer/importResolver.js +6 -3
  24. package/dist/analyzer/importResolver.js.map +1 -1
  25. package/dist/analyzer/importStatementUtils.js +6 -6
  26. package/dist/analyzer/namedTuples.js +2 -2
  27. package/dist/analyzer/operations.js +8 -9
  28. package/dist/analyzer/operations.js.map +1 -1
  29. package/dist/analyzer/parameterUtils.js +1 -13
  30. package/dist/analyzer/parameterUtils.js.map +1 -1
  31. package/dist/analyzer/parseTreeUtils.d.ts +1 -1
  32. package/dist/analyzer/parseTreeUtils.js +94 -94
  33. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  34. package/dist/analyzer/parseTreeWalker.d.ts +5 -5
  35. package/dist/analyzer/parseTreeWalker.js +64 -64
  36. package/dist/analyzer/parseTreeWalker.js.map +1 -1
  37. package/dist/analyzer/patternMatching.js +5 -5
  38. package/dist/analyzer/patternMatching.js.map +1 -1
  39. package/dist/analyzer/program.d.ts +1 -1
  40. package/dist/analyzer/program.js +23 -29
  41. package/dist/analyzer/program.js.map +1 -1
  42. package/dist/analyzer/properties.js +2 -2
  43. package/dist/analyzer/properties.js.map +1 -1
  44. package/dist/analyzer/protocols.js +2 -2
  45. package/dist/analyzer/protocols.js.map +1 -1
  46. package/dist/analyzer/scope.d.ts +1 -1
  47. package/dist/analyzer/scope.js +2 -2
  48. package/dist/analyzer/scope.js.map +1 -1
  49. package/dist/analyzer/sourceFile.js +3 -3
  50. package/dist/analyzer/sourceFile.js.map +1 -1
  51. package/dist/analyzer/sourceMapper.js +4 -4
  52. package/dist/analyzer/staticExpressions.js +3 -3
  53. package/dist/analyzer/testWalker.js +1 -1
  54. package/dist/analyzer/tracePrinter.js +4 -4
  55. package/dist/analyzer/typeDocStringUtils.js +1 -1
  56. package/dist/analyzer/typeEvaluator.js +568 -519
  57. package/dist/analyzer/typeEvaluator.js.map +1 -1
  58. package/dist/analyzer/typeEvaluatorTypes.d.ts +2 -3
  59. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  60. package/dist/analyzer/typeGuards.js +9 -8
  61. package/dist/analyzer/typeGuards.js.map +1 -1
  62. package/dist/analyzer/typePrinter.js +21 -14
  63. package/dist/analyzer/typePrinter.js.map +1 -1
  64. package/dist/analyzer/typeStubWriter.js +1 -1
  65. package/dist/analyzer/typeUtils.d.ts +4 -5
  66. package/dist/analyzer/typeUtils.js +100 -128
  67. package/dist/analyzer/typeUtils.js.map +1 -1
  68. package/dist/analyzer/typeVarContext.js +4 -0
  69. package/dist/analyzer/typeVarContext.js.map +1 -1
  70. package/dist/analyzer/typedDicts.d.ts +1 -2
  71. package/dist/analyzer/typedDicts.js +5 -17
  72. package/dist/analyzer/typedDicts.js.map +1 -1
  73. package/dist/analyzer/types.d.ts +11 -12
  74. package/dist/analyzer/types.js +137 -169
  75. package/dist/analyzer/types.js.map +1 -1
  76. package/dist/backgroundAnalysisBase.d.ts +1 -1
  77. package/dist/backgroundAnalysisBase.js +3 -3
  78. package/dist/commands/dumpFileDebugInfoCommand.d.ts +1 -1
  79. package/dist/commands/dumpFileDebugInfoCommand.js +15 -15
  80. package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
  81. package/dist/common/configOptions.d.ts +2 -1
  82. package/dist/common/configOptions.js +12 -3
  83. package/dist/common/configOptions.js.map +1 -1
  84. package/dist/common/realFileSystem.d.ts +3 -3
  85. package/dist/common/realFileSystem.js +6 -6
  86. package/dist/common/realFileSystem.js.map +1 -1
  87. package/dist/common/textEditTracker.js +5 -5
  88. package/dist/common/uri/fileUri.js +1 -0
  89. package/dist/common/uri/fileUri.js.map +1 -1
  90. package/dist/common/uri/uri.d.ts +3 -0
  91. package/dist/common/uri/uri.js +16 -0
  92. package/dist/common/uri/uri.js.map +1 -1
  93. package/dist/languageServerBase.js +1 -1
  94. package/dist/languageServerBase.js.map +1 -1
  95. package/dist/languageService/autoImporter.js +4 -4
  96. package/dist/languageService/callHierarchyProvider.js +1 -1
  97. package/dist/languageService/completionProvider.js +30 -30
  98. package/dist/languageService/completionProvider.js.map +1 -1
  99. package/dist/languageService/documentSymbolCollector.js +7 -7
  100. package/dist/languageService/hoverProvider.js +2 -2
  101. package/dist/languageService/importSorter.js +1 -1
  102. package/dist/languageService/referencesProvider.js +4 -4
  103. package/dist/languageService/referencesProvider.js.map +1 -1
  104. package/dist/languageService/symbolIndexer.js +3 -3
  105. package/dist/languageService/tooltipUtils.js +2 -2
  106. package/dist/languageService/workspaceSymbolProvider.js +1 -1
  107. package/dist/localization/localize.d.ts +7 -1
  108. package/dist/localization/localize.js +4 -1
  109. package/dist/localization/localize.js.map +1 -1
  110. package/dist/localization/package.nls.cs.json +5 -3
  111. package/dist/localization/package.nls.de.json +5 -3
  112. package/dist/localization/package.nls.en-us.json +4 -1
  113. package/dist/localization/package.nls.es.json +5 -3
  114. package/dist/localization/package.nls.fr.json +5 -3
  115. package/dist/localization/package.nls.it.json +5 -3
  116. package/dist/localization/package.nls.ja.json +5 -3
  117. package/dist/localization/package.nls.ko.json +6 -4
  118. package/dist/localization/package.nls.pl.json +5 -3
  119. package/dist/localization/package.nls.pt-br.json +5 -3
  120. package/dist/localization/package.nls.qps-ploc.json +5 -3
  121. package/dist/localization/package.nls.ru.json +5 -3
  122. package/dist/localization/package.nls.tr.json +5 -3
  123. package/dist/localization/package.nls.zh-cn.json +5 -3
  124. package/dist/localization/package.nls.zh-tw.json +5 -3
  125. package/dist/parser/parseNodes.d.ts +42 -42
  126. package/dist/parser/parseNodes.js +69 -69
  127. package/dist/parser/parseNodes.js.map +1 -1
  128. package/dist/parser/parser.d.ts +1 -1
  129. package/dist/parser/parser.js +35 -35
  130. package/dist/parser/parser.js.map +1 -1
  131. package/dist/pyright.js +6 -3
  132. package/dist/pyright.js.map +1 -1
  133. package/dist/tests/classDeclaration.test.js +1 -1
  134. package/dist/tests/config.test.js +2 -2
  135. package/dist/tests/config.test.js.map +1 -1
  136. package/dist/tests/diagnosticOverrides.test.js +7 -6
  137. package/dist/tests/diagnosticOverrides.test.js.map +1 -1
  138. package/dist/tests/importResolver.test.js +16 -0
  139. package/dist/tests/importResolver.test.js.map +1 -1
  140. package/dist/tests/parseTreeUtils.test.js +4 -4
  141. package/dist/tests/parser.test.js +3 -3
  142. package/dist/tests/testState.test.js +1 -1
  143. package/dist/tests/testState.test.js.map +1 -1
  144. package/dist/tests/testUtils.js +1 -1
  145. package/dist/tests/testUtils.js.map +1 -1
  146. package/dist/tests/typeEvaluator2.test.js +9 -1
  147. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  148. package/dist/tests/typeEvaluator3.test.js +8 -0
  149. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  150. package/dist/tests/typeEvaluator4.test.js +7 -3
  151. package/dist/tests/typeEvaluator4.test.js.map +1 -1
  152. package/dist/tests/typeEvaluator7.test.js +15 -15
  153. package/dist/tests/typeEvaluator7.test.js.map +1 -1
  154. package/dist/tests/typePrinter.test.js +2 -2
  155. package/dist/tests/typePrinter.test.js.map +1 -1
  156. package/dist/tests/uri.test.js +11 -3
  157. package/dist/tests/uri.test.js.map +1 -1
  158. package/dist/workspaceFactory.js +16 -14
  159. package/dist/workspaceFactory.js.map +1 -1
  160. package/package.json +1 -1
@@ -32,7 +32,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
32
32
  return result;
33
33
  };
34
34
  Object.defineProperty(exports, "__esModule", { value: true });
35
- exports.narrowForKeyAssignment = exports.getTypeOfIndexedTypedDict = exports.assignToTypedDict = exports.assignTypedDictToTypedDict = exports.getEffectiveExtraItemsEntryType = exports.getTypedDictDictEquivalent = exports.getTypedDictMappingEquivalent = exports.getTypedDictMembersForClass = exports.synthesizeTypedDictClassMethods = exports.createTypedDictTypeInlined = exports.createTypedDictType = void 0;
35
+ exports.narrowForKeyAssignment = exports.getTypeOfIndexedTypedDict = exports.assignToTypedDict = exports.assignTypedDictToTypedDict = exports.getEffectiveExtraItemsEntryType = exports.getTypedDictDictEquivalent = exports.getTypedDictMappingEquivalent = exports.getTypedDictMembersForClass = exports.synthesizeTypedDictClassMethods = exports.createTypedDictType = void 0;
36
36
  const collectionUtils_1 = require("../common/collectionUtils");
37
37
  const debug_1 = require("../common/debug");
38
38
  const diagnostic_1 = require("../common/diagnostic");
@@ -84,7 +84,7 @@ function createTypedDictType(evaluator, errorNode, typedDictClass, argList) {
84
84
  const entriesArg = argList[1];
85
85
  if (entriesArg.argumentCategory === 0 /* ArgumentCategory.Simple */ &&
86
86
  entriesArg.valueExpression &&
87
- entriesArg.valueExpression.nodeType === 15 /* ParseNodeType.Dictionary */) {
87
+ entriesArg.valueExpression.nodeType === 18 /* ParseNodeType.Dictionary */) {
88
88
  usingDictSyntax = true;
89
89
  getTypedDictFieldsFromDictSyntax(evaluator, entriesArg.valueExpression, classFields, /* isInline */ false);
90
90
  }
@@ -124,7 +124,7 @@ function createTypedDictType(evaluator, errorNode, typedDictClass, argList) {
124
124
  for (const arg of argList.slice(2)) {
125
125
  if (((_a = arg.name) === null || _a === void 0 ? void 0 : _a.value) === 'total' || ((_b = arg.name) === null || _b === void 0 ? void 0 : _b.value) === 'closed') {
126
126
  if (!arg.valueExpression ||
127
- arg.valueExpression.nodeType !== 11 /* ParseNodeType.Constant */ ||
127
+ arg.valueExpression.nodeType !== 14 /* ParseNodeType.Constant */ ||
128
128
  !(arg.valueExpression.constType === 15 /* KeywordType.False */ ||
129
129
  arg.valueExpression.constType === 33 /* KeywordType.True */)) {
130
130
  evaluator.addDiagnostic(diagnosticRules_1.DiagnosticRule.reportGeneralTypeIssues, localize_1.LocMessage.typedDictBoolParam().format({ name: arg.name.value }), arg.valueExpression || errorNode);
@@ -133,6 +133,7 @@ function createTypedDictType(evaluator, errorNode, typedDictClass, argList) {
133
133
  classType.details.flags |= 1024 /* ClassTypeFlags.CanOmitDictValues */;
134
134
  }
135
135
  else if (arg.name.value === 'closed' && arg.valueExpression.constType === 33 /* KeywordType.True */) {
136
+ // This is an experimental feature because PEP 728 hasn't been accepted yet.
136
137
  if (AnalyzerNodeInfo.getFileInfo(errorNode).diagnosticRuleSet.enableExperimentalFeatures) {
137
138
  classType.details.flags |=
138
139
  256 /* ClassTypeFlags.TypedDictMarkedClosed */ | 512 /* ClassTypeFlags.TypedDictEffectivelyClosed */;
@@ -160,19 +161,6 @@ function createTypedDictType(evaluator, errorNode, typedDictClass, argList) {
160
161
  return classType;
161
162
  }
162
163
  exports.createTypedDictType = createTypedDictType;
163
- // Creates a new anonymous TypedDict class from an inlined dict[{}] type annotation.
164
- function createTypedDictTypeInlined(evaluator, dictNode, typedDictClass) {
165
- const fileInfo = AnalyzerNodeInfo.getFileInfo(dictNode);
166
- const className = '<TypedDict>';
167
- const classType = types_1.ClassType.createInstantiable(className, ParseTreeUtils.getClassFullName(dictNode, fileInfo.moduleName, className), fileInfo.moduleName, fileInfo.fileUri, 128 /* ClassTypeFlags.TypedDictClass */, ParseTreeUtils.getTypeSourceId(dictNode),
168
- /* declaredMetaclass */ undefined, typedDictClass.details.effectiveMetaclass);
169
- classType.details.baseClasses.push(typedDictClass);
170
- (0, typeUtils_1.computeMroLinearization)(classType);
171
- getTypedDictFieldsFromDictSyntax(evaluator, dictNode, types_1.ClassType.getSymbolTable(classType), /* isInline */ true);
172
- synthesizeTypedDictClassMethods(evaluator, dictNode, classType);
173
- return classType;
174
- }
175
- exports.createTypedDictTypeInlined = createTypedDictTypeInlined;
176
164
  function synthesizeTypedDictClassMethods(evaluator, node, classType) {
177
165
  var _a;
178
166
  (0, debug_1.assert)(types_1.ClassType.isTypedDictClass(classType));
@@ -659,7 +647,7 @@ function getTypedDictFieldsFromDictSyntax(evaluator, entryDict, classFields, isI
659
647
  const entrySet = new Set();
660
648
  const fileInfo = AnalyzerNodeInfo.getFileInfo(entryDict);
661
649
  entryDict.entries.forEach((entry) => {
662
- if (entry.nodeType !== 17 /* ParseNodeType.DictionaryKeyEntry */) {
650
+ if (entry.nodeType !== 20 /* ParseNodeType.DictionaryKeyEntry */) {
663
651
  evaluator.addDiagnostic(diagnosticRules_1.DiagnosticRule.reportGeneralTypeIssues, localize_1.LocMessage.typedDictSecondArgDictEntry(), entry);
664
652
  return;
665
653
  }
@@ -1 +1 @@
1
- {"version":3,"file":"typedDicts.js","sourceRoot":"","sources":["../../../../../src/analyzer/typedDicts.ts"],"names":[],"mappings":"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"}
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,uDAAmE;AAWnE,qEAAuD;AAEvD,iEAAmD;AACnD,qCAA4D;AAC5D,+CAAiE;AAEjE,mCAsBiB;AACjB,2CAUqB;AACrB,qDAAkD;AAElD,mEAAmE;AACnE,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,SAA6B,CAAC;IAClC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;QACtB,SAAS,CAAC,aAAa,CAAC,gCAAc,CAAC,eAAe,EAAE,qBAAU,CAAC,iBAAiB,EAAE,EAAE,SAAS,CAAC,CAAC;KACtG;SAAM;QACH,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,IACI,OAAO,CAAC,gBAAgB,oCAA4B;YACpD,CAAC,OAAO,CAAC,eAAe;YACxB,OAAO,CAAC,eAAe,CAAC,QAAQ,sCAA6B,EAC/D;YACE,SAAS,CAAC,aAAa,CACnB,gCAAc,CAAC,kBAAkB,EACjC,qBAAU,CAAC,iBAAiB,EAAE,EAC9B,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,IAAI,SAAS,CAC1C,CAAC;SACL;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,kBAAkB,GAAG,SAAS,IAAI,WAAW,CAAC;IACpD,MAAM,SAAS,GAAG,iBAAS,CAAC,kBAAkB,CAC1C,kBAAkB,EAClB,cAAc,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC,EACnF,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,OAAO,EAChB,6FAAkE,EAClE,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,iBAAS,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IACxD,WAAW,CAAC,GAAG,CACX,WAAW,EACX,eAAM,CAAC,cAAc,CAAC,8EAA6D,EAAE,SAAS,CAAC,CAClG,CAAC;IAEF,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACpB,SAAS,CAAC,aAAa,CAAC,gCAAc,CAAC,eAAe,EAAE,qBAAU,CAAC,sBAAsB,EAAE,EAAE,SAAS,CAAC,CAAC;KAC3G;SAAM;QACH,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAE9B,IACI,UAAU,CAAC,gBAAgB,oCAA4B;YACvD,UAAU,CAAC,eAAe;YAC1B,UAAU,CAAC,eAAe,CAAC,QAAQ,sCAA6B,EAClE;YACE,eAAe,GAAG,IAAI,CAAC;YAEvB,gCAAgC,CAAC,SAAS,EAAE,UAAU,CAAC,eAAe,EAAE,WAAW,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;SAC9G;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,aAAa,CACnB,gCAAc,CAAC,uBAAuB,EACtC,qBAAU,CAAC,oBAAoB,EAAE,EACjC,KAAK,CAAC,eAAe,CACxB,CAAC;oBACF,SAAS;iBACZ;gBAED,8CAA8C;gBAC9C,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE/B,MAAM,SAAS,GAAG,IAAI,eAAM,oCAA4B,CAAC;gBACzD,MAAM,WAAW,GAAwB;oBACrC,IAAI,kCAA0B;oBAC9B,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,GAAG,EAAE,QAAQ,CAAC,OAAO;oBACrB,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,aAAa,CAAC,gCAAc,CAAC,kBAAkB,EAAE,qBAAU,CAAC,sBAAsB,EAAE,EAAE,SAAS,CAAC,CAAC;SAC9G;KACJ;IAED,IAAI,eAAe,EAAE;QACjB,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YAChC,IAAI,CAAA,MAAA,GAAG,CAAC,IAAI,0CAAE,KAAK,MAAK,OAAO,IAAI,CAAA,MAAA,GAAG,CAAC,IAAI,0CAAE,KAAK,MAAK,QAAQ,EAAE;gBAC7D,IACI,CAAC,GAAG,CAAC,eAAe;oBACpB,GAAG,CAAC,eAAe,CAAC,QAAQ,oCAA2B;oBACvD,CAAC,CACG,GAAG,CAAC,eAAe,CAAC,SAAS,+BAAsB;wBACnD,GAAG,CAAC,eAAe,CAAC,SAAS,8BAAqB,CACrD,EACH;oBACE,SAAS,CAAC,aAAa,CACnB,gCAAc,CAAC,uBAAuB,EACtC,qBAAU,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAChE,GAAG,CAAC,eAAe,IAAI,SAAS,CACnC,CAAC;iBACL;qBAAM,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,IAAI,GAAG,CAAC,eAAe,CAAC,SAAS,+BAAsB,EAAE;oBAC1F,SAAS,CAAC,OAAO,CAAC,KAAK,+CAAoC,CAAC;iBAC/D;qBAAM,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,GAAG,CAAC,eAAe,CAAC,SAAS,8BAAqB,EAAE;oBAC1F,4EAA4E;oBAC5E,IAAI,gBAAgB,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,0BAA0B,EAAE;wBACtF,SAAS,CAAC,OAAO,CAAC,KAAK;4BACnB,oGAAgF,CAAC;qBACxF;iBACJ;aACJ;iBAAM;gBACH,SAAS,CAAC,aAAa,CACnB,gCAAc,CAAC,eAAe,EAC9B,qBAAU,CAAC,kBAAkB,EAAE,EAC/B,GAAG,CAAC,eAAe,IAAI,SAAS,CACnC,CAAC;aACL;SACJ;KACJ;IAED,+BAA+B,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAEjE,iFAAiF;IACjF,IAAI,CAAA,MAAA,SAAS,CAAC,MAAM,0CAAE,QAAQ,sCAA6B,IAAI,SAAS,EAAE;QACtE,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC;QAC/C,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,0CAAiC,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC;QAE3G,IAAI,eAAe,CAAC,QAAQ,gCAAuB,EAAE;YACjD,IAAI,eAAe,CAAC,KAAK,KAAK,SAAS,EAAE;gBACrC,SAAS,CAAC,aAAa,CACnB,gCAAc,CAAC,uBAAuB,EACtC,qBAAU,CAAC,qBAAqB,EAAE,CAAC,MAAM,CAAC;oBACtC,IAAI,EAAE,SAAS;iBAClB,CAAC,EACF,eAAe,CAClB,CAAC;aACL;SACJ;KACJ;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AArKD,kDAqKC;AAED,SAAgB,+BAA+B,CAC3C,SAAwB,EACxB,IAAgC,EAChC,SAAoB;;IAEpB,IAAA,cAAM,EAAC,iBAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;IAE9C,+BAA+B;IAC/B,MAAM,OAAO,GAAG,oBAAY,CAAC,yBAAyB,CAAC,SAAS,8CAAsC,CAAC;IACvG,oBAAY,CAAC,YAAY,CAAC,OAAO,EAAE;QAC/B,QAAQ,kCAA0B;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;IAC1E,OAAO,CAAC,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC;IAE7E,oDAAoD;IACpD,MAAM,aAAa,GAAG,oBAAY,CAAC,yBAAyB,CAAC,UAAU,yCAA+B,CAAC;IACvG,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;QACrC,QAAQ,kCAA0B;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,SAAS,CAAC,WAAW,EAAE,CAAC;IACnE,aAAa,CAAC,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC;IAEnF,+CAA+C;IAC/C,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;QACrC,QAAQ,kCAA0B;QAClC,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC;QAC1C,eAAe,EAAE,IAAI;KACxB,CAAC,CAAC;IACH,oBAAY,CAAC,iCAAiC,CAAC,aAAa,CAAC,CAAC;IAE9D,mEAAmE;IACnE,oBAAY,CAAC,gCAAgC,CAAC,aAAa,CAAC,CAAC;IAE7D,MAAM,aAAa,GAAG,oBAAY,CAAC,yBAAyB,CAAC,UAAU,yCAA+B,CAAC;IACvG,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;QACrC,QAAQ,kCAA0B;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,SAAS,CAAC,WAAW,EAAE,CAAC;IACnE,aAAa,CAAC,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC;IAEnF,wDAAwD;IACxD,oBAAY,CAAC,gCAAgC,CAAC,aAAa,CAAC,CAAC;IAE7D,MAAM,OAAO,GAAG,2BAA2B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAClE,MAAM,gBAAgB,GAAG,MAAA,OAAO,CAAC,UAAU,mCAAI,+BAA+B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACrG,IAAI,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC;IAExD,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACvC,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;YACrC,QAAQ,kCAA0B;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,kCAA0B;YAClC,IAAI;YACJ,UAAU,EAAE,CAAC,KAAK,CAAC,UAAU;YAC7B,IAAI,EAAE,KAAK,CAAC,SAAS;YACrB,eAAe,EAAE,IAAI;SACxB,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;YACnB,qBAAqB,GAAG,KAAK,CAAC;SACjC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,OAAO,CAAC,UAAU,IAAI,CAAC,IAAA,eAAO,EAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;QAC9D,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;YACrC,QAAQ,sCAA8B;YACtC,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,KAAK;YACjB,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,SAAS;YAClC,eAAe,EAAE,IAAI;SACxB,CAAC,CAAC;QAEH,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;YACrC,QAAQ,sCAA8B;YACtC,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,KAAK;YACjB,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,SAAS;YAClC,eAAe,EAAE,IAAI;SACxB,CAAC,CAAC;KACN;IAED,MAAM,WAAW,GAAG,iBAAS,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IACxD,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,kCAA0B,QAAQ,CAAC,CAAC,CAAC;IACtF,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,eAAM,CAAC,cAAc,kCAA0B,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,kCAA0B;YAClC,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC;YAC1C,eAAe,EAAE,IAAI;SACxB,CAAC;QAEF,SAAS,oBAAoB,CAAC,IAAkB;YAC5C,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,oCAEzB,CAAC;YACF,OAAO,cAAc,CAAC;QAC1B,CAAC;QAED,SAAS,eAAe,CACpB,OAAa,EACb,SAAe,EACf,cAAuB,EACvB,eAAe,GAAG,KAAK,EACvB,uBAAuB,GAAG,KAAK;YAE/B,MAAM,WAAW,GAAG,oBAAY,CAAC,yBAAyB,CAAC,KAAK,yCAA+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,kCAA0B;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,CAAC;iBAC1B;qBAAM;oBACH,IAAI,uBAAuB,EAAE;wBACzB,gBAAgB,GAAG,SAAS,CAAC;qBAChC;yBAAM;wBACH,gBAAgB,GAAG,IAAA,oBAAY,EAAC,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC;qBAChE;oBAED,UAAU,GAAG,gBAAgB,CAAC;iBACjC;gBAED,oBAAY,CAAC,YAAY,CAAC,WAAW,EAAE;oBACnC,QAAQ,kCAA0B;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,EAAE,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;aAC5D;YACD,OAAO,WAAW,CAAC;QACvB,CAAC;QAED,SAAS,gBAAgB,CAAC,OAAa,EAAE,SAAe,EAAE,eAAwB;YAC9E,MAAM,QAAQ,GAAsB;gBAChC,QAAQ,kCAA0B;gBAClC,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,OAAO;gBACb,eAAe,EAAE,IAAI;aACxB,CAAC;YAEF,MAAM,YAAY,GAAG,oBAAY,CAAC,yBAAyB,CAAC,KAAK,yCAA+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,yCAA+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;YAE1D,IAAI,gBAAsB,CAAC;YAC3B,IAAI,UAAgB,CAAC;YAErB,IAAI,eAAe,EAAE;gBACjB,yEAAyE;gBACzE,oDAAoD;gBACpD,gBAAgB,GAAG,eAAO,CAAC,MAAM,EAAE,CAAC;gBACpC,UAAU,GAAG,SAAS,CAAC;aAC1B;iBAAM;gBACH,gBAAgB,GAAG,IAAA,oBAAY,EAAC,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC;gBAC7D,UAAU,GAAG,gBAAgB,CAAC;aACjC;YAED,oBAAY,CAAC,YAAY,CAAC,YAAY,EAAE;gBACpC,QAAQ,kCAA0B;gBAClC,IAAI,EAAE,SAAS;gBACf,eAAe,EAAE,IAAI;gBACrB,IAAI,EAAE,gBAAgB;gBACtB,UAAU,EAAE,IAAI;aACnB,CAAC,CAAC;YACH,YAAY,CAAC,OAAO,CAAC,kBAAkB,GAAG,UAAU,CAAC;YACrD,OAAO,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QACxC,CAAC;QAED,SAAS,sBAAsB,CAAC,OAAa,EAAE,SAAe;YAC1D,MAAM,kBAAkB,GAAG,oBAAY,CAAC,yBAAyB,CAC7D,YAAY,yCAEf,CAAC;YACF,oBAAY,CAAC,YAAY,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;YACzD,oBAAY,CAAC,YAAY,CAAC,kBAAkB,EAAE;gBAC1C,QAAQ,kCAA0B;gBAClC,IAAI,EAAE,GAAG;gBACT,eAAe,EAAE,IAAI;gBACrB,IAAI,EAAE,OAAO;aAChB,CAAC,CAAC;YACH,oBAAY,CAAC,YAAY,CAAC,kBAAkB,EAAE;gBAC1C,QAAQ,kCAA0B;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;QAED,SAAS,mBAAmB,CAAC,OAAa;YACtC,MAAM,eAAe,GAAG,oBAAY,CAAC,yBAAyB,CAAC,SAAS,yCAA+B,CAAC;YACxG,oBAAY,CAAC,YAAY,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;YACtD,oBAAY,CAAC,YAAY,CAAC,eAAe,EAAE;gBACvC,QAAQ,kCAA0B;gBAClC,IAAI,EAAE,GAAG;gBACT,eAAe,EAAE,IAAI;gBACrB,IAAI,EAAE,OAAO;aAChB,CAAC,CAAC;YACH,eAAe,CAAC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;YACrE,OAAO,eAAe,CAAC;QAC3B,CAAC;QAED,SAAS,kBAAkB;YACvB,yDAAyD;YACzD,MAAM,aAAa,GAAG,oBAAY,CAAC,yBAAyB,CAAC,QAAQ,yCAA+B,CAAC;YACrG,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YAEpD,8DAA8D;YAC9D,MAAM,aAAa,GAAG,oBAAY,CAAC,yBAAyB,CAAC,QAAQ,yCAA+B,CAAC;YACrG,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YAEpD,6CAA6C;YAC7C,MAAM,aAAa,GAAG,oBAAY,CAAC,yBAAyB,CAAC,QAAQ,yCAA+B,CAAC;YACrG,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YAEpD,qDAAqD;YACrD,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;gBACrC,QAAQ,kCAA0B;gBAClC,IAAI,EAAE,KAAK;gBACX,eAAe,EAAE,IAAI;gBACrB,IAAI,EAAE,qBAAqB;oBACvB,CAAC,CAAC,iBAAS,CAAC,WAAW,EAAE;oBACzB,CAAC,CAAC,iBAAS,CAAC,eAAe,CAAC,iBAAS,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC;aACjF,CAAC,CAAC;YAEH,oBAAY,CAAC,iCAAiC,CAAC,aAAa,CAAC,CAAC;YAC9D,oBAAY,CAAC,gCAAgC,CAAC,aAAa,CAAC,CAAC;YAE7D,aAAa,CAAC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;YACnE,aAAa,CAAC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;YACnE,aAAa,CAAC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;YAEnE,MAAM,eAAe,GAAW,EAAE,CAAC;YACnC,MAAM,UAAU,GAAG,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAE3D,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACvC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;oBACnB,2CAA2C;oBAC3C,IAAI,UAAU,IAAI,IAAA,2BAAmB,EAAC,UAAU,CAAC,IAAI,QAAQ,IAAI,IAAA,2BAAmB,EAAC,QAAQ,CAAC,EAAE;wBAC5F,MAAM,SAAS,GAAG,IAAA,gCAAoB,EAAC,iBAAS,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE;4BAC1E;gCACI,IAAI,EAAE,iBAAS,CAAC,gBAAgB,CAAC,iBAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;gCAC3E,WAAW,EAAE,KAAK;6BACrB;4BACD,EAAE,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE;yBAChD,CAAC,CAAC;wBAEH,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;qBACnC;oBAED,gDAAgD;oBAChD,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;wBACrC,QAAQ,kCAA0B;wBAClC,IAAI;wBACJ,eAAe,EAAE,IAAI;wBACrB,UAAU,EAAE,IAAI;wBAChB,WAAW,EAAE,eAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC;wBAClD,IAAI,EAAE,KAAK,CAAC,SAAS;qBACxB,CAAC,CAAC;iBACN;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,aAAa,GAAG,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAChE,IAAI,aAAa,IAAI,IAAA,2BAAmB,EAAC,aAAa,CAAC,EAAE;gBACrD,MAAM,YAAY,GAAG,iBAAS,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;gBAE9D,oBAAY,CAAC,YAAY,CAAC,aAAa,EAAE;oBACrC,QAAQ,kCAA0B;oBAClC,IAAI,EAAE,KAAK;oBACX,eAAe,EAAE,IAAI;oBACrB,IAAI,EAAE,iBAAS,CAAC,sBAAsB,CAClC,YAAY,EACZ,CAAC,IAAA,oBAAY,EAAC,eAAe,CAAC,CAAC;oBAC/B,4BAA4B,CAAC,IAAI,CACpC;iBACJ,CAAC,CAAC;aACN;YAED,oBAAY,CAAC,iCAAiC,CAAC,aAAa,CAAC,CAAC;YAE9D,yEAAyE;YACzE,0EAA0E;YAC1E,oBAAoB;YACpB,OAAO,8BAAsB,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC;QACxF,CAAC;QAED,MAAM,YAAY,GAAmB,EAAE,CAAC;QACxC,MAAM,YAAY,GAAmB,EAAE,CAAC;QACxC,MAAM,mBAAmB,GAAmB,EAAE,CAAC;QAE/C,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YACvC,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,YAAY,CAAC,IAAI,CACb,eAAe,CACX,eAAe,EACf,KAAK,CAAC,SAAS;YACf,oBAAoB,CAAC,IAAI;YACzB,qBAAqB,CAAC,KAAK,CAAC,UAAU;YACtC,6BAA6B,CAAC,KAAK,CAAC,UAAU,CACjD,CACJ,CAAC;YAEF,iDAAiD;YACjD,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;gBACxC,IAAA,6BAAW,EAAC,YAAY,EAAE,gBAAgB,CAAC,eAAe,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;aACnG;YAED,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;gBACnB,mBAAmB,CAAC,IAAI,CAAC,sBAAsB,CAAC,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;aACtF;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,iBAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAEpD,iEAAiE;QACjE,mEAAmE;QACnE,sBAAsB;QACtB,IAAI,iBAAS,CAAC,4BAA4B,CAAC,SAAS,CAAC,EAAE;YACnD,YAAY,CAAC,IAAI,CACb,eAAe,CACX,OAAO,EACP,IAAA,oBAAY,EAAC,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;YACnE,oBAAoB,CAAC,KAAK;YAC1B,qBAAqB,CAAC,IAAI,CAC7B,CACJ,CAAC;YACF,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,gBAAgB,CAAC,SAAS,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;SACtG;aAAM;YACH,qEAAqE;YACrE,sDAAsD;YACtD,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,eAAO,CAAC,MAAM,EAAE,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;YAC1F,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,eAAO,CAAC,MAAM,EAAE,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;SAC5F;QAED,WAAW,CAAC,GAAG,CACX,KAAK,EACL,eAAM,CAAC,cAAc,kCAA0B,8BAAsB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAC9F,CAAC;QAEF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YACzB,WAAW,CAAC,GAAG,CACX,KAAK,EACL,eAAM,CAAC,cAAc,kCAA0B,8BAAsB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAC9F,CAAC;SACL;QAED,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE;YAChC,WAAW,CAAC,GAAG,CACX,YAAY,EACZ,eAAM,CAAC,cAAc,kCAA0B,8BAAsB,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CACrG,CAAC;SACL;QAED,IAAI,CAAC,qBAAqB,EAAE;YACxB,WAAW,CAAC,GAAG,CACX,aAAa,EACb,eAAM,CAAC,cAAc,kCAA0B,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAC/E,CAAC;SACL;QAED,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,eAAM,CAAC,cAAc,kCAA0B,kBAAkB,EAAE,CAAC,CAAC,CAAC;QAEhG,wEAAwE;QACxE,oDAAoD;QACpD,MAAM,aAAa,GAAG,0BAA0B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAEvE,IAAI,aAAa,EAAE;YACf,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,SAAS,CAAC,WAAW,EAAE,CAAC;YACjE,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,eAAM,CAAC,cAAc,kCAA0B,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,GAAqB,SAAS,CAAC,iBAAiB,EAAE,CAAC;YAEhE,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,aAAa,EAAE,WAAW,EAAE,KAAK,EAAE;iBAC9C;gBACD,4BAA4B,CAAC,IAAI,CACpC,CAAC;aACL;iBAAM;gBACH,SAAS,GAAG,mBAAW,CAAC,MAAM,EAAE,CAAC;aACpC;YAED,aAAa,CAAC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;YACrD,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,eAAM,CAAC,cAAc,kCAA0B,aAAa,CAAC,CAAC,CAAC;SAC7F;QAED,wEAAwE;QACxE,gDAAgD;QAChD,MAAM,gBAAgB,GAAG,6BAA6B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAE7E,IAAI,gBAAgB,EAAE;YAClB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;gBAC/C,MAAM,MAAM,GAAG,oBAAY,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;gBAClE,oBAAY,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;gBAE7C,MAAM,eAAe,GAAG,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,QAAQ,UAAU,EAAE,CAAC,CAAC;gBAC5E,IACI,eAAe;oBACf,IAAA,2BAAmB,EAAC,eAAe,CAAC;oBACpC,eAAe,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,EACrD;oBACE,MAAM,CAAC,OAAO,CAAC,kBAAkB,GAAG,iBAAS,CAAC,sBAAsB,CAChE,iBAAS,CAAC,eAAe,CAAC,eAAe,CAAC,EAC1C,CAAC,OAAO,EAAE,gBAAgB,CAAC;oBAC3B,4BAA4B,CAAC,IAAI,CACpC,CAAC;oBAEF,WAAW,CAAC,GAAG,CAAC,UAAU,EAAE,eAAM,CAAC,cAAc,kCAA0B,MAAM,CAAC,CAAC,CAAC;iBACvF;YACL,CAAC,CAAC,CAAC;SACN;KACJ;AACL,CAAC;AA9dD,0EA8dC;AAED,SAAgB,2BAA2B,CACvC,SAAwB,EACxB,SAAoB,EACpB,aAAa,GAAG,KAAK;;IAErB,kDAAkD;IAClD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,gBAAgB,EAAE;QACrC,MAAM,OAAO,GAAqB;YAC9B,UAAU,EAAE,IAAI,GAAG,EAA0B;YAC7C,UAAU,EAAE,SAAS;SACxB,CAAC;QACF,oCAAoC,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAEpE,IAAI,iBAAS,CAAC,uBAAuB,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACrE,OAAO,CAAC,UAAU,GAAG;gBACjB,SAAS,EAAE,iBAAS,CAAC,WAAW,EAAE;gBAClC,UAAU,EAAE,KAAK;gBACjB,UAAU,EAAE,KAAK;gBACjB,UAAU,EAAE,KAAK;aACpB,CAAC;SACL;QAED,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,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QAClE,MAAM,OAAO,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;QAC7B,OAAO,CAAC,SAAS,GAAG,IAAA,+BAAmB,EAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QAE3E,uEAAuE;QACvE,8BAA8B;QAC9B,IAAI,SAAS,CAAC,kBAAkB,EAAE;YAC9B,OAAO,CAAC,UAAU,GAAG,KAAK,CAAC;YAE3B,IAAI,OAAO,CAAC,UAAU,EAAE;gBACpB,OAAO,CAAC,SAAS,GAAG,iBAAS,CAAC,WAAW,EAAE,CAAC;aAC/C;iBAAM;gBACH,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;aAC7B;SACJ;QAED,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;QACH,UAAU,EAAE,OAAO;QACnB,UAAU,EAAE,MAAA,SAAS,CAAC,OAAO,CAAC,gBAAgB,0CAAE,UAAU;KAC7D,CAAC;AACN,CAAC;AA9DD,kEA8DC;AAED,oEAAoE;AACpE,gFAAgF;AAChF,SAAgB,6BAA6B,CAAC,SAAwB,EAAE,SAAoB;IACxF,IAAA,cAAM,EAAC,IAAA,2BAAmB,EAAC,SAAS,CAAC,CAAC,CAAC;IACvC,IAAA,cAAM,EAAC,iBAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;IAE9C,gFAAgF;IAChF,IAAI,CAAC,iBAAS,CAAC,4BAA4B,CAAC,SAAS,CAAC,EAAE;QACpD,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,OAAO,GAAG,2BAA2B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAClE,MAAM,cAAc,GAAW,EAAE,CAAC;IAElC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACjC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,IAAI,OAAO,CAAC,UAAU,EAAE;QACpB,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;KACrD;IAED,oCAAoC;IACpC,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,cAAc,CAAC,CAAC;IAC/C,IAAI,IAAA,uBAAe,EAAC,SAAS,CAAC,IAAI,iBAAS,CAAC,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE;QACxE,OAAO,SAAS,CAAC;KACpB;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AA3BD,sEA2BC;AAED,wEAAwE;AACxE,kCAAkC;AAClC,SAAgB,0BAA0B,CACtC,SAAwB,EACxB,SAAoB,EACpB,cAAc,GAAG,CAAC;IAElB,IAAA,cAAM,EAAC,IAAA,2BAAmB,EAAC,SAAS,CAAC,CAAC,CAAC;IACvC,IAAA,cAAM,EAAC,iBAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;IAE9C,sEAAsE;IACtE,IAAI,CAAC,iBAAS,CAAC,4BAA4B,CAAC,SAAS,CAAC,EAAE;QACpD,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,OAAO,GAAG,2BAA2B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAElE,mEAAmE;IACnE,wBAAwB;IACxB,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,UAAU,EAAE;QACtD,OAAO,SAAS,CAAC;KACpB;IAED,IAAI,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;IAEjD,IAAI,kBAAkB,GAAG,IAAI,CAAC;IAC9B,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACjC,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,EAAE;YACtC,kBAAkB,GAAG,KAAK,CAAC;SAC9B;QAED,aAAa,GAAG,IAAA,oBAAY,EAAC,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QAE/D,IACI,CAAC,SAAS,CAAC,UAAU,CACjB,aAAa,EACb,KAAK,CAAC,SAAS;QACf,UAAU,CAAC,SAAS;QACpB,wBAAwB,CAAC,SAAS;QAClC,uBAAuB,CAAC,SAAS,6CAEjC,cAAc,GAAG,CAAC,CACrB,EACH;YACE,kBAAkB,GAAG,KAAK,CAAC;SAC9B;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,kBAAkB,EAAE;QACrB,OAAO,SAAS,CAAC;KACpB;IAED,OAAO,aAAa,CAAC;AACzB,CAAC;AAnDD,gEAmDC;AAED,SAAS,gCAAgC,CACrC,SAAwB,EACxB,SAAyB,EACzB,WAAwB,EACxB,QAAiB;IAEjB,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,8CAAqC,EAAE;YACrD,SAAS,CAAC,aAAa,CACnB,gCAAc,CAAC,uBAAuB,EACtC,qBAAU,CAAC,2BAA2B,EAAE,EACxC,KAAK,CACR,CAAC;YACF,OAAO;SACV;QAED,IAAI,KAAK,CAAC,aAAa,CAAC,QAAQ,sCAA6B,EAAE;YAC3D,SAAS,CAAC,aAAa,CACnB,gCAAc,CAAC,uBAAuB,EACtC,qBAAU,CAAC,kBAAkB,EAAE,EAC/B,KAAK,CAAC,aAAa,CACtB,CAAC;YACF,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,aAAa,CACnB,gCAAc,CAAC,uBAAuB,EACtC,qBAAU,CAAC,kBAAkB,EAAE,EAC/B,KAAK,CAAC,aAAa,CACtB,CAAC;YACF,OAAO;SACV;QAED,IAAI,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YACzB,SAAS,CAAC,aAAa,CACnB,gCAAc,CAAC,uBAAuB,EACtC,qBAAU,CAAC,oBAAoB,EAAE,EACjC,KAAK,CAAC,aAAa,CACtB,CAAC;YACF,OAAO;SACV;QAED,8CAA8C;QAC9C,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAExB,MAAM,SAAS,GAAG,IAAI,eAAM,oCAA4B,CAAC;QACzD,MAAM,WAAW,GAAwB;YACrC,IAAI,kCAA0B;YAC9B,IAAI,EAAE,KAAK,CAAC,aAAa;YACzB,GAAG,EAAE,QAAQ,CAAC,OAAO;YACrB,kBAAkB,EAAE,KAAK,CAAC,eAAe;YACzC,uBAAuB,EAAE,CAAC,QAAQ;YAClC,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,oBAAoB,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,mBAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,oCAAoC,CACzC,SAAwB,EACxB,SAAoB,EACpB,OAAyB,EACzB,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;YAE1C,uEAAuE;YACvE,kEAAkE;YAClE,oCAAoC,CAAC,SAAS,EAAE,wBAAwB,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;SACtG;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,IAAA,mDAAuC,EAAC,SAAS,CAAC,CAAC;IAE1E,kDAAkD;IAClD,iBAAS,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;QACzD,IAAI,CAAC,MAAM,CAAC,yBAAyB,EAAE,EAAE;YACrC,gEAAgE;YAChE,MAAM,QAAQ,GAAG,IAAA,8CAAgC,EAAC,MAAM,CAAC,CAAC;YAE1D,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,qCAA6B,EAAE;gBACxD,IAAI,SAAS,GAAG,SAAS,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;gBAC3D,SAAS,GAAG,IAAA,+BAAmB,EAAC,SAAS,EAAE,cAAc,CAAC,CAAC;gBAE3D,MAAM,aAAa,GAAG,CAAC,iBAAS,CAAC,uBAAuB,CAAC,SAAS,CAAC,IAAI,IAAI,KAAK,iBAAiB,CAAC;gBAClG,IAAI,UAAU,GAAG,CAAC,iBAAS,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;gBAC3D,IAAI,UAAU,GAAG,KAAK,CAAC;gBAEvB,IAAI,2BAA2B,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE;oBAC/D,UAAU,GAAG,IAAI,CAAC;iBACrB;qBAAM,IAAI,8BAA8B,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE;oBACzE,UAAU,GAAG,KAAK,CAAC;iBACtB;gBAED,IAAI,2BAA2B,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE;oBAChD,UAAU,GAAG,IAAI,CAAC;iBACrB;gBAED,MAAM,OAAO,GAAmB;oBAC5B,SAAS;oBACT,UAAU;oBACV,UAAU;oBACV,UAAU,EAAE,KAAK;iBACpB,CAAC;gBAEF,IAAI,iBAAS,CAAC,uBAAuB,CAAC,SAAS,CAAC,IAAI,IAAI,KAAK,iBAAiB,EAAE;oBAC5E,OAAO,CAAC,UAAU,GAAG,KAAK,CAAC;oBAC3B,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC;iBAChC;qBAAM;oBACH,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;iBACzC;aACJ;SACJ;IACL,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAgB,+BAA+B,CAAC,SAAwB,EAAE,SAAoB;;IAC1F,IAAA,cAAM,EAAC,iBAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;IAE9C,0EAA0E;IAC1E,iCAAiC;IACjC,IAAI,CAAC,iBAAS,CAAC,uBAAuB,CAAC,SAAS,CAAC,EAAE;QAC/C,OAAO;YACH,SAAS,EAAE,SAAS,CAAC,aAAa,EAAE;YACpC,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,KAAK;SACpB,CAAC;KACL;IAED,IAAI,MAAA,SAAS,CAAC,OAAO,CAAC,gBAAgB,0CAAE,UAAU,EAAE;QAChD,OAAO,SAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC;KACxD;IAED,OAAO;QACH,SAAS,EAAE,iBAAS,CAAC,WAAW,EAAE;QAClC,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE,KAAK;QACjB,UAAU,EAAE,KAAK;KACpB,CAAC;AACN,CAAC;AAxBD,0EAwBC;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;IAC7F,MAAM,eAAe,GAAG,MAAA,UAAU,CAAC,UAAU,mCAAI,+BAA+B,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAErG,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE;QAC/C,kEAAkE;QAClE,2EAA2E;QAC3E,IAAI,CAAC,kBAAkB,IAAI,CAAC,IAAI,EAAE;YAC9B,OAAO;SACV;QAED,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,QAAQ,EAAE;YACX,IAAI,SAAS,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE;gBAC/C,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,GAAG,UAAU,CAC7B,sBAAW,CAAC,qBAAqB,EAAE,CAAC,MAAM,CAAC;oBACvC,IAAI;oBACJ,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,iBAAS,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;iBAChE,CAAC,CACL,CAAC;gBACF,kBAAkB,GAAG,KAAK,CAAC;aAC9B;iBAAM;gBACH,IAAI,IAAA,uBAAe,EAAC,eAAe,CAAC,SAAS,CAAC,EAAE;oBAC5C,MAAM,OAAO,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,EAAE,CAAC;oBACvC,IACI,CAAC,SAAS,CAAC,UAAU,CACjB,SAAS,CAAC,SAAS,EACnB,eAAe,CAAC,SAAS,EACzB,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,EACzB,cAAc;oBACd,uBAAuB,CAAC,SAAS,EACjC,KAAK,EACL,cAAc,CACjB,EACH;wBACE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,CAAC,sBAAW,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;wBACvE,kBAAkB,GAAG,KAAK,CAAC;qBAC9B;iBACJ;aACJ;SACJ;aAAM;YACH,IAAI,SAAS,CAAC,UAAU,KAAK,QAAQ,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE;gBACvE,MAAM,OAAO,GAAG,SAAS,CAAC,UAAU;oBAChC,CAAC,CAAC,sBAAW,CAAC,sBAAsB,EAAE;oBACtC,CAAC,CAAC,sBAAW,CAAC,yBAAyB,EAAE,CAAC;gBAC9C,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,GAAG,UAAU,CAC7B,OAAO,CAAC,MAAM,CAAC;oBACX,IAAI;oBACJ,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,iBAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;iBACjE,CAAC,CACL,CAAC;gBACF,kBAAkB,GAAG,KAAK,CAAC;aAC9B;YAED,IAAI,CAAC,SAAS,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,EAAE;gBAC9C,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,GAAG,UAAU,CAC7B,sBAAW,CAAC,yBAAyB,EAAE,CAAC,MAAM,CAAC;oBAC3C,IAAI;oBACJ,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,iBAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;iBACjE,CAAC,CACL,CAAC;gBACF,kBAAkB,GAAG,KAAK,CAAC;aAC9B;YAED,MAAM,OAAO,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,EAAE,CAAC;YAEvC,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,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,4CAAoC,EACxE,cAAc,CACjB,EACH;gBACE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,CAAC,sBAAW,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACvE,kBAAkB,GAAG,KAAK,CAAC;aAC9B;SACJ;IACL,CAAC,CAAC,CAAC;IAEH,kEAAkE;IAClE,qDAAqD;IACrD,IAAI,CAAC,kBAAkB,IAAI,CAAC,IAAI,EAAE;QAC9B,OAAO,KAAK,CAAC;KAChB;IAED,gFAAgF;IAChF,sEAAsE;IACtE,IAAI,iBAAS,CAAC,4BAA4B,CAAC,QAAQ,CAAC,EAAE;QAClD,MAAM,gBAAgB,GAAG,MAAA,WAAW,CAAC,UAAU,mCAAI,+BAA+B,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAExG,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE;YAC7C,uDAAuD;YACvD,IAAI,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAClC,OAAO;aACV;YAED,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;gBACzB,MAAM,OAAO,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,EAAE,CAAC;gBACvC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,CACf,sBAAW,CAAC,6BAA6B,EAAE,CAAC,MAAM,CAAC;oBAC/C,IAAI;oBACJ,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,iBAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;iBACjE,CAAC,CACL,CAAC;gBACF,kBAAkB,GAAG,KAAK,CAAC;aAC9B;iBAAM;gBACH,IAAI,QAAQ,CAAC,UAAU,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,EAAE;oBAC3D,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,GAAG,UAAU,CAC7B,sBAAW,CAAC,yBAAyB,EAAE,CAAC,MAAM,CAAC;wBAC3C,IAAI;wBACJ,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,iBAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;qBACjE,CAAC,CACL,CAAC;oBACF,kBAAkB,GAAG,KAAK,CAAC;iBAC9B;gBAED,MAAM,OAAO,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,EAAE,CAAC;gBAEvC,IACI,CAAC,SAAS,CAAC,UAAU,CACjB,WAAW,CAAC,UAAU,CAAC,SAAS,EAChC,QAAQ,CAAC,SAAS,EAClB,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,EACzB,cAAc;gBACd,uBAAuB,CAAC,SAAS,EACjC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,4CAAoC,EACrF,cAAc,CACjB,EACH;oBACE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,CACf,sBAAW,CAAC,+BAA+B,EAAE,CAAC,MAAM,CAAC;wBACjD,IAAI;wBACJ,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,iBAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;qBACjE,CAAC,CACL,CAAC;oBACF,kBAAkB,GAAG,KAAK,CAAC;iBAC9B;qBAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,EAAE;oBAClE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,GAAG,UAAU,CAC7B,sBAAW,CAAC,yBAAyB,EAAE,CAAC,MAAM,CAAC;wBAC3C,IAAI;wBACJ,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,iBAAS,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;qBAChE,CAAC,CACL,CAAC;oBACF,kBAAkB,GAAG,KAAK,CAAC;iBAC9B;aACJ;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,EAAE,CAAC;QACvC,IACI,CAAC,SAAS,CAAC,UAAU,CACjB,gBAAgB,CAAC,SAAS,EAC1B,eAAe,CAAC,SAAS,EACzB,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,EACzB,cAAc;QACd,uBAAuB,CAAC,SAAS,EACjC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,4CAAoC,EAC/E,cAAc,CACjB,EACH;YACE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,CACf,sBAAW,CAAC,+BAA+B,EAAE,CAAC,MAAM,CAAC;gBACjD,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,iBAAS,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;aAChE,CAAC,CACL,CAAC;YACF,kBAAkB,GAAG,KAAK,CAAC;SAC9B;aAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,IAAI,eAAe,CAAC,UAAU,EAAE;YACnE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,GAAG,UAAU,CAC7B,sBAAW,CAAC,yBAAyB,EAAE,CAAC,MAAM,CAAC;gBAC3C,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,iBAAS,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;aACjE,CAAC,CACL,CAAC;YACF,kBAAkB,GAAG,KAAK,CAAC;SAC9B;KACJ;IAED,OAAO,kBAAkB,CAAC;AAC9B,CAAC;AAjMD,gEAiMC;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,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAEvD,IAAI,CAAC,WAAW,EAAE;gBACd,IAAI,SAAS,CAAC,UAAU,EAAE;oBACtB,MAAM,OAAO,GAAG,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,cAAc,EAAE,CAAC;oBAC/C,IACI,CAAC,SAAS,CAAC,UAAU,CACjB,SAAS,CAAC,UAAU,CAAC,SAAS,EAC9B,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,EACtB,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,EACzB,cAAc;oBACd,uBAAuB,CAAC,SAAS,qDAEpC,EACH;wBACE,IAAI,OAAO,EAAE;4BACT,OAAO,CAAC,UAAU,CACd,sBAAW,CAAC,0BAA0B,EAAE,CAAC,MAAM,CAAC;gCAC5C,IAAI,EAAE,iBAAiB;gCACvB,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;6BACpD,CAAC,CACL,CAAC;4BAEF,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;yBAC5C;wBACD,OAAO,GAAG,KAAK,CAAC;qBACnB;iBACJ;qBAAM;oBACH,uCAAuC;oBACvC,OAAO,GAAG,KAAK,CAAC;oBAChB,IAAI,YAAY,EAAE;wBACd,MAAM,OAAO,GAAG,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,cAAc,EAAE,CAAC;wBAC/C,OAAO,CAAC,UAAU,CACd,sBAAW,CAAC,uBAAuB,EAAE,CAAC,MAAM,CAAC;4BACzC,IAAI,EAAE,OAAO,CAAC,YAAsB;4BACpC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,iBAAS,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;yBAClE,CAAC,CACL,CAAC;wBAEF,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;qBAC5C;iBACJ;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,qDAEpC,EACH;oBACE,IAAI,OAAO,EAAE;wBACT,OAAO,CAAC,UAAU,CACd,sBAAW,CAAC,0BAA0B,EAAE,CAAC,MAAM,CAAC;4BAC5C,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,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,UAAU;wBAC1C,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,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACzC,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;YACvC,IAAI,YAAY,EAAE;gBACd,YAAY,CAAC,UAAU,CACnB,sBAAW,CAAC,sBAAsB,EAAE,CAAC,MAAM,CAAC;oBACxC,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;AAtJD,8CAsJC;AAED,SAAgB,yBAAyB,CACrC,SAAwB,EACxB,IAAe,EACf,QAAmB,EACnB,KAAqB;IAErB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,SAAS,CAAC,aAAa,CACnB,gCAAc,CAAC,uBAAuB,EACtC,qBAAU,CAAC,mBAAmB,EAAE,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EACxE,IAAI,CACP,CAAC;QACF,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,oCAA4B,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,MAAA,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,mCAAI,OAAO,CAAC,UAAU,CAAC;YACtE,IAAI,CAAC,KAAK,EAAE;gBACR,IAAI,CAAC,UAAU,CACX,sBAAW,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC;oBAC9B,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,UAAU,CACX,sBAAW,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC;oBAChC,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC;iBACtC,CAAC,CACL,CAAC;aACL;iBAAM,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;gBACnD,IAAI,CAAC,UAAU,CACX,sBAAW,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC;oBAC7B,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC;iBACtC,CAAC,CACL,CAAC;aACL;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,sBAAW,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC;oBACpC,IAAI,EAAE,SAAS;iBAClB,CAAC,CACL,CAAC;gBACF,8BAA8B,GAAG,KAAK,CAAC;aAC1C;YAED,OAAO,KAAK,CAAC,SAAS,CAAC;SAC1B;QAED,IAAI,CAAC,UAAU,CAAC,sBAAW,CAAC,oBAAoB,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QACnG,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,qBAAU,CAAC,YAAY,EAAE,CAAC;SAC7C;aAAM,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;YAC/B,aAAa,GAAG,qBAAU,CAAC,eAAe,EAAE,CAAC;SAChD;aAAM;YACH,aAAa,GAAG,qBAAU,CAAC,eAAe,EAAE,CAAC;SAChD;QAED,SAAS,CAAC,aAAa,CACnB,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;AAnHD,8DAmHC;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,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACvE,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;QACrB,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE,KAAK;QACjB,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;KAC/B,CAAC,CAAC;IAEH,OAAO,iBAAS,CAAC,gCAAgC,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;AAClF,CAAC;AA7BD,wDA6BC;AAED,SAAS,2BAA2B,CAAC,SAAwB,EAAE,MAAc,EAAE,aAAsB;IACjG,OAAO,MAAM,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1C,IAAI,IAAI,CAAC,IAAI,qCAA6B,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,IAAI,CAAC,aAAa,EAAE;YAChB,IAAI,aAAa,CAAC,UAAU,EAAE;gBAC1B,SAAS,CAAC,aAAa,CACnB,gCAAc,CAAC,uBAAuB,EACtC,qBAAU,CAAC,sBAAsB,EAAE,EACnC,IAAI,CAAC,kBAAkB,CAC1B,CAAC;aACL;YAED,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC;IACtC,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,8BAA8B,CAAC,SAAwB,EAAE,MAAc,EAAE,aAAsB;IACpG,OAAO,MAAM,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1C,IAAI,IAAI,CAAC,IAAI,qCAA6B,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,IAAI,CAAC,aAAa,EAAE;YAChB,IAAI,aAAa,CAAC,aAAa,EAAE;gBAC7B,SAAS,CAAC,aAAa,CACnB,gCAAc,CAAC,uBAAuB,EACtC,qBAAU,CAAC,yBAAyB,EAAE,EACtC,IAAI,CAAC,kBAAkB,CAC1B,CAAC;aACL;YAED,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC;IACzC,CAAC,CAAC,CAAC;AACP,CAAC;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,qCAA6B,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"}
@@ -184,7 +184,7 @@ interface ClassDetails {
184
184
  flags: ClassTypeFlags;
185
185
  typeSourceId: TypeSourceId;
186
186
  baseClasses: Type[];
187
- mro: Type[];
187
+ mro: (ClassType | AnyType | UnknownType)[];
188
188
  declaration?: ClassDeclaration | SpecialBuiltInClassDeclaration | undefined;
189
189
  declaredMetaclass?: ClassType | UnknownType | undefined;
190
190
  effectiveMetaclass?: ClassType | UnknownType | undefined;
@@ -257,7 +257,6 @@ export declare namespace ClassType {
257
257
  function isUnspecialized(classType: ClassType): boolean;
258
258
  function isSpecialBuiltIn(classType: ClassType, className?: string): boolean;
259
259
  function isBuiltIn(classType: ClassType, className?: string | string[]): boolean;
260
- function derivesFromAnyOrUnknown(classType: ClassType): boolean;
261
260
  function supportsAbstractMethods(classType: ClassType): boolean;
262
261
  function isDataClass(classType: ClassType): boolean;
263
262
  function isSkipSynthesizedDataClassInit(classType: ClassType): boolean;
@@ -290,13 +289,13 @@ export declare namespace ClassType {
290
289
  function isTupleClass(classType: ClassType): boolean;
291
290
  function isReadOnlyInstanceVariables(classType: ClassType): boolean;
292
291
  function getTypeParameters(classType: ClassType): TypeVarType[];
293
- function hasUnknownBaseClass(classType: ClassType): boolean;
292
+ function derivesFromAnyOrUnknown(classType: ClassType): boolean;
294
293
  function getSymbolTable(classType: ClassType): SymbolTable;
295
294
  function getInheritedSlotsNames(classType: ClassType): string[] | undefined;
296
295
  function isHierarchyPartiallyEvaluated(classType: ClassType): boolean;
297
296
  function isSameGenericClass(classType: ClassType, type2: ClassType, recursionCount?: number): boolean;
298
297
  function isDerivedFrom(subclassType: ClassType, parentClassType: ClassType, inheritanceChain?: InheritanceChain): boolean;
299
- function getReverseMro(classType: ClassType): Type[];
298
+ function getReverseMro(classType: ClassType): (ClassType | UnknownType | AnyType)[];
300
299
  }
301
300
  export interface FunctionParameter {
302
301
  category: ParameterCategory;
@@ -328,7 +327,7 @@ export declare const enum FunctionTypeFlags {
328
327
  PyTypedDefinition = 4096,
329
328
  Final = 8192,
330
329
  UnannotatedParams = 16384,
331
- SkipArgsKwargsCompatibilityCheck = 32768,
330
+ GradualCallableForm = 32768,
332
331
  ParamSpecValue = 65536,
333
332
  PartiallyEvaluated = 131072,
334
333
  Overridden = 262144,
@@ -349,7 +348,6 @@ interface FunctionDetails {
349
348
  deprecatedMessage?: string | undefined;
350
349
  methodClass?: ClassType | undefined;
351
350
  decoratorDataClassBehaviors?: DataClassBehaviors | undefined;
352
- paramSpec?: TypeVarType | undefined;
353
351
  constructorTypeVarScopeId?: TypeVarScopeId | undefined;
354
352
  higherOrderTypeVarScopeIds?: TypeVarScopeId[];
355
353
  }
@@ -388,14 +386,15 @@ export declare namespace FunctionType {
388
386
  function cloneAsInstance(type: FunctionType): FunctionType;
389
387
  function cloneAsInstantiable(type: FunctionType): FunctionType;
390
388
  function cloneForSpecialization(type: FunctionType, specializedTypes: SpecializedFunctionTypes, specializedInferredReturnType: Type | undefined): FunctionType;
391
- function cloneForParamSpec(type: FunctionType, paramSpecValue: FunctionType | undefined): FunctionType;
389
+ function applyParamSpecValue(type: FunctionType, paramSpecValue: FunctionType): FunctionType;
392
390
  function cloneWithNewFlags(type: FunctionType, flags: FunctionTypeFlags): FunctionType;
393
391
  function cloneWithNewTypeVarScopeId(type: FunctionType, newScopeId: TypeVarScopeId, typeParameters: TypeVarType[], trackedSignatures?: SignatureWithOffsets[]): FunctionType;
394
392
  function cloneWithDocString(type: FunctionType, docString?: string): FunctionType;
395
393
  function cloneWithDeprecatedMessage(type: FunctionType, deprecatedMessage?: string): FunctionType;
396
- function cloneForParamSpecApplication(type: FunctionType, paramSpecValue: FunctionType): FunctionType;
397
- function cloneRemoveParamSpecVariadics(type: FunctionType, paramSpec: TypeVarType): FunctionType;
398
- function addDefaultParameters(functionType: FunctionType, useUnknown?: boolean): void;
394
+ function cloneRemoveParamSpecArgsKwargs(type: FunctionType, stripPositionOnlySeparator?: boolean): FunctionType;
395
+ function getParamSpecFromArgsKwargs(type: FunctionType): TypeVarType | undefined;
396
+ function addParamSpecVariadics(type: FunctionType, paramSpec: TypeVarType): void;
397
+ function addDefaultParameters(type: FunctionType, useUnknown?: boolean): void;
399
398
  function addHigherOrderTypeVarScopeIds(functionType: FunctionType, scopeIds: (TypeVarScopeId | undefined)[] | TypeVarScopeId | undefined): void;
400
399
  function getDefaultParameters(useUnknown?: boolean): FunctionParameter[];
401
400
  function hasDefaultParameters(functionType: FunctionType): boolean;
@@ -414,7 +413,7 @@ export declare namespace FunctionType {
414
413
  function isPyTypedDefinition(type: FunctionType): boolean;
415
414
  function isFinal(type: FunctionType): boolean;
416
415
  function hasUnannotatedParams(type: FunctionType): boolean;
417
- function shouldSkipArgsKwargsCompatibilityCheck(type: FunctionType): boolean;
416
+ function isGradualCallableForm(type: FunctionType): boolean;
418
417
  function isParamSpecValue(type: FunctionType): boolean;
419
418
  function isPartiallyEvaluated(type: FunctionType): boolean;
420
419
  function isOverridden(type: FunctionType): boolean;
@@ -423,7 +422,7 @@ export declare namespace FunctionType {
423
422
  function addParameter(type: FunctionType, param: FunctionParameter): void;
424
423
  function addPositionOnlyParameterSeparator(type: FunctionType): void;
425
424
  function addKeywordOnlyParameterSeparator(type: FunctionType): void;
426
- function getSpecializedReturnType(type: FunctionType, includeInferred?: boolean): Type | undefined;
425
+ function getEffectiveReturnType(type: FunctionType, includeInferred?: boolean): Type | undefined;
427
426
  }
428
427
  export interface OverloadedFunctionType extends TypeBase {
429
428
  category: TypeCategory.OverloadedFunction;