@zzzen/pyright-internal 1.2.0-dev.20230226 → 1.2.0-dev.20230312
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.
- package/dist/analyzer/binder.d.ts +0 -1
- package/dist/analyzer/binder.js +32 -95
- package/dist/analyzer/binder.js.map +1 -1
- package/dist/analyzer/checker.js +48 -31
- package/dist/analyzer/checker.js.map +1 -1
- package/dist/analyzer/codeFlowEngine.js +4 -4
- package/dist/analyzer/codeFlowEngine.js.map +1 -1
- package/dist/analyzer/commentUtils.js +11 -1
- package/dist/analyzer/commentUtils.js.map +1 -1
- package/dist/analyzer/constructorTransform.d.ts +1 -0
- package/dist/analyzer/constructorTransform.js +19 -2
- package/dist/analyzer/constructorTransform.js.map +1 -1
- package/dist/analyzer/declaration.d.ts +2 -4
- package/dist/analyzer/declaration.js +6 -1
- package/dist/analyzer/declaration.js.map +1 -1
- package/dist/analyzer/declarationUtils.d.ts +1 -5
- package/dist/analyzer/declarationUtils.js +2 -47
- package/dist/analyzer/declarationUtils.js.map +1 -1
- package/dist/analyzer/docStringConversion.js +9 -3
- package/dist/analyzer/docStringConversion.js.map +1 -1
- package/dist/analyzer/packageTypeVerifier.js +40 -40
- package/dist/analyzer/packageTypeVerifier.js.map +1 -1
- package/dist/analyzer/parseTreeUtils.d.ts +4 -2
- package/dist/analyzer/parseTreeUtils.js +77 -2
- package/dist/analyzer/parseTreeUtils.js.map +1 -1
- package/dist/analyzer/patternMatching.js +20 -1
- package/dist/analyzer/patternMatching.js.map +1 -1
- package/dist/analyzer/program.d.ts +1 -0
- package/dist/analyzer/program.js +154 -13
- package/dist/analyzer/program.js.map +1 -1
- package/dist/analyzer/properties.js +3 -2
- package/dist/analyzer/properties.js.map +1 -1
- package/dist/analyzer/protocols.js +4 -2
- package/dist/analyzer/protocols.js.map +1 -1
- package/dist/analyzer/pythonPathUtils.js +27 -13
- package/dist/analyzer/pythonPathUtils.js.map +1 -1
- package/dist/analyzer/service.js +6 -1
- package/dist/analyzer/service.js.map +1 -1
- package/dist/analyzer/sourceFile.js +12 -1
- package/dist/analyzer/sourceFile.js.map +1 -1
- package/dist/analyzer/symbol.js +1 -4
- package/dist/analyzer/symbol.js.map +1 -1
- package/dist/analyzer/symbolUtils.d.ts +0 -3
- package/dist/analyzer/symbolUtils.js +1 -14
- package/dist/analyzer/symbolUtils.js.map +1 -1
- package/dist/analyzer/typeDocStringUtils.js +5 -3
- package/dist/analyzer/typeDocStringUtils.js.map +1 -1
- package/dist/analyzer/typeEvaluator.js +642 -259
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/analyzer/typeEvaluatorTypes.d.ts +11 -2
- package/dist/analyzer/typeGuards.js +2 -2
- package/dist/analyzer/typeGuards.js.map +1 -1
- package/dist/analyzer/typePrinter.js +63 -55
- package/dist/analyzer/typePrinter.js.map +1 -1
- package/dist/analyzer/typeUtils.d.ts +2 -0
- package/dist/analyzer/typeUtils.js +22 -3
- package/dist/analyzer/typeUtils.js.map +1 -1
- package/dist/analyzer/typedDicts.d.ts +2 -1
- package/dist/analyzer/typedDicts.js +83 -57
- package/dist/analyzer/typedDicts.js.map +1 -1
- package/dist/analyzer/types.d.ts +3 -1
- package/dist/analyzer/types.js +8 -0
- package/dist/analyzer/types.js.map +1 -1
- package/dist/commands/dumpFileDebugInfoCommand.js +78 -0
- package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
- package/dist/common/collectionUtils.d.ts +1 -0
- package/dist/common/collectionUtils.js +8 -1
- package/dist/common/collectionUtils.js.map +1 -1
- package/dist/common/extensibility.js +25 -1
- package/dist/common/extensibility.js.map +1 -1
- package/dist/common/positionUtils.d.ts +2 -0
- package/dist/common/positionUtils.js +15 -1
- package/dist/common/positionUtils.js.map +1 -1
- package/dist/languageServerBase.js +9 -1
- package/dist/languageServerBase.js.map +1 -1
- package/dist/languageService/callHierarchyProvider.js +4 -2
- package/dist/languageService/callHierarchyProvider.js.map +1 -1
- package/dist/languageService/completionProvider.d.ts +4 -2
- package/dist/languageService/completionProvider.js +252 -191
- package/dist/languageService/completionProvider.js.map +1 -1
- package/dist/languageService/completionProviderUtils.d.ts +1 -1
- package/dist/languageService/completionProviderUtils.js +3 -3
- package/dist/languageService/completionProviderUtils.js.map +1 -1
- package/dist/languageService/definitionProvider.js +2 -1
- package/dist/languageService/definitionProvider.js.map +1 -1
- package/dist/languageService/documentSymbolProvider.js +2 -1
- package/dist/languageService/documentSymbolProvider.js.map +1 -1
- package/dist/languageService/hoverProvider.js +11 -3
- package/dist/languageService/hoverProvider.js.map +1 -1
- package/dist/languageService/importAdder.js +4 -1
- package/dist/languageService/importAdder.js.map +1 -1
- package/dist/languageService/indentationUtils.d.ts +1 -1
- package/dist/languageService/indentationUtils.js +22 -12
- package/dist/languageService/indentationUtils.js.map +1 -1
- package/dist/languageService/renameModuleProvider.d.ts +1 -1
- package/dist/languageService/renameModuleProvider.js +28 -8
- package/dist/languageService/renameModuleProvider.js.map +1 -1
- package/dist/languageService/tooltipUtils.js +2 -1
- package/dist/languageService/tooltipUtils.js.map +1 -1
- package/dist/localization/localize.d.ts +12 -2
- package/dist/localization/localize.js +5 -1
- package/dist/localization/localize.js.map +1 -1
- package/dist/localization/package.nls.en-us.json +6 -2
- package/dist/parser/parser.js +40 -25
- package/dist/parser/parser.js.map +1 -1
- package/dist/parser/tokenizer.js +1 -1
- package/dist/pyright.js +1 -1
- package/dist/pyright.js.map +1 -1
- package/dist/tests/completions.test.js +445 -0
- package/dist/tests/completions.test.js.map +1 -1
- package/dist/tests/docStringConversion.test.js +23 -0
- package/dist/tests/docStringConversion.test.js.map +1 -1
- package/dist/tests/fourslash/completions.dictionary.keys.expression.fourslash.js +13 -3
- package/dist/tests/fourslash/completions.dictionary.keys.expression.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.dictionary.keys.stringLiterals.fourslash.js +7 -2
- package/dist/tests/fourslash/completions.dictionary.keys.stringLiterals.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.errorNodes.fourslash.d.ts +1 -0
- package/dist/tests/fourslash/completions.errorNodes.fourslash.js +24 -0
- package/dist/tests/fourslash/completions.errorNodes.fourslash.js.map +1 -0
- package/dist/tests/fourslash/hover.slots.fourslash.d.ts +1 -0
- package/dist/tests/fourslash/hover.slots.fourslash.js +16 -0
- package/dist/tests/fourslash/hover.slots.fourslash.js.map +1 -0
- package/dist/tests/hoverProvider.test.js +1 -1
- package/dist/tests/hoverProvider.test.js.map +1 -1
- package/dist/tests/importAdder.test.js +13 -0
- package/dist/tests/importAdder.test.js.map +1 -1
- package/dist/tests/indentationUtils.reindent.test.js +21 -0
- package/dist/tests/indentationUtils.reindent.test.js.map +1 -1
- package/dist/tests/moveSymbol.importAdder.test.js +137 -31
- package/dist/tests/moveSymbol.importAdder.test.js.map +1 -1
- package/dist/tests/moveSymbol.insertion.test.js +98 -0
- package/dist/tests/moveSymbol.insertion.test.js.map +1 -1
- package/dist/tests/moveSymbol.misc.test.js +27 -0
- package/dist/tests/moveSymbol.misc.test.js.map +1 -1
- package/dist/tests/renameModuleTestUtils.d.ts +1 -1
- package/dist/tests/renameModuleTestUtils.js +9 -5
- package/dist/tests/renameModuleTestUtils.js.map +1 -1
- package/dist/tests/typeEvaluator1.test.js +8 -0
- package/dist/tests/typeEvaluator1.test.js.map +1 -1
- package/dist/tests/typeEvaluator2.test.js +5 -1
- package/dist/tests/typeEvaluator2.test.js.map +1 -1
- package/dist/tests/typeEvaluator3.test.js +20 -4
- package/dist/tests/typeEvaluator3.test.js.map +1 -1
- package/dist/tests/typeEvaluator4.test.js +4 -0
- package/dist/tests/typeEvaluator4.test.js.map +1 -1
- package/dist/tests/typeEvaluator5.test.js +6 -0
- package/dist/tests/typeEvaluator5.test.js.map +1 -1
- package/package.json +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"docStringConversion.js","sourceRoot":"","sources":["../../../src/analyzer/docStringConversion.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"docStringConversion.js","sourceRoot":"","sources":["../../../src/analyzer/docStringConversion.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAEH,qDAA0D;AAE1D,2CAA2C;AAC3C,EAAE;AACF,0EAA0E;AAC1E,8CAA8C;AAC9C,EAAE;AACF,6BAA6B;AAC7B,8HAA8H;AAC9H,EAAE;AACF,2EAA2E;AAC3E,2EAA2E;AAC3E,aAAa;AACb,SAAgB,0BAA0B,CAAC,SAAiB;IACxD,OAAO,IAAI,kBAAkB,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;AACvD,CAAC;AAFD,gEAEC;AAED,uEAAuE;AACvE,qEAAqE;AACrE,iDAAiD;AACjD,SAAgB,2BAA2B,CAAC,SAAiB;IACzD,MAAM,KAAK,GAAG,IAAA,uCAAsB,EAAC,SAAS,CAAC,CAAC;IAChD,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACtB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,IAAI,wBAAwB,CAAC,IAAI,CAAC,IAAI,wBAAwB,CAAC,IAAI,CAAC,EAAE;YAClE,SAAS;SACZ;QAED,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACrB;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;AACvC,CAAC;AAdD,kEAcC;AAOD,oCAAoC;AACpC,MAAM,uBAAuB,GAAG,MAAM,CAAC;AACvC,MAAM,mBAAmB,GAAG,IAAI,CAAC;AACjC,MAAM,iBAAiB,GAAG,WAAW,CAAC;AACtC,MAAM,gBAAgB,GAAG,cAAc,CAAC;AACxC,MAAM,iBAAiB,GAAG,kBAAkB,CAAC;AAC7C,MAAM,gBAAgB,GAAG,kBAAkB,CAAC;AAC5C,MAAM,qBAAqB,GAAG,WAAW,CAAC;AAC1C,MAAM,yBAAyB,GAAG,YAAY,CAAC;AAC/C,MAAM,uBAAuB,GAAG,eAAe,CAAC;AAChD,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AAC/C,MAAM,iBAAiB,GAAG,WAAW,CAAC;AACtC,MAAM,mBAAmB,GAAG,4BAA4B,CAAC;AACzD,MAAM,aAAa,GAAG,QAAQ,CAAC;AAC/B,MAAM,4BAA4B,GAAG,iFAAiF,CAAC;AACvH,MAAM,uBAAuB,GAAG,mBAAmB,CAAC,CAAC,wEAAwE;AAC7H,MAAM,kBAAkB,GAAG,kBAAkB,CAAC;AAE9C,MAAM,gBAAgB,GAAwB;IAC1C,EAAE,GAAG,EAAE,iBAAiB,EAAE,WAAW,EAAE,GAAG,EAAE;IAC5C,EAAE,GAAG,EAAE,iBAAiB,EAAE,WAAW,EAAE,GAAG,EAAE;IAC5C,EAAE,GAAG,EAAE,iBAAiB,EAAE,WAAW,EAAE,GAAG,EAAE;IAC5C,EAAE,GAAG,EAAE,mBAAmB,EAAE,WAAW,EAAE,GAAG,EAAE;CACjD,CAAC;AAEF,sCAAsC;AACtC,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAC/B,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAC/B,MAAM,WAAW,GAAG,IAAI,CAAC;AACzB,MAAM,UAAU,GAAG,KAAK,CAAC;AACzB,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AAC1D,MAAM,UAAU,GAAG,iBAAiB,CAAC;AAErC,MAAM,oBAAoB,GAAG,cAAc,CAAC;AAC5C,MAAM,kBAAkB,GAAG,SAAS,CAAC;AAErC,MAAM,WAAW,GAAwB;IACrC,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE;IAClC,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE;CACrC,CAAC;AAEF,MAAM,iBAAiB,GAAG,MAAM,CAAC;AACjC,oFAAoF;AACpF,MAAM,uBAAuB,GAAG,SAAS,CAAC;AAC1C,MAAM,wBAAwB,GAAwB;IAClD,EAAE,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,EAAE;IACnC,EAAE,GAAG,EAAE,aAAa,EAAE,WAAW,EAAE,KAAK,EAAE;IAC1C,sFAAsF;IACtF,EAAE,GAAG,EAAE,iBAAiB,EAAE,WAAW,EAAE,GAAG,EAAE;IAC5C,EAAE,GAAG,EAAE,iBAAiB,EAAE,WAAW,EAAE,GAAG,EAAE;CAC/C,CAAC;AAWF,MAAM,kBAAkB;IAiBpB,YAAY,KAAa;QAhBjB,aAAQ,GAAG,EAAE,CAAC;QACd,yBAAoB,GAAG,IAAI,CAAC;QAC5B,sBAAiB,GAAG,KAAK,CAAC;QAC1B,0BAAqB,GAAG,KAAK,CAAC;QAG9B,gBAAW,GAAY,EAAE,CAAC;QAI1B,aAAQ,GAAG,CAAC,CAAC;QAEb,iBAAY,GAAG,CAAC,CAAC;QAKrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,IAAA,uCAAsB,EAAC,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,OAAO;QACH,MAAM,QAAQ,GAAG,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3D,IAAI,QAAQ,EAAE;YACV,wBAAwB;YACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,CAAC;SAC3E;QAED,OAAO,IAAI,CAAC,uBAAuB,EAAE,KAAK,SAAS,EAAE;YACjD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC;YAEjC,IAAI,CAAC,MAAM,EAAE,CAAC;YAEd,0EAA0E;YAC1E,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,UAAU,EAAE;gBACxD,MAAM;aACT;SACJ;QAED,yCAAyC;QACzC,IACI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,mBAAmB;YACxC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,aAAa;YAClC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,kBAAkB,EACzC;YACE,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;SACxC;aAAM,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC/B,IAAI,CAAC,wBAAwB,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;SAC5D;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IAChC,CAAC;IAEO,QAAQ;QACZ,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpB,CAAC;IAEO,uBAAuB;QAC3B,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACvF,CAAC;IAEO,YAAY;QAChB,OAAO,IAAI,CAAC,uBAAuB,EAAE,IAAI,EAAE,CAAC;IAChD,CAAC;IAEO,cAAc;QAClB,OAAO,mBAAmB,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;IACpD,CAAC;IAEO,WAAW;;QACf,OAAO,mBAAmB,CAAC,MAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,mCAAI,EAAE,CAAC,CAAC;IACtE,CAAC;IAEO,OAAO,CAAC,CAAS;QACrB,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/D,CAAC;IAEO,gBAAgB;QACpB,OAAO,mBAAmB,CACtB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CACvF,CAAC;IACN,CAAC;IAEO,0BAA0B;QAC9B,OAAO,IAAI,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC;IACrD,CAAC;IAEO,uBAAuB;QAC3B,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACzD,CAAC;IAEO,gBAAgB,CAAC,IAAW;QAChC,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU,EAAE;YACjC,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;SAClC;QAED,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACvB,CAAC;IAEO,SAAS;QACb,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/C,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU,EAAE;YACjC,8CAA8C;YAC9C,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;SAClC;IACL,CAAC;IAEO,UAAU;QACd,IAAI,wBAAwB,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC,EAAE;YAC1D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;YAC/B,OAAO;SACV;QAED,IAAI,IAAI,CAAC,mBAAmB,EAAE,EAAE;YAC5B,OAAO;SACV;QAED,IAAI,IAAI,CAAC,kBAAkB,EAAE,EAAE;YAC3B,OAAO;SACV;QAED,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE;YACtB,OAAO;SACV;QAED,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE;YACxB,OAAO;SACV;QAED,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACnB,OAAO;SACV;QAED,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE;YACxB,OAAO;SACV;QAED,IAAI,IAAI,CAAC,gBAAgB,EAAE,EAAE;YACzB,OAAO;SACV;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QAE9D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpB,CAAC;IAEO,sBAAsB,CAAC,IAAY;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACtC,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAEzC,IACI,UAAU,GAAG,UAAU;YACvB,CAAC,wBAAwB,CAAC,IAAI,CAAC;YAC/B,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YAC1C,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC/B,CAAC,SAAS,CAAC,IAAI,CAAC,EAClB;YACE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC;SAClE;QAED,IACI,UAAU,GAAG,UAAU;YACvB,CAAC,wBAAwB,CAAC,IAAI,CAAC;YAC/B,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YAC1C,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EACjC;YACE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC;SAClE;QAED,IAAI,UAAU,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;YACjG,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;SACpC;aAAM;YACH,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;SAC3B;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,cAAc,CAAC,IAAY;QAC/B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;QAC5F,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,WAAW,CAAC,IAAY;QAC5B,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,eAAe,CAAC,IAAY;QAChC,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAEtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAE9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACnC,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAEpB,IAAI,CAAC,GAAG,CAAC,EAAE;gBACP,IAAI,CAAC,iBAAiB,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC;gBACjD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;aACrB;YAED,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACnB,SAAS;aACZ;YAED,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAE9B,IAAI,CAAC,KAAK,CAAC,EAAE;gBACT,6DAA6D;gBAC7D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;oBACpB,4DAA4D;oBAC5D,KAAK,MAAM,cAAc,IAAI,gBAAgB,EAAE;wBAC3C,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;4BAC/B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC;4BAClE,MAAM;yBACT;qBACJ;oBAED,gFAAgF;oBAChF,0DAA0D;oBAC1D,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;wBAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;wBAC7C,SAAS;qBACZ;oBAED,2BAA2B;oBAC3B,iFAAiF;oBACjF,6DAA6D;oBAC7D,8EAA8E;oBAC9E,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;wBAC7B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;wBAC5C,SAAS;qBACZ;iBACJ;gBAED,sDAAsD;gBACtD,EAAE;gBACF,2DAA2D;gBAC3D,8DAA8D;gBAC9D,0CAA0C;gBAC1C,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/C,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;oBACtC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;oBACvB,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;iBACnB;aACJ;YAED,mEAAmE;YACnE,6DAA6D;YAC7D,kEAAkE;YAElE,0FAA0F;YAC1F,2CAA2C;YAC3C,6FAA6F;YAC7F,2CAA2C;YAE3C,4CAA4C;YAE5C,mEAAmE;YACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACxC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACtB,qBAAqB;gBACrB,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBACvB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;iBACtB;qBAAM;oBACH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,4BAA4B,EAAE,MAAM,CAAC,CAAC,CAAC;iBACpE;YACL,CAAC,CAAC,CAAC;SACN;QAED,+DAA+D;QAC/D,+DAA+D;QAC/D,iEAAiE;QACjE,gCAAgC;QAChC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;IAC1B,CAAC;IAEO,mBAAmB,CAAC,IAAY;QACpC,oFAAoF;QACpF,IAAI,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACpC,OAAO,EAAE,CAAC;SACb;QAED,wBAAwB,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAE9F,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,WAAW;QACf,IAAI,wBAAwB,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC,EAAE;YAC1D,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO;SACV;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;IAClC,CAAC;IAEO,wBAAwB,CAAC,KAAY;QACzC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;IAC9C,CAAC;IAEO,mBAAmB;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC9D,IAAI,KAAK,KAAK,IAAI,EAAE;YAChB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;YAE1C,gDAAgD;YAChD,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAEnC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAChD,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;SACf;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,mBAAmB;QACvB,0DAA0D;QAC1D,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,KAAK,IAAI,CAAC,YAAY,EAAE;YAC7F,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACxB,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,EAAE,CAAC;SACpB;aAAM;YACH,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;SACzC;QAED,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpB,CAAC;IAEO,aAAa;QACjB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE;YAC1C,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAClD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC,CAAC;QACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,aAAa;QACjB,IAAI,IAAI,CAAC,0BAA0B,EAAE,IAAI,wBAAwB,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE;YACpF,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO;SACV;QAED,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC,CAAC;QACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpB,CAAC;IAEO,kBAAkB;QACtB,mCAAmC;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QAC7C,IAAI,IAAI,KAAK,SAAS,EAAE;YACpB,OAAO,KAAK,CAAC;SAChB;aAAM,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE;YACxC,OAAO,KAAK,CAAC;SAChB;QAED,6DAA6D;QAC7D,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC1B,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAChB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC7B,IAAI,wBAAwB,CAAC,IAAI,CAAC,EAAE;gBAChC,SAAS;aACZ;YAED,kFAAkF;YAClF,IAAI,IAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBACtB,MAAM;aACT;YAED,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,CAAC,GAAG,CAAC,EAAE;YACP,OAAO,KAAK,CAAC;SAChB;QAED,2DAA2D;QAC3D,IAAI,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,EAAE;YAC7B,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACxB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;YACzD,OAAO,IAAI,CAAC;SACf;QAED,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,kBAAkB;QACtB,2FAA2F;QAC3F,IAAI,wBAAwB,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC,EAAE;YAC1D,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO;SACV;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QAC7C,IAAI,IAAI,CAAC,0BAA0B,EAAE,IAAI,wBAAwB,CAAC,IAAI,CAAC,EAAE;YACrE,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO;SACV;QAED,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpB,CAAC;IAEO,4BAA4B;QAChC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpB,CAAC;IAEO,eAAe;QACnB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE;YAC9C,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC5C,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;QACnC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,iFAAiF;IACjF,gFAAgF;IAChF,kBAAkB;IAClB,EAAE;IACF,cAAc;IACd,kCAAkC;IAClC,WAAW;IACX,kCAAkC;IAClC,yBAAyB;IACzB,aAAa;IACb,+BAA+B;IAC/B,yBAAyB;IACzB,aAAa;IACb,sCAAsC;IAC9B,eAAe;;QACnB,IAAI,IAAI,CAAC,iBAAiB,EAAE;YACxB,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAE/B,iBAAiB;QACjB,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YACtB,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;SACf;QAED,mCAAmC;QACnC,MAAM,eAAe,GACjB,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,GAAG,CAAC,CAAA,IAAI,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,IAAI,CAAC,CAAA,IAAI,CAAC,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,0CAAE,MAAM,mCAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,uBAAuB;QAEvH,0EAA0E;QAC1E,MAAM,aAAa,GAAG,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,2BAA2B;QAE1F,IAAI,eAAe,IAAI,aAAa,EAAE;YAClC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YAC7C,gFAAgF;YAChF,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;gBACnG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC;aAClE;YAED,0BAA0B;YAC1B,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;SACf;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,gBAAgB;QACpB,IAAI,IAAI,CAAC,iBAAiB,EAAE;YACxB,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAEjC,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC9B,IAAI,CAAC,WAAW,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAChE,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAC7C,OAAO,IAAI,CAAC;SACf;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,8DAA8D;IAC9D,EAAE;IACF,WAAW;IACX,4BAA4B;IAC5B,2BAA2B;IAC3B,4BAA4B;IAC5B,qBAAqB;IACrB,oBAAoB;IACpB,4BAA4B;IAC5B,EAAE;IACF,eAAe;IACf,mCAAmC;IACnC,mCAAmC;IACnC,mCAAmC;IACnC,mCAAmC;IAC3B,gBAAgB;QACpB,IAAI,wBAAwB,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YAC/E,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;YAC7B,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO;SACV;QAED,IAAI,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAE/B,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC9B,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YAC9B,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;YAC7B,OAAO;SACV;aAAM;YACH,IAAI,aAAa,GAAG,GAAG,CAAC;YACxB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvD,MAAM,aAAa,GAAa,EAAE,CAAC;YAEnC,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;gBAC3B,GAAG;oBACC,qDAAqD;oBACrD,kEAAkE;oBAClE,qFAAqF;oBACrF,kDAAkD;oBAClD,IAAI,QAAQ,GAAG,CAAC,CAAC;oBACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBACzC,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;wBAChC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;wBAChC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,GAAG,GAAG,CAAC,CAAC;wBAEvD,IAAI,aAAa,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;4BAChC,aAAa,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,GAAG,CAAC;yBACtC;6BAAM;4BACH,aAAa,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,SAAS,GAAG,CAAC,CAAC;yBACnE;wBACD,QAAQ,IAAI,GAAG,CAAC;qBACnB;oBACD,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAChB,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;iBAC9B,QACG,CAAC,wBAAwB,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC;oBACzD,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;oBAC5B,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAC/B;gBAEF,IAAI,CAAC,WAAW,CAAC,QAAQ,GAAG,KAAK,CAAC;gBAElC,gBAAgB;gBAChB,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oBACxB,aAAa,IAAI,GAAG,CAAC,GAAG,CAAC;gBAC7B,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;gBAEhC,qBAAqB;gBACrB,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC3E,IAAI,CAAC,WAAW,CAAC,IAAI,YAAY,GAAG,CAAC,CAAC;gBACtC,IAAI,CAAC,QAAQ,EAAE,CAAC;aACnB;iBAAM;gBACH,qBAAqB;gBACrB,IAAI,QAAQ,GAAG,CAAC,CAAC;gBACjB,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC3B,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;oBAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,GAAG,GAAG,CAAC,CAAC;oBACvD,aAAa,IAAI,GAAG,SAAS,GAAG,CAAC;oBAEjC,QAAQ,IAAI,GAAG,CAAC;gBACpB,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;gBAChC,IAAI,CAAC,QAAQ,EAAE,CAAC;aACnB;SACJ;IACL,CAAC;IAEO,UAAU;QACd,IAAI,IAAI,CAAC,iBAAiB,EAAE;YACxB,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,MAAK,CAAC,EAAE;YACzB,sEAAsE;YACtE,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE;gBAC1B,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;aAChE;YAED,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,CAAC,QAAQ,EAAE,CAAC;YAEhB,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU,EAAE;gBACjC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAC1C;YACD,OAAO,IAAI,CAAC;SACf;QAED,MAAM,aAAa,GAAG,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,MAAK,CAAC,EAAE;YAC7B,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC/B,IAAI,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC;aAC5B;iBAAM,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE;gBACrC,sEAAsE;gBACtE,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;aACpE;YAED,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU,EAAE;gBACjC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAC1C;YACD,OAAO,IAAI,CAAC;SACf;QAED,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7D,IAAI,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,MAAM,MAAK,CAAC,EAAE;YACjC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;SACf;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,UAAU;QACd,IAAI,wBAAwB,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC,IAAI,IAAI,CAAC,0BAA0B,EAAE,EAAE;YAC/F,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO;SACV;QAED,yCAAyC;QACzC,MAAM,eAAe,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QAE3C,6EAA6E;QAC7E,IAAI,eAAe,EAAE;YACjB,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,SAAS,EAAE,CAAC;YAC7C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,CAAC,QAAQ,EAAE,CAAC;SACnB;IACL,CAAC;IAEO,eAAe;QACnB,gFAAgF;QAEhF,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QAC5D,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACtC,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAE3B,IAAI,aAAa,KAAK,OAAO,EAAE;gBAC3B,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;gBAClC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnB,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACxB,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBAC5B,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACxB,IAAI,CAAC,WAAW,EAAE,CAAC;aACtB;SACJ;QAED,IAAI,IAAI,CAAC,YAAY,KAAK,CAAC,EAAE;YACzB,8CAA8C;YAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;SACpB;aAAM;YACH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC;SAC3C;QAED,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpB,CAAC;IAEO,oBAAoB;QACxB,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC,IAAI,IAAI,CAAC,0BAA0B,EAAE,EAAE;YAChG,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO;SACV;QAED,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC5B,mEAAmE;YACnE,wEAAwE;YACxE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;SACxD;QAED,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpB,CAAC;IAEO,WAAW,CAAC,IAAa;QAC7B,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE;YACjC,IAAI,CAAC,QAAQ,IAAI,IAAI,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;SACrC;aAAM,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;YACnC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;YACtB,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;SACpC;IACL,CAAC;IAEO,OAAO,CAAC,IAAY;QACxB,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;QACtB,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;IACtC,CAAC;IAEO,wBAAwB,CAAC,IAAY,EAAE,SAAS,GAAG,KAAK;QAC5D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;QAC1C,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;QAElC,IAAI,CAAC,SAAS,EAAE;YACZ,IAAI,CAAC,WAAW,EAAE,CAAC;SACtB;QAED,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;CACJ;AAED,SAAS,mBAAmB,CAAC,CAAS;IAClC,OAAO,CAAC,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,wBAAwB,CAAC,CAAqB;IACnD,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,SAAS,CAAC,IAAwB;;IACvC,OAAO,IAAI,KAAK,SAAS,IAAI,CAAC,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,0CAAE,MAAM,mCAAI,CAAC,CAAC,GAAG,CAAC,CAAC;AAClF,CAAC"}
|
@@ -79,15 +79,15 @@ class PackageTypeVerifier {
|
|
79
79
|
if (publicModules.length === 0) {
|
80
80
|
commonDiagnostics.push(new diagnostic_1.Diagnostic(0 /* Error */, `Module "${trimmedModuleName}" cannot be resolved`, (0, textRange_1.getEmptyRange)()));
|
81
81
|
}
|
82
|
-
// Build a
|
82
|
+
// Build a set of all public symbols exported by this package. We'll
|
83
83
|
// use this map to determine which diagnostics to report. We don't want
|
84
84
|
// to report diagnostics many times for types that include public types.
|
85
|
-
const
|
85
|
+
const publicSymbols = new Set();
|
86
86
|
publicModules.forEach((moduleName) => {
|
87
|
-
this._getPublicSymbolsForModule(moduleName,
|
87
|
+
this._getPublicSymbolsForModule(moduleName, publicSymbols, report.alternateSymbolNames);
|
88
88
|
});
|
89
89
|
publicModules.forEach((moduleName) => {
|
90
|
-
this._verifyTypesOfModule(moduleName,
|
90
|
+
this._verifyTypesOfModule(moduleName, publicSymbols, report);
|
91
91
|
});
|
92
92
|
}
|
93
93
|
}
|
@@ -138,7 +138,7 @@ class PackageTypeVerifier {
|
|
138
138
|
_resolveImport(moduleName) {
|
139
139
|
return this._importResolver.resolveImport('', this._execEnv, (0, importResolver_1.createImportedModuleDescriptor)(moduleName));
|
140
140
|
}
|
141
|
-
_getPublicSymbolsForModule(moduleName,
|
141
|
+
_getPublicSymbolsForModule(moduleName, publicSymbols, alternateSymbolNames) {
|
142
142
|
const importResult = this._resolveImport(moduleName);
|
143
143
|
if (importResult.isImportFound) {
|
144
144
|
const modulePath = importResult.resolvedPaths[importResult.resolvedPaths.length - 1];
|
@@ -152,11 +152,11 @@ class PackageTypeVerifier {
|
|
152
152
|
};
|
153
153
|
const parseTree = sourceFile.getParseResults().parseTree;
|
154
154
|
const moduleScope = (0, scopeUtils_1.getScopeForNode)(parseTree);
|
155
|
-
this._getPublicSymbolsInSymbolTable(
|
155
|
+
this._getPublicSymbolsInSymbolTable(publicSymbols, alternateSymbolNames, module, module.name, moduleScope.symbolTable, 3 /* Module */);
|
156
156
|
}
|
157
157
|
}
|
158
158
|
}
|
159
|
-
_getPublicSymbolsInSymbolTable(
|
159
|
+
_getPublicSymbolsInSymbolTable(publicSymbols, alternateSymbolNames, module, scopeName, symbolTable, scopeType) {
|
160
160
|
symbolTable.forEach((symbol, name) => {
|
161
161
|
if (!(0, symbolNameUtils_1.isPrivateOrProtectedName)(name) &&
|
162
162
|
!symbol.isIgnoredForProtocolMatch() &&
|
@@ -164,7 +164,7 @@ class PackageTypeVerifier {
|
|
164
164
|
const fullName = `${scopeName}.${name}`;
|
165
165
|
if (!symbol.isExternallyHidden() && !symbol.isPrivateMember() && !symbol.isPrivatePyTypedImport()) {
|
166
166
|
const symbolType = this._program.getTypeOfSymbol(symbol);
|
167
|
-
|
167
|
+
publicSymbols.add(fullName);
|
168
168
|
const typedDecls = symbol.getTypedDeclarations();
|
169
169
|
if (typedDecls.length > 0) {
|
170
170
|
// Is this a class declared within this module or class?
|
@@ -172,7 +172,7 @@ class PackageTypeVerifier {
|
|
172
172
|
const classDecl = typedDecls.find((decl) => decl.type === 6 /* Class */);
|
173
173
|
if (classDecl) {
|
174
174
|
if ((0, types_1.isInstantiableClass)(symbolType)) {
|
175
|
-
this._getPublicSymbolsInSymbolTable(
|
175
|
+
this._getPublicSymbolsInSymbolTable(publicSymbols, alternateSymbolNames, module, fullName, symbolType.details.fields, 2 /* Class */);
|
176
176
|
}
|
177
177
|
}
|
178
178
|
}
|
@@ -201,7 +201,7 @@ class PackageTypeVerifier {
|
|
201
201
|
}
|
202
202
|
}
|
203
203
|
}
|
204
|
-
_verifyTypesOfModule(moduleName,
|
204
|
+
_verifyTypesOfModule(moduleName, publicSymbols, report) {
|
205
205
|
const importResult = this._resolveImport(moduleName);
|
206
206
|
if (!importResult.isImportFound) {
|
207
207
|
report.generalDiagnostics.push(new diagnostic_1.Diagnostic(0 /* Error */, `Could not resolve module "${moduleName}"`, (0, textRange_1.getEmptyRange)()));
|
@@ -222,7 +222,7 @@ class PackageTypeVerifier {
|
|
222
222
|
if (sourceFile) {
|
223
223
|
const parseTree = sourceFile.getParseResults().parseTree;
|
224
224
|
const moduleScope = (0, scopeUtils_1.getScopeForNode)(parseTree);
|
225
|
-
this._getTypeKnownStatusForSymbolTable(report, module.name, moduleScope.symbolTable, 3 /* Module */,
|
225
|
+
this._getTypeKnownStatusForSymbolTable(report, module.name, moduleScope.symbolTable, 3 /* Module */, publicSymbols);
|
226
226
|
}
|
227
227
|
else {
|
228
228
|
report.generalDiagnostics.push(new diagnostic_1.Diagnostic(0 /* Error */, `Could not bind file "${modulePath}"`, (0, textRange_1.getEmptyRange)()));
|
@@ -290,7 +290,7 @@ class PackageTypeVerifier {
|
|
290
290
|
// If we're ignoring unknown types from other packages, see if we should skip.
|
291
291
|
return report.ignoreExternal && !fullTypeName.startsWith(report.packageName);
|
292
292
|
}
|
293
|
-
_getTypeKnownStatusForSymbolTable(report, scopeName, symbolTable, scopeType,
|
293
|
+
_getTypeKnownStatusForSymbolTable(report, scopeName, symbolTable, scopeType, publicSymbols, overrideSymbolCallback) {
|
294
294
|
if (this._shouldIgnoreType(report, scopeName)) {
|
295
295
|
return 0 /* Known */;
|
296
296
|
}
|
@@ -336,10 +336,10 @@ class PackageTypeVerifier {
|
|
336
336
|
const primaryDecl = typedDecls.length > 0 ? typedDecls[typedDecls.length - 1] : undefined;
|
337
337
|
let symbolInfo;
|
338
338
|
if ((primaryDecl === null || primaryDecl === void 0 ? void 0 : primaryDecl.type) === 6 /* Class */ && (0, types_1.isInstantiableClass)(symbolType)) {
|
339
|
-
symbolInfo = this._getSymbolForClass(report, symbolType,
|
339
|
+
symbolInfo = this._getSymbolForClass(report, symbolType, publicSymbols);
|
340
340
|
}
|
341
341
|
else if ((primaryDecl === null || primaryDecl === void 0 ? void 0 : primaryDecl.type) === 8 /* Alias */ && (0, types_1.isModule)(symbolType)) {
|
342
|
-
symbolInfo = this._getSymbolForModule(report, symbolType,
|
342
|
+
symbolInfo = this._getSymbolForModule(report, symbolType, publicSymbols);
|
343
343
|
}
|
344
344
|
else {
|
345
345
|
const decls = symbol.getDeclarations();
|
@@ -347,7 +347,7 @@ class PackageTypeVerifier {
|
|
347
347
|
const declRange = (primaryDecl === null || primaryDecl === void 0 ? void 0 : primaryDecl.range) || (0, textRange_1.getEmptyRange)();
|
348
348
|
const declPath = (primaryDecl === null || primaryDecl === void 0 ? void 0 : primaryDecl.path) || '';
|
349
349
|
const symbolCategory = this._getSymbolCategory(symbol, symbolType);
|
350
|
-
const isExported =
|
350
|
+
const isExported = publicSymbols.has(fullName);
|
351
351
|
// If the only reference to this symbol is a "__slots__" entry, we will
|
352
352
|
// skip it when considering type completeness.
|
353
353
|
if (decls.length === 1 &&
|
@@ -368,7 +368,7 @@ class PackageTypeVerifier {
|
|
368
368
|
};
|
369
369
|
this._addSymbol(report, symbolInfo);
|
370
370
|
if (!this._isSymbolTypeImplied(scopeType, name)) {
|
371
|
-
this._getSymbolTypeKnownStatus(report, symbolInfo, symbolType, declRange, declPath,
|
371
|
+
this._getSymbolTypeKnownStatus(report, symbolInfo, symbolType, declRange, declPath, publicSymbols);
|
372
372
|
}
|
373
373
|
}
|
374
374
|
if (usesAmbiguousOverride) {
|
@@ -397,7 +397,7 @@ class PackageTypeVerifier {
|
|
397
397
|
// Determines whether the type for the symbol in question is fully known.
|
398
398
|
// If not, it adds diagnostics to the symbol information and updates the
|
399
399
|
// typeKnownStatus field.
|
400
|
-
_getSymbolTypeKnownStatus(report, symbolInfo, type, declRange, declFilePath,
|
400
|
+
_getSymbolTypeKnownStatus(report, symbolInfo, type, declRange, declFilePath, publicSymbols, skipDocStringCheck = false) {
|
401
401
|
let knownStatus = 0 /* Known */;
|
402
402
|
if (type.typeAliasInfo && type.typeAliasInfo.typeArguments) {
|
403
403
|
type.typeAliasInfo.typeArguments.forEach((typeArg, index) => {
|
@@ -432,19 +432,19 @@ class PackageTypeVerifier {
|
|
432
432
|
}
|
433
433
|
case 9 /* Union */: {
|
434
434
|
(0, typeUtils_1.doForEachSubtype)(type, (subtype) => {
|
435
|
-
knownStatus = this._updateKnownStatusIfWorse(knownStatus, this._getSymbolTypeKnownStatus(report, symbolInfo, subtype, declRange, declFilePath,
|
435
|
+
knownStatus = this._updateKnownStatusIfWorse(knownStatus, this._getSymbolTypeKnownStatus(report, symbolInfo, subtype, declRange, declFilePath, publicSymbols));
|
436
436
|
});
|
437
437
|
break;
|
438
438
|
}
|
439
439
|
case 6 /* OverloadedFunction */: {
|
440
440
|
for (const overload of type.overloads) {
|
441
|
-
knownStatus = this._updateKnownStatusIfWorse(knownStatus, this._getSymbolTypeKnownStatus(report, symbolInfo, overload, declRange, declFilePath,
|
441
|
+
knownStatus = this._updateKnownStatusIfWorse(knownStatus, this._getSymbolTypeKnownStatus(report, symbolInfo, overload, declRange, declFilePath, publicSymbols));
|
442
442
|
}
|
443
443
|
break;
|
444
444
|
}
|
445
445
|
case 5 /* Function */: {
|
446
446
|
if (!this._shouldIgnoreType(report, type.details.fullName)) {
|
447
|
-
knownStatus = this._updateKnownStatusIfWorse(knownStatus, this._getFunctionTypeKnownStatus(report, type,
|
447
|
+
knownStatus = this._updateKnownStatusIfWorse(knownStatus, this._getFunctionTypeKnownStatus(report, type, publicSymbols, symbolInfo, declRange, declFilePath, undefined /* diag */, skipDocStringCheck));
|
448
448
|
}
|
449
449
|
break;
|
450
450
|
}
|
@@ -468,14 +468,14 @@ class PackageTypeVerifier {
|
|
468
468
|
}
|
469
469
|
// Don't require docstrings for setters or deleters.
|
470
470
|
const skipDocStringCheck = accessorName !== 'fget';
|
471
|
-
knownStatus = this._updateKnownStatusIfWorse(knownStatus, this._getSymbolTypeKnownStatus(report, symbolInfo, accessType, (0, textRange_1.getEmptyRange)(), '',
|
471
|
+
knownStatus = this._updateKnownStatusIfWorse(knownStatus, this._getSymbolTypeKnownStatus(report, symbolInfo, accessType, (0, textRange_1.getEmptyRange)(), '', publicSymbols, skipDocStringCheck));
|
472
472
|
});
|
473
473
|
break;
|
474
474
|
}
|
475
475
|
if (!this._shouldIgnoreType(report, type.details.fullName)) {
|
476
476
|
// Don't bother type-checking built-in types.
|
477
477
|
if (!types_1.ClassType.isBuiltIn(type)) {
|
478
|
-
const symbolInfo = this._getSymbolForClass(report, type,
|
478
|
+
const symbolInfo = this._getSymbolForClass(report, type, publicSymbols);
|
479
479
|
knownStatus = this._updateKnownStatusIfWorse(knownStatus, symbolInfo.typeKnownStatus);
|
480
480
|
}
|
481
481
|
}
|
@@ -498,7 +498,7 @@ class PackageTypeVerifier {
|
|
498
498
|
}
|
499
499
|
case 8 /* Module */: {
|
500
500
|
if (!this._shouldIgnoreType(report, type.moduleName)) {
|
501
|
-
const moduleSymbol = this._getSymbolForModule(report, type,
|
501
|
+
const moduleSymbol = this._getSymbolForModule(report, type, publicSymbols);
|
502
502
|
if (moduleSymbol.typeKnownStatus !== 0 /* Known */) {
|
503
503
|
this._addSymbolError(symbolInfo, `Module "${moduleSymbol.fullName}" is partially unknown`, declRange, declFilePath);
|
504
504
|
knownStatus = this._updateKnownStatusIfWorse(knownStatus, moduleSymbol.typeKnownStatus);
|
@@ -511,7 +511,7 @@ class PackageTypeVerifier {
|
|
511
511
|
symbolInfo.typeKnownStatus = this._updateKnownStatusIfWorse(symbolInfo.typeKnownStatus, knownStatus);
|
512
512
|
return knownStatus;
|
513
513
|
}
|
514
|
-
_getFunctionTypeKnownStatus(report, type,
|
514
|
+
_getFunctionTypeKnownStatus(report, type, publicSymbols, symbolInfo, declRange, declFilePath, diag, skipDocStringCheck = false) {
|
515
515
|
let knownStatus = 0 /* Known */;
|
516
516
|
// If the file path wasn't provided, try to get it from the type.
|
517
517
|
if (type.details.declaration && !declFilePath) {
|
@@ -545,7 +545,7 @@ class PackageTypeVerifier {
|
|
545
545
|
}
|
546
546
|
else {
|
547
547
|
const extraInfo = new diagnostic_1.DiagnosticAddendum();
|
548
|
-
const paramKnownStatus = this._getTypeKnownStatus(report, param.type,
|
548
|
+
const paramKnownStatus = this._getTypeKnownStatus(report, param.type, publicSymbols, extraInfo.createAddendum());
|
549
549
|
if (paramKnownStatus !== 0 /* Known */) {
|
550
550
|
extraInfo.addMessage(`Parameter type is "${this._program.printType(param.type)}"`);
|
551
551
|
if (symbolInfo) {
|
@@ -570,7 +570,7 @@ class PackageTypeVerifier {
|
|
570
570
|
}
|
571
571
|
else {
|
572
572
|
const extraInfo = new diagnostic_1.DiagnosticAddendum();
|
573
|
-
const returnTypeKnownStatus = this._getTypeKnownStatus(report, type.details.declaredReturnType,
|
573
|
+
const returnTypeKnownStatus = this._getTypeKnownStatus(report, type.details.declaredReturnType, publicSymbols, extraInfo.createAddendum());
|
574
574
|
if (returnTypeKnownStatus !== 0 /* Known */) {
|
575
575
|
extraInfo.addMessage(`Return type is "${this._program.printType(type.details.declaredReturnType)}"`);
|
576
576
|
if (symbolInfo) {
|
@@ -626,7 +626,7 @@ class PackageTypeVerifier {
|
|
626
626
|
}
|
627
627
|
return knownStatus;
|
628
628
|
}
|
629
|
-
_getSymbolForClass(report, type,
|
629
|
+
_getSymbolForClass(report, type, publicSymbols) {
|
630
630
|
// See if this type is already analyzed.
|
631
631
|
const cachedType = report.symbols.get(type.details.fullName);
|
632
632
|
if (cachedType) {
|
@@ -638,7 +638,7 @@ class PackageTypeVerifier {
|
|
638
638
|
name: type.details.name,
|
639
639
|
fullName: type.details.fullName,
|
640
640
|
filePath: type.details.filePath,
|
641
|
-
isExported:
|
641
|
+
isExported: publicSymbols.has(type.details.fullName),
|
642
642
|
typeKnownStatus: 0 /* Known */,
|
643
643
|
referenceCount: 1,
|
644
644
|
diagnostics: [],
|
@@ -650,7 +650,7 @@ class PackageTypeVerifier {
|
|
650
650
|
this._addSymbolWarning(symbolInfo, `No docstring found for class "${type.details.fullName}"`, (0, textRange_1.getEmptyRange)(), '');
|
651
651
|
report.missingClassDocStringCount++;
|
652
652
|
}
|
653
|
-
const symbolTableTypeKnownStatus = this._getTypeKnownStatusForSymbolTable(report, type.details.fullName, type.details.fields, 2 /* Class */,
|
653
|
+
const symbolTableTypeKnownStatus = this._getTypeKnownStatusForSymbolTable(report, type.details.fullName, type.details.fields, 2 /* Class */, publicSymbols, (name, symbol) => {
|
654
654
|
// If the symbol within this class is lacking a type declaration,
|
655
655
|
// see if we can find a same-named symbol in a parent class with
|
656
656
|
// a type declaration.
|
@@ -675,7 +675,7 @@ class PackageTypeVerifier {
|
|
675
675
|
}
|
676
676
|
else {
|
677
677
|
const diag = new diagnostic_1.DiagnosticAddendum();
|
678
|
-
const metaclassKnownStatus = this._getTypeKnownStatus(report, type.details.effectiveMetaclass,
|
678
|
+
const metaclassKnownStatus = this._getTypeKnownStatus(report, type.details.effectiveMetaclass, publicSymbols, diag);
|
679
679
|
if (metaclassKnownStatus !== 0 /* Known */) {
|
680
680
|
this._addSymbolError(symbolInfo, `Type of metaclass "${type.details.effectiveMetaclass}" is partially unknown` +
|
681
681
|
diag.getString(), (0, textRange_1.getEmptyRange)(), '');
|
@@ -696,7 +696,7 @@ class PackageTypeVerifier {
|
|
696
696
|
return;
|
697
697
|
}
|
698
698
|
const diag = new diagnostic_1.DiagnosticAddendum();
|
699
|
-
const baseClassTypeStatus = this._getTypeKnownStatus(report, baseClass,
|
699
|
+
const baseClassTypeStatus = this._getTypeKnownStatus(report, baseClass, publicSymbols, diag);
|
700
700
|
if (baseClassTypeStatus !== 0 /* Known */) {
|
701
701
|
this._addSymbolError(symbolInfo, `Type of base class "${baseClass.details.fullName}" is partially unknown` + diag.getString(), (0, textRange_1.getEmptyRange)(), '');
|
702
702
|
symbolInfo.typeKnownStatus = this._updateKnownStatusIfWorse(symbolInfo.typeKnownStatus, baseClassTypeStatus);
|
@@ -705,7 +705,7 @@ class PackageTypeVerifier {
|
|
705
705
|
});
|
706
706
|
return symbolInfo;
|
707
707
|
}
|
708
|
-
_getSymbolForModule(report, type,
|
708
|
+
_getSymbolForModule(report, type, publicSymbols) {
|
709
709
|
// See if this type is already analyzed.
|
710
710
|
const cachedType = report.symbols.get(type.moduleName);
|
711
711
|
if (cachedType) {
|
@@ -717,18 +717,18 @@ class PackageTypeVerifier {
|
|
717
717
|
name: type.moduleName,
|
718
718
|
fullName: type.moduleName,
|
719
719
|
filePath: type.filePath,
|
720
|
-
isExported:
|
720
|
+
isExported: publicSymbols.has(type.moduleName),
|
721
721
|
typeKnownStatus: 0 /* Known */,
|
722
722
|
referenceCount: 1,
|
723
723
|
diagnostics: [],
|
724
724
|
scopeType: 3 /* Module */,
|
725
725
|
};
|
726
726
|
this._addSymbol(report, symbolInfo);
|
727
|
-
const symbolTableTypeKnownStatus = this._getTypeKnownStatusForSymbolTable(report, type.moduleName, type.fields, 3 /* Module */,
|
727
|
+
const symbolTableTypeKnownStatus = this._getTypeKnownStatusForSymbolTable(report, type.moduleName, type.fields, 3 /* Module */, publicSymbols);
|
728
728
|
symbolInfo.typeKnownStatus = this._updateKnownStatusIfWorse(symbolInfo.typeKnownStatus, symbolTableTypeKnownStatus);
|
729
729
|
return symbolInfo;
|
730
730
|
}
|
731
|
-
_getTypeKnownStatus(report, type,
|
731
|
+
_getTypeKnownStatus(report, type, publicSymbols, diag) {
|
732
732
|
let knownStatus = 0 /* Known */;
|
733
733
|
if (type.typeAliasInfo && type.typeAliasInfo.typeArguments) {
|
734
734
|
type.typeAliasInfo.typeArguments.forEach((typeArg, index) => {
|
@@ -758,19 +758,19 @@ class PackageTypeVerifier {
|
|
758
758
|
}
|
759
759
|
case 9 /* Union */: {
|
760
760
|
(0, typeUtils_1.doForEachSubtype)(type, (subtype) => {
|
761
|
-
knownStatus = this._updateKnownStatusIfWorse(knownStatus, this._getTypeKnownStatus(report, subtype,
|
761
|
+
knownStatus = this._updateKnownStatusIfWorse(knownStatus, this._getTypeKnownStatus(report, subtype, publicSymbols, diag.createAddendum()));
|
762
762
|
});
|
763
763
|
break;
|
764
764
|
}
|
765
765
|
case 6 /* OverloadedFunction */: {
|
766
766
|
for (const overload of type.overloads) {
|
767
|
-
knownStatus = this._updateKnownStatusIfWorse(knownStatus, this._getTypeKnownStatus(report, overload,
|
767
|
+
knownStatus = this._updateKnownStatusIfWorse(knownStatus, this._getTypeKnownStatus(report, overload, publicSymbols, diag.createAddendum()));
|
768
768
|
}
|
769
769
|
break;
|
770
770
|
}
|
771
771
|
case 5 /* Function */: {
|
772
772
|
if (!this._shouldIgnoreType(report, type.details.fullName)) {
|
773
|
-
knownStatus = this._updateKnownStatusIfWorse(knownStatus, this._getFunctionTypeKnownStatus(report, type,
|
773
|
+
knownStatus = this._updateKnownStatusIfWorse(knownStatus, this._getFunctionTypeKnownStatus(report, type, publicSymbols,
|
774
774
|
/* symbolInfo */ undefined,
|
775
775
|
/* declRange */ undefined,
|
776
776
|
/* declFilePath */ undefined, diag));
|
@@ -781,7 +781,7 @@ class PackageTypeVerifier {
|
|
781
781
|
if (!this._shouldIgnoreType(report, type.details.fullName)) {
|
782
782
|
// Don't bother type-checking built-in types.
|
783
783
|
if (!types_1.ClassType.isBuiltIn(type)) {
|
784
|
-
const symbolInfo = this._getSymbolForClass(report, type,
|
784
|
+
const symbolInfo = this._getSymbolForClass(report, type, publicSymbols);
|
785
785
|
knownStatus = this._updateKnownStatusIfWorse(knownStatus, symbolInfo.typeKnownStatus);
|
786
786
|
}
|
787
787
|
}
|
@@ -802,7 +802,7 @@ class PackageTypeVerifier {
|
|
802
802
|
}
|
803
803
|
case 8 /* Module */: {
|
804
804
|
if (!this._shouldIgnoreType(report, type.moduleName)) {
|
805
|
-
const moduleSymbol = this._getSymbolForModule(report, type,
|
805
|
+
const moduleSymbol = this._getSymbolForModule(report, type, publicSymbols);
|
806
806
|
knownStatus = this._updateKnownStatusIfWorse(knownStatus, moduleSymbol.typeKnownStatus);
|
807
807
|
}
|
808
808
|
break;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"packageTypeVerifier.js","sourceRoot":"","sources":["../../../src/analyzer/packageTypeVerifier.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"packageTypeVerifier.js","sourceRoot":"","sources":["../../../src/analyzer/packageTypeVerifier.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAGH,2DAA8E;AAC9E,+CAAgD;AAChD,2CAAyC;AACzC,qDAA0F;AAE1F,6DAA0D;AAC1D,mDAAoH;AACpH,mDAA2D;AAE3D,qDAAkF;AAClF,2DAQ6B;AAC7B,uCAAoC;AACpC,iDAA6D;AAE7D,6CAA+C;AAE/C,uDAA2E;AAC3E,mCAciB;AACjB,2CAMqB;AAIrB,MAAa,mBAAmB;IAM5B,YACY,WAAuB,EAC/B,kBAAsC,EAC9B,YAAoB,EACpB,kBAAkB,KAAK;QAHvB,gBAAW,GAAX,WAAW,CAAY;QAEvB,iBAAY,GAAZ,YAAY,CAAQ;QACpB,oBAAe,GAAf,eAAe,CAAQ;QAE/B,MAAM,IAAI,GAAG,IAAI,+BAAc,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,cAAc,GAAG,IAAI,6BAAa,CAAC,EAAE,CAAC,CAAC;QAE5C,IAAI,CAAC,cAAc,CAAC,qBAAqB,GAAG,kBAAkB,CAAC,cAAc,CAAC;QAC9E,IAAI,CAAC,cAAc,CAAC,oBAAoB,GAAG,kBAAkB,CAAC,aAAa,CAAC;QAE5E,+EAA+E;QAC/E,qCAAqC;QACrC,MAAM,OAAO,GAAG,IAAI,qBAAW,EAAE,CAAC;QAClC,IAAI,CAAC,cAAc,CAAC,2BAA2B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/D,IAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAE9D,IAAI,eAAe,EAAE;YACjB,IAAI,CAAC,cAAc,CAAC,2BAA2B,GAAG,IAAI,CAAC;SAC1D;QAED,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;QAC7D,IAAI,CAAC,eAAe,GAAG,IAAI,+BAAc,CACrC,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,cAAc,EACnB,IAAI,+BAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CACvC,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,iBAAO,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM;;QACF,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;QACnD,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAErD,MAAM,MAAM,GAAG,IAAA,kCAAc,EACzB,eAAe,CAAC,CAAC,CAAC,EAClB,MAAA,IAAI,CAAC,sBAAsB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,mCAAI,EAAE,EACrD,iBAAiB,EACjB,MAAA,IAAI,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,mCAAI,EAAE,EACpD,IAAI,CAAC,eAAe,CACvB,CAAC;QACF,MAAM,iBAAiB,GAAG,MAAM,CAAC,kBAAkB,CAAC;QAEpD,IAAI;YACA,IAAI,CAAC,iBAAiB,EAAE;gBACpB,iBAAiB,CAAC,IAAI,CAClB,IAAI,uBAAU,gBAEV,gBAAgB,iBAAiB,cAAc,EAC/C,IAAA,yBAAa,GAAE,CAClB,CACJ,CAAC;aACL;iBAAM,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE;gBACpC,iBAAiB,CAAC,IAAI,CAClB,IAAI,uBAAU,gBAEV,WAAW,iBAAiB,sBAAsB,EAClD,IAAA,yBAAa,GAAE,CAClB,CACJ,CAAC;aACL;iBAAM;gBACH,IAAI,WAAoC,CAAC;gBACzC,IAAI,MAAM,CAAC,mBAAmB,EAAE;oBAC5B,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;iBAC1F;gBAED,2EAA2E;gBAC3E,gCAAgC;gBAChC,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,oBAAoB,EAAE;oBAC7C,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;iBAC3F;gBAED,IAAI,CAAC,WAAW,EAAE;oBACd,iBAAiB,CAAC,IAAI,CAClB,IAAI,uBAAU,gBAA2B,wBAAwB,EAAE,IAAA,yBAAa,GAAE,CAAC,CACtF,CAAC;iBACL;qBAAM;oBACH,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC;oBAE7C,MAAM,aAAa,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,mBAAmB,EAAE,iBAAiB,CAAC,CAAC;oBAElG,yDAAyD;oBACzD,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC5B,iBAAiB,CAAC,IAAI,CAClB,IAAI,uBAAU,gBAEV,WAAW,iBAAiB,sBAAsB,EAClD,IAAA,yBAAa,GAAE,CAClB,CACJ,CAAC;qBACL;oBAED,oEAAoE;oBACpE,uEAAuE;oBACvE,wEAAwE;oBACxE,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;oBACxC,aAAa,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;wBACjC,IAAI,CAAC,0BAA0B,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,oBAAoB,CAAC,CAAC;oBAC5F,CAAC,CAAC,CAAC;oBAEH,aAAa,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;wBACjC,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;oBACjE,CAAC,CAAC,CAAC;iBACN;aACJ;SACJ;QAAC,OAAO,CAAM,EAAE;YACb,MAAM,OAAO,GACT,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC1C,CAAC,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;gBACvD,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACtB,iBAAiB,CAAC,IAAI,CAClB,IAAI,uBAAU,gBAEV,sDAAsD,OAAO,GAAG,EAChE,IAAA,yBAAa,GAAE,CAClB,CACJ,CAAC;SACL;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,uBAAuB,CAAC,UAA0B;QACrD,QAAQ,UAAU,EAAE;YAChB,KAAK,kCAAc,CAAC,KAAK;gBACrB,OAAO,OAAO,CAAC;YAEnB,KAAK,kCAAc,CAAC,QAAQ;gBACxB,OAAO,UAAU,CAAC;YAEtB,KAAK,kCAAc,CAAC,MAAM;gBACtB,OAAO,QAAQ,CAAC;YAEpB,KAAK,kCAAc,CAAC,QAAQ;gBACxB,OAAO,UAAU,CAAC;YAEtB,KAAK,kCAAc,CAAC,QAAQ;gBACxB,OAAO,UAAU,CAAC;YAEtB,KAAK,kCAAc,CAAC,MAAM;gBACtB,OAAO,QAAQ,CAAC;YAEpB,KAAK,kCAAc,CAAC,SAAS;gBACzB,OAAO,YAAY,CAAC;YAExB,KAAK,kCAAc,CAAC,OAAO;gBACvB,OAAO,eAAe,CAAC;YAE3B,KAAK,kCAAc,CAAC,aAAa;gBAC7B,OAAO,QAAQ,CAAC;SACvB;IACL,CAAC;IAEO,sBAAsB,CAAC,aAAqB,EAAE,gBAA0B;QAC5E,IAAI,YAAY,GAAG,CAAC,GAAG,gBAAgB,CAAC,CAAC;QAEzC,8EAA8E;QAC9E,OAAO,YAAY,CAAC,MAAM,IAAI,CAAC,EAAE;YAC7B,MAAM,aAAa,GAAG,IAAA,wBAAY,EAAC,aAAa,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5E,MAAM,WAAW,GAAG,IAAA,6BAAc,EAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;YACpE,IAAI,WAAW,EAAE;gBACb,OAAO,WAAW,CAAC;aACtB;YAED,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;SACjE;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAEO,cAAc,CAAC,UAAkB;QACrC,OAAO,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAA,+CAA8B,EAAC,UAAU,CAAC,CAAC,CAAC;IAC7G,CAAC;IAEO,0BAA0B,CAC9B,UAAkB,EAClB,aAA8B,EAC9B,oBAA4C;QAE5C,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAErD,IAAI,YAAY,CAAC,aAAa,EAAE;YAC5B,MAAM,UAAU,GAAG,YAAY,CAAC,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACrF,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EAAE,wBAAwB,CAAC,IAAI,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC;YAE1G,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;YAEhE,IAAI,UAAU,EAAE;gBACZ,MAAM,MAAM,GAAe;oBACvB,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,UAAU;oBAChB,UAAU,EAAE,IAAI;iBACnB,CAAC;gBAEF,MAAM,SAAS,GAAG,UAAU,CAAC,eAAe,EAAG,CAAC,SAAS,CAAC;gBAC1D,MAAM,WAAW,GAAG,IAAA,4BAAe,EAAC,SAAS,CAAE,CAAC;gBAEhD,IAAI,CAAC,8BAA8B,CAC/B,aAAa,EACb,oBAAoB,EACpB,MAAM,EACN,MAAM,CAAC,IAAI,EACX,WAAW,CAAC,WAAW,iBAE1B,CAAC;aACL;SACJ;IACL,CAAC;IAEO,8BAA8B,CAClC,aAA8B,EAC9B,oBAA4C,EAC5C,MAAkB,EAClB,SAAiB,EACjB,WAAwB,EACxB,SAAoB;QAEpB,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;YACjC,IACI,CAAC,IAAA,0CAAwB,EAAC,IAAI,CAAC;gBAC/B,CAAC,MAAM,CAAC,yBAAyB,EAAE;gBACnC,CAAC,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,IAAI,CAAC,EAC7C;gBACE,MAAM,QAAQ,GAAG,GAAG,SAAS,IAAI,IAAI,EAAE,CAAC;gBAExC,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE,EAAE;oBAC/F,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;oBACzD,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;oBAE5B,MAAM,UAAU,GAAG,MAAM,CAAC,oBAAoB,EAAE,CAAC;oBAEjD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;wBACvB,wDAAwD;wBACxD,6CAA6C;wBAC7C,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,kBAA0B,CAAC,CAAC;wBACjF,IAAI,SAAS,EAAE;4BACX,IAAI,IAAA,2BAAmB,EAAC,UAAU,CAAC,EAAE;gCACjC,IAAI,CAAC,8BAA8B,CAC/B,aAAa,EACb,oBAAoB,EACpB,MAAM,EACN,QAAQ,EACR,UAAU,CAAC,OAAO,CAAC,MAAM,gBAE5B,CAAC;6BACL;yBACJ;qBACJ;oBAED,wEAAwE;oBACxE,MAAM,UAAU,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,kBAA0B,CAAC,CAAC;oBAChG,IAAI,UAAU,IAAI,UAAU,CAAC,IAAI,kBAA0B,EAAE;wBACzD,MAAM,QAAQ,GAAG,IAAA,6BAAiB,EAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;wBAC1E,IAAI,QAAQ,EAAE;4BACV,IAAI,CAAC,uBAAuB,CAAC,oBAAoB,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;yBAC1E;qBACJ;iBACJ;aACJ;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,uBAAuB,CAAC,GAA2B,EAAE,IAAY,EAAE,OAAe;QACtF,IAAI,IAAI,KAAK,OAAO,EAAE;YAClB,IAAI,WAAW,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAEhC,IAAI,CAAC,WAAW,EAAE;gBACd,WAAW,GAAG,EAAE,CAAC;gBACjB,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;aAC9B;YAED,yCAAyC;YACzC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE;gBAC/C,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAC7B;SACJ;IACL,CAAC;IAEO,oBAAoB,CAAC,UAAkB,EAAE,aAA8B,EAAE,MAAyB;QACtG,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE;YAC7B,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAC1B,IAAI,uBAAU,gBAA2B,6BAA6B,UAAU,GAAG,EAAE,IAAA,yBAAa,GAAE,CAAC,CACxG,CAAC;SACL;aAAM,IAAI,YAAY,CAAC,aAAa,EAAE;YACnC,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAC1B,IAAI,uBAAU,gBAEV,sCAAsC,UAAU,oCAAoC,EACpF,IAAA,yBAAa,GAAE,CAClB,CACJ,CAAC;SACL;aAAM;YACH,MAAM,UAAU,GAAG,YAAY,CAAC,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAErF,MAAM,MAAM,GAAe;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,UAAU;gBAChB,UAAU,EAAE,IAAI;aACnB,CAAC;YAEF,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EAAE,wBAAwB,CAAC,IAAI,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC;YAE1G,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;YAEhE,IAAI,UAAU,EAAE;gBACZ,MAAM,SAAS,GAAG,UAAU,CAAC,eAAe,EAAG,CAAC,SAAS,CAAC;gBAC1D,MAAM,WAAW,GAAG,IAAA,4BAAe,EAAC,SAAS,CAAE,CAAC;gBAEhD,IAAI,CAAC,iCAAiC,CAClC,MAAM,EACN,MAAM,CAAC,IAAI,EACX,WAAW,CAAC,WAAW,kBAEvB,aAAa,CAChB,CAAC;aACL;iBAAM;gBACH,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAC1B,IAAI,uBAAU,gBAA2B,wBAAwB,UAAU,GAAG,EAAE,IAAA,yBAAa,GAAE,CAAC,CACnG,CAAC;aACL;SACJ;IACL,CAAC;IAED,6DAA6D;IAC7D,sBAAsB;IACd,uBAAuB,CAAC,cAAsB,EAAE,UAAkB;QACtE,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,IAAI,CAAC,0BAA0B,CAAC,cAAc,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;QAE3E,8EAA8E;QAC9E,0BAA0B;QAC1B,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;QAE5C,aAAa,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC7B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;gBACxB,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC3B,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;aACjC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,aAAa,CAAC;IACzB,CAAC;IAEO,0BAA0B,CAAC,OAAe,EAAE,UAAkB,EAAE,aAAuB;QAC3F,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAEhE,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACzB,IAAI,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YAC5B,IAAI,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YACtC,IAAI,KAAK,CAAC,cAAc,EAAE,EAAE;gBACxB,MAAM,IAAI,GAAG,IAAA,mBAAO,EAAC,IAAI,CAAC,WAAW,EAAE,IAAA,wBAAY,EAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC1E,IAAI,IAAI,EAAE;oBACN,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;oBACvB,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;iBACpC;aACJ;YAED,IAAI,MAAM,EAAE;gBACR,MAAM,aAAa,GAAG,IAAA,4BAAgB,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAEnD,IAAI,aAAa,KAAK,KAAK,IAAI,aAAa,KAAK,MAAM,EAAE;oBACrD,MAAM,oBAAoB,GAAG,IAAA,8BAAkB,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAE5D,IAAI,oBAAoB,KAAK,UAAU,EAAE;wBACrC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;qBAClC;yBAAM;wBACH,IACI,CAAC,IAAA,0CAAwB,EAAC,oBAAoB,CAAC;4BAC/C,IAAI,CAAC,sBAAsB,CAAC,oBAAoB,CAAC,EACnD;4BACE,aAAa,CAAC,IAAI,CAAC,GAAG,UAAU,IAAI,oBAAoB,EAAE,CAAC,CAAC;yBAC/D;qBACJ;iBACJ;aACJ;iBAAM,IAAI,WAAW,EAAE;gBACpB,IAAI,CAAC,IAAA,0CAAwB,EAAC,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;oBAClF,IAAI,CAAC,0BAA0B,CAC3B,IAAA,wBAAY,EAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,EACjC,GAAG,UAAU,IAAI,KAAK,CAAC,IAAI,EAAE,EAC7B,aAAa,CAChB,CAAC;iBACL;aACJ;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,sBAAsB,CAAC,IAAY;QACvC,2DAA2D;QAC3D,oDAAoD;QACpD,oDAAoD;QACpD,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IAEO,iBAAiB,CAAC,MAAyB,EAAE,YAAoB;QACrE,8EAA8E;QAC9E,OAAO,MAAM,CAAC,cAAc,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACjF,CAAC;IAEO,iCAAiC,CACrC,MAAyB,EACzB,SAAiB,EACjB,WAAwB,EACxB,SAAoB,EACpB,aAA8B,EAC9B,sBAAiE;QAEjE,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE;YAC3C,qBAA6B;SAChC;QAED,IAAI,WAAW,gBAAwB,CAAC;QAExC,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;YACjC,IACI,CAAC,IAAA,0CAAwB,EAAC,IAAI,CAAC;gBAC/B,CAAC,MAAM,CAAC,kBAAkB,EAAE;gBAC5B,CAAC,MAAM,CAAC,eAAe,EAAE;gBACzB,CAAC,MAAM,CAAC,sBAAsB,EAAE;gBAChC,CAAC,MAAM,CAAC,yBAAyB,EAAE;gBACnC,CAAC,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,IAAI,CAAC,EAC7C;gBACE,MAAM,QAAQ,GAAG,GAAG,SAAS,IAAI,IAAI,EAAE,CAAC;gBAExC,+DAA+D;gBAC/D,qBAAqB;gBACrB,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACtD,IAAI,gBAAgB,EAAE;oBAClB,gBAAgB,CAAC,cAAc,EAAE,CAAC;oBAClC,OAAO;iBACV;gBAED,IAAI,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;gBAEvD,IAAI,qBAAqB,GAAG,KAAK,CAAC;gBAClC,IAAI,cAAgC,CAAC;gBACrC,IAAI,eAAiC,CAAC;gBAEtC,IAAI,sBAAsB,EAAE;oBACxB,MAAM,cAAc,GAAG,sBAAsB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;oBAE5D,IAAI,cAAc,KAAK,MAAM,EAAE;wBAC3B,eAAe,GAAG,UAAU,CAAC;wBAC7B,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;wBAE/D,uEAAuE;wBACvE,uEAAuE;wBACvE,sDAAsD;wBACtD,IAAI,gBAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,IAAA,kBAAU,EAAC,cAAc,EAAE,eAAe,CAAC,EAAE;4BACvF,8DAA8D;4BAC9D,4EAA4E;4BAC5E,IAAI,CAAC,IAAA,gCAAoB,EAAC,cAAc,EAAE,mBAAmB,CAAC,IAAI,CAAC,EAAE;gCACjE,qBAAqB,GAAG,IAAI,CAAC;6BAChC;yBACJ;wBAED,UAAU,GAAG,cAAc,CAAC;qBAC/B;iBACJ;gBAED,MAAM,UAAU,GAAG,MAAM,CAAC,oBAAoB,EAAE,CAAC;gBACjD,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC1F,IAAI,UAAsB,CAAC;gBAE3B,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,mBAA0B,IAAI,IAAA,2BAAmB,EAAC,UAAU,CAAC,EAAE;oBAChF,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;iBAC3E;qBAAM,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,mBAA0B,IAAI,IAAA,gBAAQ,EAAC,UAAU,CAAC,EAAE;oBAC5E,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;iBAC5E;qBAAM;oBACH,MAAM,KAAK,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;oBACvC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC3E,MAAM,SAAS,GAAG,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,KAAI,IAAA,yBAAa,GAAE,CAAC;oBACxD,MAAM,QAAQ,GAAG,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,KAAI,EAAE,CAAC;oBACzC,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;oBACnE,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;oBAE/C,uEAAuE;oBACvE,8CAA8C;oBAC9C,IACI,KAAK,CAAC,MAAM,KAAK,CAAC;wBAClB,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,sBAA6B;wBAC9C,WAAW,CAAC,gBAAgB,EAC9B;wBACE,OAAO;qBACV;oBAED,UAAU,GAAG;wBACT,QAAQ,EAAE,cAAc;wBACxB,IAAI;wBACJ,QAAQ;wBACR,QAAQ,EAAE,MAAM,CAAC,IAAI;wBACrB,UAAU;wBACV,eAAe,eAAuB;wBACtC,cAAc,EAAE,CAAC;wBACjB,WAAW,EAAE,EAAE;wBACf,SAAS;qBACZ,CAAC;oBAEF,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;oBAEpC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE;wBAC7C,IAAI,CAAC,yBAAyB,CAC1B,MAAM,EACN,UAAU,EACV,UAAU,EACV,SAAS,EACT,QAAQ,EACR,aAAa,CAChB,CAAC;qBACL;iBACJ;gBAED,IAAI,qBAAqB,EAAE;oBACvB,MAAM,KAAK,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;oBACvC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC3E,MAAM,SAAS,GAAG,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,KAAI,IAAA,yBAAa,GAAE,CAAC;oBACxD,MAAM,QAAQ,GAAG,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,KAAI,EAAE,CAAC;oBAEzC,MAAM,SAAS,GAAG,IAAI,+BAAkB,EAAE,CAAC;oBAC3C,IAAI,cAAc,EAAE;wBAChB,SAAS,CAAC,UAAU,CAChB,mCAAmC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAChF,CAAC;qBACL;oBAED,IAAI,eAAe,EAAE;wBACjB,SAAS,CAAC,UAAU,CAChB,oCAAoC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,eAAe,CAAC,GAAG,CAClF,CAAC;wBAEF,IAAI,gBAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,EAAE;4BACvC,SAAS,CAAC,UAAU,CAChB,yGAAyG,CAC5G,CAAC;yBACL;qBACJ;oBAED,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,+BAA+B,GAAG,SAAS,CAAC,SAAS,EAAE,EACvD,SAAS,EACT,QAAQ,CACX,CAAC;oBACF,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC,yBAAyB,CACvD,UAAU,CAAC,eAAe,oBAE7B,CAAC;iBACL;gBAED,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;aACzF;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,WAAW,CAAC;IACvB,CAAC;IAED,yEAAyE;IACzE,wEAAwE;IACxE,yBAAyB;IACjB,yBAAyB,CAC7B,MAAyB,EACzB,UAAsB,EACtB,IAAU,EACV,SAAgB,EAChB,YAAoB,EACpB,aAA8B,EAC9B,kBAAkB,GAAG,KAAK;QAE1B,IAAI,WAAW,gBAAwB,CAAC;QAExC,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE;YACxD,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;gBACxD,IAAI,IAAA,iBAAS,EAAC,OAAO,CAAC,EAAE;oBACpB,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,iBAAiB,KAAK,GAAG,CAAC,oBAAoB,IAAI,CAAC,aAAc,CAAC,IAAI,oBAAoB,EAC1F,SAAS,EACT,YAAY,CACf,CAAC;oBACF,WAAW,kBAA0B,CAAC;iBACzC;qBAAM,IAAI,IAAA,2BAAe,EAAC,OAAO,CAAC,EAAE;oBACjC,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,iBAAiB,KAAK,GAAG,CAAC,oBACtB,IAAI,CAAC,aAAc,CAAC,IACxB,8BAA8B,EAC9B,SAAS,EACT,YAAY,CACf,CAAC;oBACF,WAAW,2BAAmC,CAAC;iBAClD;YACL,CAAC,CAAC,CAAC;SACN;QAED,IAAI,gBAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAA,iBAAS,EAAC,IAAI,CAAC,EAAE;YAChD,MAAM,aAAa,GAAG,IAAI,+BAAkB,EAAE,CAAC;YAC/C,aAAa,CAAC,UAAU,CAAC,qBAAqB,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChF,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,oFAAoF;gBAChF,aAAa,CAAC,SAAS,EAAE,EAC7B,SAAS,EACT,YAAY,CACf,CAAC;YACF,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,oBAA4B,CAAC;SACxF;QAED,QAAQ,IAAI,CAAC,QAAQ,EAAE;YACnB,qBAA0B;YAC1B,iBAAsB;YACtB,kBAAuB;YACvB,mBAAwB;YACxB;gBACI,MAAM;YAEV,oBAAyB,CAAC,CAAC;gBACvB,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,oBAAoB,mBAAmB,CAAC,uBAAuB,CAAC,UAAU,CAAC,QAAQ,CAAC,KAChF,UAAU,CAAC,QACf,GAAG,EACH,SAAS,EACT,YAAY,CACf,CAAC;gBACF,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,kBAA0B,CAAC;gBACnF,MAAM;aACT;YAED,kBAAuB,CAAC,CAAC;gBACrB,IAAA,4BAAgB,EAAC,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE;oBAC/B,WAAW,GAAG,IAAI,CAAC,yBAAyB,CACxC,WAAW,EACX,IAAI,CAAC,yBAAyB,CAC1B,MAAM,EACN,UAAU,EACV,OAAO,EACP,SAAS,EACT,YAAY,EACZ,aAAa,CAChB,CACJ,CAAC;gBACN,CAAC,CAAC,CAAC;gBACH,MAAM;aACT;YAED,+BAAoC,CAAC,CAAC;gBAClC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;oBACnC,WAAW,GAAG,IAAI,CAAC,yBAAyB,CACxC,WAAW,EACX,IAAI,CAAC,yBAAyB,CAC1B,MAAM,EACN,UAAU,EACV,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,aAAa,CAChB,CACJ,CAAC;iBACL;gBACD,MAAM;aACT;YAED,qBAA0B,CAAC,CAAC;gBACxB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;oBACxD,WAAW,GAAG,IAAI,CAAC,yBAAyB,CACxC,WAAW,EACX,IAAI,CAAC,2BAA2B,CAC5B,MAAM,EACN,IAAI,EACJ,aAAa,EACb,UAAU,EACV,SAAS,EACT,YAAY,EACZ,SAAS,CAAC,UAAU,EACpB,kBAAkB,CACrB,CACJ,CAAC;iBACL;gBAED,MAAM;aACT;YAED,kBAAuB,CAAC,CAAC;gBACrB,uCAAuC;gBACvC,IAAI,gBAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,iBAAS,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE;oBAC9D,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;oBAC3C,MAAM,aAAa,GAAG,IAAI,CAAC;oBAE3B,SAAS,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;wBAC/B,MAAM,YAAY,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;wBACpE,IAAI,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;wBAExF,IAAI,CAAC,UAAU,EAAE;4BACb,OAAO;yBACV;wBAED,IAAI,IAAA,kBAAU,EAAC,UAAU,CAAC,EAAE;4BACxB,8EAA8E;4BAC9E,yEAAyE;4BACzE,mFAAmF;4BACnF,2EAA2E;4BAC3E,UAAU,GAAG,oBAAY,CAAC,iBAAiB,CACvC,UAAU,EACV,UAAU,CAAC,OAAO,CAAC,KAAK,GAAG,qBAA+B,CAC7D,CAAC;yBACL;wBAED,oDAAoD;wBACpD,MAAM,kBAAkB,GAAG,YAAY,KAAK,MAAM,CAAC;wBAEnD,WAAW,GAAG,IAAI,CAAC,yBAAyB,CACxC,WAAW,EACX,IAAI,CAAC,yBAAyB,CAC1B,MAAM,EACN,UAAU,EACV,UAAU,EACV,IAAA,yBAAa,GAAE,EACf,EAAE,EACF,aAAa,EACb,kBAAkB,CACrB,CACJ,CAAC;oBACN,CAAC,CAAC,CAAC;oBAEH,MAAM;iBACT;gBAED,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;oBACxD,6CAA6C;oBAC7C,IAAI,CAAC,iBAAS,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;wBAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;wBACxE,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;qBACzF;iBACJ;gBAED,iEAAiE;gBACjE,IAAI,IAAI,CAAC,aAAa,EAAE;oBACpB,IAAI,CAAC,aAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;wBAC3C,IAAI,IAAA,iBAAS,EAAC,OAAO,CAAC,EAAE;4BACpB,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,iBAAiB,KAAK,GAAG,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,IAAI,oBAAoB,EAC9E,SAAS,EACT,YAAY,CACf,CAAC;4BACF,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,kBAA0B,CAAC;yBACtF;6BAAM,IAAI,IAAA,2BAAe,EAAC,OAAO,CAAC,EAAE;4BACjC,MAAM,IAAI,GAAG,IAAI,+BAAkB,EAAE,CAAC;4BACtC,IAAI,CAAC,UAAU,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;4BAC/D,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,iBAAiB,KAAK,GAAG,CAAC,eACtB,IAAI,CAAC,OAAO,CAAC,IACjB,8BAA8B,GAAG,IAAI,CAAC,SAAS,EAAE,EACjD,SAAS,EACT,YAAY,CACf,CAAC;4BACF,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,2BAAmC,CAAC;yBAC/F;oBACL,CAAC,CAAC,CAAC;iBACN;gBAED,MAAM;aACT;YAED,mBAAwB,CAAC,CAAC;gBACtB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE;oBAClD,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;oBAC3E,IAAI,YAAY,CAAC,eAAe,kBAA0B,EAAE;wBACxD,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,WAAW,YAAY,CAAC,QAAQ,wBAAwB,EACxD,SAAS,EACT,YAAY,CACf,CAAC;wBACF,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC;qBAC3F;iBACJ;gBAED,MAAM;aACT;SACJ;QAED,iDAAiD;QACjD,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QAErG,OAAO,WAAW,CAAC;IACvB,CAAC;IAEO,2BAA2B,CAC/B,MAAyB,EACzB,IAAkB,EAClB,aAA8B,EAC9B,UAAuB,EACvB,SAAiB,EACjB,YAAqB,EACrB,IAAyB,EACzB,kBAAkB,GAAG,KAAK;QAE1B,IAAI,WAAW,gBAAwB,CAAC;QAExC,iEAAiE;QACjE,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,YAAY,EAAE;YAC3C,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;SAChD;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAC7C,6CAA6C;YAC7C,IAAI,KAAK,CAAC,IAAI,EAAE;gBACZ,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE;oBACxB,oEAAoE;oBACpE,kCAAkC;oBAClC,MAAM,aAAa,GACf,KAAK,KAAK,CAAC;wBACX,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,SAAS,mBAAoB;wBACzC,CAAC,oBAAY,CAAC,aAAa,CAAC,IAAI,CAAC;4BAC7B,oBAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC;4BACnC,oBAAY,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;oBAEhD,IAAI,CAAC,aAAa,EAAE;wBAChB,IAAI,UAAU,EAAE;4BACZ,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,kCAAkC,KAAK,CAAC,IAAI,cAAc,EAC1D,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,IAAA,yBAAa,GAAE,EAC5B,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,EAAE,CACrB,CAAC;yBACL;wBACD,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,GAAG,UAAU,CAAC,kCAAkC,KAAK,CAAC,IAAI,cAAc,CAAC,CAAC;wBAC9F,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,kBAA0B,CAAC;qBACtF;iBACJ;qBAAM,IAAI,IAAA,iBAAS,EAAC,KAAK,CAAC,IAAI,CAAC,EAAE;oBAC9B,IAAI,UAAU,EAAE;wBACZ,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,sBAAsB,KAAK,CAAC,IAAI,cAAc,EAC9C,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,IAAA,yBAAa,GAAE,EAC5B,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,EAAE,CACrB,CAAC;wBACF,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,GAAG,UAAU,CAAC,sBAAsB,KAAK,CAAC,IAAI,cAAc,CAAC,CAAC;qBACrF;oBACD,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,kBAA0B,CAAC;iBACtF;qBAAM;oBACH,MAAM,SAAS,GAAG,IAAI,+BAAkB,EAAE,CAAC;oBAC3C,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAC7C,MAAM,EACN,KAAK,CAAC,IAAI,EACV,aAAa,EACb,SAAS,CAAC,cAAc,EAAE,CAC7B,CAAC;oBAEF,IAAI,gBAAgB,kBAA0B,EAAE;wBAC5C,SAAS,CAAC,UAAU,CAAC,sBAAsB,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBAEnF,IAAI,UAAU,EAAE;4BACZ,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,sBAAsB,KAAK,CAAC,IAAI,wBAAwB,GAAG,SAAS,CAAC,SAAS,EAAE,EAChF,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,IAAA,yBAAa,GAAE,EAC5B,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,EAAE,CACrB,CAAC;yBACL;wBAED,IAAI,IAAI,EAAE;4BACN,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;4BACtC,OAAO,CAAC,UAAU,CAAC,sBAAsB,KAAK,CAAC,IAAI,wBAAwB,CAAC,CAAC;4BAC7E,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;yBAClC;wBAED,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;qBAC/E;iBACJ;aACJ;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE;YACjC,IAAI,IAAA,iBAAS,EAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE;gBAC5C,IAAI,UAAU,EAAE;oBACZ,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,wBAAwB,EACxB,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,IAAA,yBAAa,GAAE,EAC5B,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,EAAE,CACrB,CAAC;iBACL;gBACD,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,kBAA0B,CAAC;aACtF;iBAAM;gBACH,MAAM,SAAS,GAAG,IAAI,+BAAkB,EAAE,CAAC;gBAC3C,MAAM,qBAAqB,GAAG,IAAI,CAAC,mBAAmB,CAClD,MAAM,EACN,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAC/B,aAAa,EACb,SAAS,CAAC,cAAc,EAAE,CAC7B,CAAC;gBAEF,IAAI,qBAAqB,kBAA0B,EAAE;oBACjD,SAAS,CAAC,UAAU,CAChB,mBAAmB,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG,CACjF,CAAC;oBAEF,IAAI,UAAU,EAAE;wBACZ,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,kCAAkC,GAAG,SAAS,CAAC,SAAS,EAAE,EAC1D,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,IAAA,yBAAa,GAAE,EAC5B,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,EAAE,CACrB,CAAC;qBACL;oBAED,IAAI,IAAI,EAAE;wBACN,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;wBACtC,OAAO,CAAC,UAAU,CAAC,kCAAkC,CAAC,CAAC;wBACvD,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;qBAClC;oBAED,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;iBACpF;aACJ;SACJ;aAAM;YACH,4CAA4C;YAC5C,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE;gBAClC,IAAI,UAAU,EAAE;oBACZ,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,mCAAmC,EACnC,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,IAAA,yBAAa,GAAE,EAC5B,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,EAAE,CACrB,CAAC;iBACL;gBACD,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,GAAG,UAAU,CAAC,mCAAmC,CAAC,CAAC;gBACvE,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,kBAA0B,CAAC;aACtF;SACJ;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YACzB,gDAAgD;YAChD,IAAI,CAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,UAAU,CAAA,EAAE;gBACzB,kBAAkB,GAAG,IAAI,CAAC;aAC7B;YAED,+CAA+C;YAC/C,IAAI,UAAU,IAAI,IAAA,8BAAY,EAAC,UAAU,CAAC,IAAI,CAAC,EAAE;gBAC7C,kBAAkB,GAAG,IAAI,CAAC;aAC7B;YAED,0CAA0C;YAC1C,IAAI,oBAAY,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;gBACjC,kBAAkB,GAAG,IAAI,CAAC;aAC7B;YAED,IAAI,CAAC,kBAAkB,EAAE;gBACrB,IAAI,UAAU,EAAE;oBACZ,IAAI,CAAC,iBAAiB,CAClB,UAAU,EACV,oCAAoC,UAAU,CAAC,QAAQ,GAAG,EAC1D,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,IAAA,yBAAa,GAAE,EAC5B,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,EAAE,CACrB,CAAC;iBACL;gBAED,MAAM,CAAC,6BAA6B,EAAE,CAAC;aAC1C;SACJ;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,IAAI,IAAA,0BAAc,EAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE;YACjG,IAAI,UAAU,EAAE;gBACZ,IAAI,CAAC,iBAAiB,CAClB,UAAU,EACV,2CAA2C,UAAU,CAAC,QAAQ,yBAAyB,EACvF,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,IAAA,yBAAa,GAAE,EAC5B,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,EAAE,CACrB,CAAC;aACL;YAED,MAAM,CAAC,wBAAwB,EAAE,CAAC;SACrC;QAED,IAAI,UAAU,EAAE;YACZ,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;SACxG;QAED,OAAO,WAAW,CAAC;IACvB,CAAC;IAEO,kBAAkB,CAAC,MAAyB,EAAE,IAAe,EAAE,aAA8B;QACjG,wCAAwC;QACxC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC7D,IAAI,UAAU,EAAE;YACZ,UAAU,CAAC,cAAc,EAAE,CAAC;YAC5B,OAAO,UAAU,CAAC;SACrB;QAED,MAAM,UAAU,GAAe;YAC3B,QAAQ,EAAE,kCAAc,CAAC,KAAK;YAC9B,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;YACvB,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;YAC/B,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;YAC/B,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YACpD,eAAe,eAAuB;YACtC,cAAc,EAAE,CAAC;YACjB,WAAW,EAAE,EAAE;YACf,SAAS,eAAiB;SAC7B,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAEpC,uDAAuD;QACvD,IAAI,UAAU,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YAClD,IAAI,CAAC,iBAAiB,CAClB,UAAU,EACV,iCAAiC,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,EACzD,IAAA,yBAAa,GAAE,EACf,EAAE,CACL,CAAC;YAEF,MAAM,CAAC,0BAA0B,EAAE,CAAC;SACvC;QAED,MAAM,0BAA0B,GAAG,IAAI,CAAC,iCAAiC,CACrE,MAAM,EACN,IAAI,CAAC,OAAO,CAAC,QAAQ,EACrB,IAAI,CAAC,OAAO,CAAC,MAAM,iBAEnB,aAAa,EACb,CAAC,IAAY,EAAE,MAAc,EAAE,EAAE;YAC7B,iEAAiE;YACjE,gEAAgE;YAChE,sBAAsB;YACtB,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,EAAE;gBAChC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;oBAC9C,IAAI,IAAA,eAAO,EAAC,QAAQ,CAAC,EAAE;wBACnB,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;wBACzD,IAAI,cAAc,IAAI,cAAc,CAAC,oBAAoB,EAAE,EAAE;4BACzD,OAAO,cAAc,CAAC;yBACzB;qBACJ;iBACJ;aACJ;YAED,OAAO,MAAM,CAAC;QAClB,CAAC,CACJ,CAAC;QAEF,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC,yBAAyB,CACvD,UAAU,CAAC,eAAe,EAC1B,0BAA0B,CAC7B,CAAC;QAEF,qCAAqC;QACrC,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE;YACjC,IAAI,CAAC,IAAA,2BAAmB,EAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE;gBACvD,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,2BAA2B,EAAE,IAAA,yBAAa,GAAE,EAAE,EAAE,CAAC,CAAC;gBACnF,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC,yBAAyB,CACvD,UAAU,CAAC,eAAe,2BAE7B,CAAC;aACL;iBAAM;gBACH,MAAM,IAAI,GAAG,IAAI,+BAAkB,EAAE,CAAC;gBACtC,MAAM,oBAAoB,GAAG,IAAI,CAAC,mBAAmB,CACjD,MAAM,EACN,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAC/B,aAAa,EACb,IAAI,CACP,CAAC;gBAEF,IAAI,oBAAoB,kBAA0B,EAAE;oBAChD,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,sBAAsB,IAAI,CAAC,OAAO,CAAC,kBAAkB,wBAAwB;wBACzE,IAAI,CAAC,SAAS,EAAE,EACpB,IAAA,yBAAa,GAAE,EACf,EAAE,CACL,CAAC;oBACF,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC,yBAAyB,CACvD,UAAU,CAAC,eAAe,EAC1B,oBAAoB,CACvB,CAAC;iBACL;aACJ;SACJ;QAED,oCAAoC;QACpC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YAC3C,IAAI,CAAC,IAAA,2BAAmB,EAAC,SAAS,CAAC,EAAE;gBACjC,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,4BAA4B,EAAE,IAAA,yBAAa,GAAE,EAAE,EAAE,CAAC,CAAC;gBACpF,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC,yBAAyB,CACvD,UAAU,CAAC,eAAe,2BAE7B,CAAC;aACL;iBAAM;gBACH,iEAAiE;gBACjE,mCAAmC;gBACnC,IAAI,iBAAS,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE;oBACzC,OAAO;iBACV;gBAED,MAAM,IAAI,GAAG,IAAI,+BAAkB,EAAE,CAAC;gBACtC,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;gBAE7F,IAAI,mBAAmB,kBAA0B,EAAE;oBAC/C,IAAI,CAAC,eAAe,CAChB,UAAU,EACV,uBAAuB,SAAS,CAAC,OAAO,CAAC,QAAQ,wBAAwB,GAAG,IAAI,CAAC,SAAS,EAAE,EAC5F,IAAA,yBAAa,GAAE,EACf,EAAE,CACL,CAAC;oBAEF,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC,yBAAyB,CACvD,UAAU,CAAC,eAAe,EAC1B,mBAAmB,CACtB,CAAC;iBACL;aACJ;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACtB,CAAC;IAEO,mBAAmB,CACvB,MAAyB,EACzB,IAAgB,EAChB,aAA8B;QAE9B,wCAAwC;QACxC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvD,IAAI,UAAU,EAAE;YACZ,UAAU,CAAC,cAAc,EAAE,CAAC;YAC5B,OAAO,UAAU,CAAC;SACrB;QAED,MAAM,UAAU,GAAe;YAC3B,QAAQ,EAAE,kCAAc,CAAC,MAAM;YAC/B,IAAI,EAAE,IAAI,CAAC,UAAU;YACrB,QAAQ,EAAE,IAAI,CAAC,UAAU;YACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;YAC9C,eAAe,eAAuB;YACtC,cAAc,EAAE,CAAC;YACjB,WAAW,EAAE,EAAE;YACf,SAAS,gBAAkB;SAC9B,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAEpC,MAAM,0BAA0B,GAAG,IAAI,CAAC,iCAAiC,CACrE,MAAM,EACN,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,MAAM,kBAEX,aAAa,CAChB,CAAC;QAEF,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC,yBAAyB,CACvD,UAAU,CAAC,eAAe,EAC1B,0BAA0B,CAC7B,CAAC;QAEF,OAAO,UAAU,CAAC;IACtB,CAAC;IAEO,mBAAmB,CACvB,MAAyB,EACzB,IAAU,EACV,aAA8B,EAC9B,IAAwB;QAExB,IAAI,WAAW,gBAAwB,CAAC;QAExC,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE;YACxD,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;gBACxD,IAAI,IAAA,iBAAS,EAAC,OAAO,CAAC,EAAE;oBACpB,IAAI,CAAC,UAAU,CACX,iBAAiB,KAAK,GAAG,CAAC,oBAAoB,IAAI,CAAC,aAAc,CAAC,IAAI,oBAAoB,CAC7F,CAAC;oBACF,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,kBAA0B,CAAC;iBACtF;qBAAM,IAAI,IAAA,2BAAe,EAAC,OAAO,CAAC,EAAE;oBACjC,IAAI,CAAC,UAAU,CACX,iBAAiB,KAAK,GAAG,CAAC,oBACtB,IAAI,CAAC,aAAc,CAAC,IACxB,8BAA8B,CACjC,CAAC;oBACF,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,2BAAmC,CAAC;iBAC/F;YACL,CAAC,CAAC,CAAC;SACN;QAED,IAAI,gBAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;YAC5B,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,oBAA4B,CAAC;SACxF;QAED,QAAQ,IAAI,CAAC,QAAQ,EAAE;YACnB,qBAA0B;YAC1B,iBAAsB;YACtB,kBAAuB;YACvB,mBAAwB;YACxB;gBACI,MAAM;YAEV,oBAAyB,CAAC,CAAC;gBACvB,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,kBAA0B,CAAC;gBACnF,MAAM;aACT;YAED,kBAAuB,CAAC,CAAC;gBACrB,IAAA,4BAAgB,EAAC,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE;oBAC/B,WAAW,GAAG,IAAI,CAAC,yBAAyB,CACxC,WAAW,EACX,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAClF,CAAC;gBACN,CAAC,CAAC,CAAC;gBAEH,MAAM;aACT;YAED,+BAAoC,CAAC,CAAC;gBAClC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;oBACnC,WAAW,GAAG,IAAI,CAAC,yBAAyB,CACxC,WAAW,EACX,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CACnF,CAAC;iBACL;gBAED,MAAM;aACT;YAED,qBAA0B,CAAC,CAAC;gBACxB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;oBACxD,WAAW,GAAG,IAAI,CAAC,yBAAyB,CACxC,WAAW,EACX,IAAI,CAAC,2BAA2B,CAC5B,MAAM,EACN,IAAI,EACJ,aAAa;oBACb,gBAAgB,CAAC,SAAS;oBAC1B,eAAe,CAAC,SAAS;oBACzB,kBAAkB,CAAC,SAAS,EAC5B,IAAI,CACP,CACJ,CAAC;iBACL;gBAED,MAAM;aACT;YAED,kBAAuB,CAAC,CAAC;gBACrB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;oBACxD,6CAA6C;oBAC7C,IAAI,CAAC,iBAAS,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;wBAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;wBACxE,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;qBACzF;iBACJ;gBAED,iEAAiE;gBACjE,IAAI,IAAI,CAAC,aAAa,EAAE;oBACpB,IAAI,CAAC,aAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;wBAC3C,IAAI,IAAA,iBAAS,EAAC,OAAO,CAAC,EAAE;4BACpB,IAAI,CAAC,UAAU,CACX,iBAAiB,KAAK,GAAG,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,IAAI,oBAAoB,CACjF,CAAC;4BACF,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,kBAA0B,CAAC;yBACtF;6BAAM,IAAI,IAAA,2BAAe,EAAC,OAAO,CAAC,EAAE;4BACjC,IAAI,CAAC,UAAU,CACX,iBAAiB,KAAK,GAAG,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,IAAI,8BAA8B,CAC3F,CAAC;4BACF,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,2BAAmC,CAAC;yBAC/F;oBACL,CAAC,CAAC,CAAC;iBACN;gBAED,MAAM;aACT;YAED,mBAAwB,CAAC,CAAC;gBACtB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE;oBAClD,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;oBAC3E,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC;iBAC3F;gBAED,MAAM;aACT;SACJ;QAED,OAAO,WAAW,CAAC;IACvB,CAAC;IAEO,kBAAkB,CAAC,MAAc,EAAE,IAAU;QACjD,IAAI,IAAI,CAAC,aAAa,EAAE;YACpB,OAAO,kCAAc,CAAC,SAAS,CAAC;SACnC;QAED,QAAQ,IAAI,CAAC,QAAQ,EAAE;YACnB,sBAA2B;YAC3B,+BAAoC,CAAC,CAAC;gBAClC,MAAM,QAAQ,GAAG,MAAM;qBAClB,eAAe,EAAE;qBACjB,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,qBAA6B,CAAwB,CAAC;gBACnF,IAAI,QAAQ,IAAI,QAAQ,CAAC,QAAQ,EAAE;oBAC/B,OAAO,kCAAc,CAAC,MAAM,CAAC;iBAChC;gBAED,OAAO,kCAAc,CAAC,QAAQ,CAAC;aAClC;YAED,kBAAuB,CAAC,CAAC;gBACrB,IAAI,gBAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;oBAC/B,OAAO,kCAAc,CAAC,KAAK,CAAC;iBAC/B;gBAED,MAAM,OAAO,GAAG,MAAM;qBACjB,eAAe,EAAE;qBACjB,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,qBAA6B,CAAwB,CAAC;gBACnF,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;oBACpD,OAAO,kCAAc,CAAC,QAAQ,CAAC;iBAClC;gBACD,OAAO,kCAAc,CAAC,QAAQ,CAAC;aAClC;YAED,mBAAwB,CAAC,CAAC;gBACtB,OAAO,kCAAc,CAAC,MAAM,CAAC;aAChC;YAED,qBAAyB,CAAC,CAAC;gBACvB,OAAO,kCAAc,CAAC,OAAO,CAAC;aACjC;YAED,OAAO,CAAC,CAAC;gBACL,MAAM,OAAO,GAAG,MAAM;qBACjB,eAAe,EAAE;qBACjB,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,qBAA6B,CAAwB,CAAC;gBACnF,IAAI,OAAO,EAAE;oBACT,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,OAAO,EAAE;wBACvC,OAAO,kCAAc,CAAC,QAAQ,CAAC;qBAClC;yBAAM;wBACH,OAAO,kCAAc,CAAC,QAAQ,CAAC;qBAClC;iBACJ;gBAED,OAAO,kCAAc,CAAC,aAAa,CAAC;aACvC;SACJ;IACL,CAAC;IAEO,sBAAsB,CAAC,UAAkB;;QAC7C,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,aAAa,CACnD,EAAE,EACF,IAAI,CAAC,QAAQ,EACb,IAAA,+CAA8B,EAAC,UAAU,CAAC,CAC7C,CAAC;QAEF,IAAI,YAAY,CAAC,aAAa,EAAE;YAC5B,MAAM,YAAY,GAAG,YAAY,CAAC,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACvF,IAAI,YAAY,EAAE;gBACd,OAAO,IAAA,4BAAgB,EAAC,YAAY,CAAC,CAAC;aACzC;YAED,sEAAsE;YACtE,qBAAqB;YACrB,OAAO,MAAA,YAAY,CAAC,gBAAgB,mCAAI,EAAE,CAAC;SAC9C;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAEO,oBAAoB,CAAC,SAAoB,EAAE,IAAY;QAC3D,IAAI,SAAS,kBAAoB,EAAE;YAC/B,MAAM,iBAAiB,GAAG;gBACtB,WAAW;gBACX,UAAU;gBACV,SAAS;gBACT,YAAY;gBACZ,cAAc;gBACd,WAAW;gBACX,SAAS;gBACT,aAAa;aAChB,CAAC;YACF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC;SACxD;aAAM,IAAI,SAAS,mBAAqB,EAAE;YACvC,MAAM,kBAAkB,GAAG;gBACvB,SAAS;gBACT,YAAY;gBACZ,eAAe;gBACf,WAAW;gBACX,aAAa;gBACb,WAAW;gBACX,SAAS;gBACT,aAAa;aAChB,CAAC;YACF,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC;SACzD;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,UAAU,CAAC,MAAyB,EAAE,UAAsB;QAChE,IAAA,cAAM,EAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;QACjD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACxD,CAAC;IAEO,eAAe,CAAC,UAAsB,EAAE,OAAe,EAAE,SAAgB,EAAE,YAAoB;QACnG,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC;YACxB,UAAU,EAAE,IAAI,uBAAU,gBAA2B,OAAO,EAAE,SAAS,CAAC;YACxE,QAAQ,EAAE,YAAY;SACzB,CAAC,CAAC;IACP,CAAC;IAEO,iBAAiB,CAAC,UAAsB,EAAE,OAAe,EAAE,SAAgB,EAAE,YAAoB;QACrG,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC;YACxB,UAAU,EAAE,IAAI,uBAAU,kBAA6B,OAAO,EAAE,SAAS,CAAC;YAC1E,QAAQ,EAAE,YAAY;SACzB,CAAC,CAAC;IACP,CAAC;IAEO,yBAAyB,CAAC,aAA8B,EAAE,SAA0B;QACxF,uDAAuD;QACvD,OAAO,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC;IACjE,CAAC;CACJ;AAl5CD,kDAk5CC"}
|