@zzzen/pyright-internal 1.2.0-dev.20240107 → 1.2.0-dev.20240121
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 +1 -3
- package/dist/analyzer/binder.js +27 -37
- package/dist/analyzer/binder.js.map +1 -1
- package/dist/analyzer/checker.d.ts +2 -2
- package/dist/analyzer/checker.js +345 -351
- package/dist/analyzer/checker.js.map +1 -1
- package/dist/analyzer/codeFlowEngine.js +2 -2
- package/dist/analyzer/codeFlowEngine.js.map +1 -1
- package/dist/analyzer/commentUtils.js +7 -7
- package/dist/analyzer/commentUtils.js.map +1 -1
- package/dist/analyzer/constraintSolver.js +29 -30
- package/dist/analyzer/constraintSolver.js.map +1 -1
- package/dist/analyzer/constructorTransform.js +10 -11
- package/dist/analyzer/constructorTransform.js.map +1 -1
- package/dist/analyzer/constructors.d.ts +3 -3
- package/dist/analyzer/constructors.js +12 -14
- package/dist/analyzer/constructors.js.map +1 -1
- package/dist/analyzer/dataClasses.js +17 -17
- package/dist/analyzer/dataClasses.js.map +1 -1
- package/dist/analyzer/decorators.d.ts +1 -2
- package/dist/analyzer/decorators.js +13 -10
- package/dist/analyzer/decorators.js.map +1 -1
- package/dist/analyzer/enums.d.ts +4 -2
- package/dist/analyzer/enums.js +109 -50
- package/dist/analyzer/enums.js.map +1 -1
- package/dist/analyzer/functionTransform.js +1 -2
- package/dist/analyzer/functionTransform.js.map +1 -1
- package/dist/analyzer/importResolver.d.ts +2 -2
- package/dist/analyzer/importResolver.js +96 -27
- package/dist/analyzer/importResolver.js.map +1 -1
- package/dist/analyzer/namedTuples.js +8 -7
- package/dist/analyzer/namedTuples.js.map +1 -1
- package/dist/analyzer/operations.js +19 -21
- package/dist/analyzer/operations.js.map +1 -1
- package/dist/analyzer/parseTreeUtils.d.ts +1 -1
- package/dist/analyzer/parseTreeUtils.js +37 -0
- package/dist/analyzer/parseTreeUtils.js.map +1 -1
- package/dist/analyzer/patternMatching.js +26 -23
- package/dist/analyzer/patternMatching.js.map +1 -1
- package/dist/analyzer/program.js +18 -4
- package/dist/analyzer/program.js.map +1 -1
- package/dist/analyzer/properties.js +8 -8
- package/dist/analyzer/properties.js.map +1 -1
- package/dist/analyzer/protocols.js +37 -30
- package/dist/analyzer/protocols.js.map +1 -1
- package/dist/analyzer/service.d.ts +1 -1
- package/dist/analyzer/service.js +21 -20
- package/dist/analyzer/service.js.map +1 -1
- package/dist/analyzer/sourceFile.d.ts +2 -2
- package/dist/analyzer/sourceFile.js +17 -17
- package/dist/analyzer/sourceFile.js.map +1 -1
- package/dist/analyzer/sourceFileInfoUtils.js +1 -1
- package/dist/analyzer/sourceFileInfoUtils.js.map +1 -1
- package/dist/analyzer/typeEvaluator.js +1042 -875
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/analyzer/typeEvaluatorTypes.d.ts +12 -11
- package/dist/analyzer/typeEvaluatorTypes.js +2 -4
- package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
- package/dist/analyzer/typeGuards.js +16 -11
- package/dist/analyzer/typeGuards.js.map +1 -1
- package/dist/analyzer/typePrinter.js +3 -4
- package/dist/analyzer/typePrinter.js.map +1 -1
- package/dist/analyzer/typeUtils.d.ts +5 -2
- package/dist/analyzer/typeUtils.js +19 -0
- package/dist/analyzer/typeUtils.js.map +1 -1
- package/dist/analyzer/typedDicts.js +30 -34
- package/dist/analyzer/typedDicts.js.map +1 -1
- package/dist/analyzer/types.d.ts +12 -13
- package/dist/analyzer/types.js +49 -61
- package/dist/analyzer/types.js.map +1 -1
- package/dist/backgroundAnalysisBase.d.ts +12 -11
- package/dist/backgroundAnalysisBase.js +60 -64
- package/dist/backgroundAnalysisBase.js.map +1 -1
- package/dist/backgroundThreadBase.d.ts +6 -5
- package/dist/backgroundThreadBase.js +63 -60
- package/dist/backgroundThreadBase.js.map +1 -1
- package/dist/commands/quickActionCommand.js +1 -1
- package/dist/commands/quickActionCommand.js.map +1 -1
- package/dist/common/cancellationUtils.d.ts +6 -3
- package/dist/common/cancellationUtils.js +29 -5
- package/dist/common/cancellationUtils.js.map +1 -1
- package/dist/common/commandLineOptions.d.ts +1 -0
- package/dist/common/commandLineOptions.js.map +1 -1
- package/dist/common/commandUtils.d.ts +2 -0
- package/dist/common/commandUtils.js +24 -0
- package/dist/common/commandUtils.js.map +1 -0
- package/dist/common/configOptions.d.ts +1 -0
- package/dist/common/configOptions.js +13 -11
- package/dist/common/configOptions.js.map +1 -1
- package/dist/common/core.d.ts +1 -1
- package/dist/common/core.js.map +1 -1
- package/dist/common/extensibility.d.ts +7 -6
- package/dist/common/extensibility.js.map +1 -1
- package/dist/common/fileBasedCancellationUtils.js +19 -13
- package/dist/common/fileBasedCancellationUtils.js.map +1 -1
- package/dist/common/fullAccessHost.d.ts +1 -1
- package/dist/common/fullAccessHost.js +2 -2
- package/dist/common/fullAccessHost.js.map +1 -1
- package/dist/common/host.d.ts +2 -2
- package/dist/common/host.js.map +1 -1
- package/dist/common/realFileSystem.js +8 -8
- package/dist/common/realFileSystem.js.map +1 -1
- package/dist/common/serviceProvider.js +8 -1
- package/dist/common/serviceProvider.js.map +1 -1
- package/dist/common/uri/baseUri.d.ts +11 -3
- package/dist/common/uri/baseUri.js +54 -25
- package/dist/common/uri/baseUri.js.map +1 -1
- package/dist/common/uri/emptyUri.d.ts +9 -4
- package/dist/common/uri/emptyUri.js +22 -8
- package/dist/common/uri/emptyUri.js.map +1 -1
- package/dist/common/uri/fileUri.d.ts +14 -4
- package/dist/common/uri/fileUri.js +65 -9
- package/dist/common/uri/fileUri.js.map +1 -1
- package/dist/common/uri/memoization.js +1 -1
- package/dist/common/uri/memoization.js.map +1 -1
- package/dist/common/uri/uri.d.ts +9 -2
- package/dist/common/uri/uri.js +5 -2
- package/dist/common/uri/uri.js.map +1 -1
- package/dist/common/uri/uriUtils.d.ts +2 -0
- package/dist/common/uri/uriUtils.js +21 -4
- package/dist/common/uri/uriUtils.js.map +1 -1
- package/dist/common/uri/webUri.d.ts +8 -1
- package/dist/common/uri/webUri.js +59 -13
- package/dist/common/uri/webUri.js.map +1 -1
- package/dist/common/workspaceEditUtils.d.ts +6 -5
- package/dist/common/workspaceEditUtils.js +18 -17
- package/dist/common/workspaceEditUtils.js.map +1 -1
- package/dist/languageServerBase.d.ts +2 -0
- package/dist/languageServerBase.js +29 -25
- package/dist/languageServerBase.js.map +1 -1
- package/dist/languageService/analyzerServiceExecutor.d.ts +1 -2
- package/dist/languageService/analyzerServiceExecutor.js +8 -5
- package/dist/languageService/analyzerServiceExecutor.js.map +1 -1
- package/dist/languageService/autoImporter.js +3 -3
- package/dist/languageService/autoImporter.js.map +1 -1
- package/dist/languageService/callHierarchyProvider.js +9 -7
- package/dist/languageService/callHierarchyProvider.js.map +1 -1
- package/dist/languageService/codeActionProvider.js +3 -2
- package/dist/languageService/codeActionProvider.js.map +1 -1
- package/dist/languageService/completionProvider.d.ts +2 -4
- package/dist/languageService/completionProvider.js +14 -18
- package/dist/languageService/completionProvider.js.map +1 -1
- package/dist/languageService/documentSymbolProvider.js +5 -4
- package/dist/languageService/documentSymbolProvider.js.map +1 -1
- package/dist/languageService/navigationUtils.js +2 -1
- package/dist/languageService/navigationUtils.js.map +1 -1
- package/dist/languageService/renameProvider.js +2 -2
- package/dist/languageService/renameProvider.js.map +1 -1
- package/dist/languageService/workspaceSymbolProvider.js +2 -1
- package/dist/languageService/workspaceSymbolProvider.js.map +1 -1
- package/dist/localization/localize.d.ts +10 -9
- package/dist/localization/localize.js +9 -5
- package/dist/localization/localize.js.map +1 -1
- package/dist/localization/package.nls.cs.json +50 -9
- package/dist/localization/package.nls.de.json +51 -10
- package/dist/localization/package.nls.en-us.json +11 -9
- package/dist/localization/package.nls.es.json +51 -10
- package/dist/localization/package.nls.fr.json +50 -9
- package/dist/localization/package.nls.it.json +51 -10
- package/dist/localization/package.nls.ja.json +51 -10
- package/dist/localization/package.nls.ko.json +51 -10
- package/dist/localization/package.nls.pl.json +51 -10
- package/dist/localization/package.nls.pt-br.json +51 -10
- package/dist/localization/package.nls.qps-ploc.json +51 -10
- package/dist/localization/package.nls.ru.json +50 -9
- package/dist/localization/package.nls.tr.json +51 -10
- package/dist/localization/package.nls.zh-cn.json +51 -10
- package/dist/localization/package.nls.zh-tw.json +51 -10
- package/dist/parser/parser.d.ts +1 -4
- package/dist/parser/parser.js +201 -201
- package/dist/parser/parser.js.map +1 -1
- package/dist/parser/tokenizer.d.ts +2 -4
- package/dist/parser/tokenizer.js +5 -6
- package/dist/parser/tokenizer.js.map +1 -1
- package/dist/parser/tokenizerTypes.d.ts +2 -2
- package/dist/parser/tokenizerTypes.js.map +1 -1
- package/dist/pyright.js +11 -9
- package/dist/pyright.js.map +1 -1
- package/dist/pyrightFileSystem.js +2 -2
- package/dist/server.js +7 -5
- package/dist/server.js.map +1 -1
- package/dist/tests/chainedSourceFiles.test.js +8 -8
- package/dist/tests/chainedSourceFiles.test.js.map +1 -1
- package/dist/tests/completions.test.js +3 -3
- package/dist/tests/completions.test.js.map +1 -1
- package/dist/tests/config.test.js +14 -6
- package/dist/tests/config.test.js.map +1 -1
- package/dist/tests/filesystem.test.js +6 -6
- package/dist/tests/filesystem.test.js.map +1 -1
- package/dist/tests/fourSlashParser.test.js +23 -9
- package/dist/tests/fourSlashParser.test.js.map +1 -1
- package/dist/tests/fourslash/rename.multipleDecl.fourslash.d.ts +1 -1
- package/dist/tests/harness/fourslash/fourSlashParser.js +4 -0
- package/dist/tests/harness/fourslash/fourSlashParser.js.map +1 -1
- package/dist/tests/harness/fourslash/fourSlashTypes.d.ts +3 -0
- package/dist/tests/harness/fourslash/fourSlashTypes.js.map +1 -1
- package/dist/tests/harness/fourslash/testLanguageService.js +2 -0
- package/dist/tests/harness/fourslash/testLanguageService.js.map +1 -1
- package/dist/tests/harness/fourslash/testState.d.ts +13 -0
- package/dist/tests/harness/fourslash/testState.js +14 -8
- package/dist/tests/harness/fourslash/testState.js.map +1 -1
- package/dist/tests/harness/vfs/factory.d.ts +1 -1
- package/dist/tests/harness/vfs/factory.js +4 -4
- package/dist/tests/harness/vfs/factory.js.map +1 -1
- package/dist/tests/importStatementUtils.test.js +1 -1
- package/dist/tests/importStatementUtils.test.js.map +1 -1
- package/dist/tests/ipythonMode.test.js +21 -22
- package/dist/tests/ipythonMode.test.js.map +1 -1
- package/dist/tests/localizer.test.js +2 -2
- package/dist/tests/localizer.test.js.map +1 -1
- package/dist/tests/serialization.test.d.ts +2 -0
- package/dist/tests/serialization.test.js +88 -0
- package/dist/tests/serialization.test.js.map +1 -0
- package/dist/tests/service.test.js +1 -1
- package/dist/tests/service.test.js.map +1 -1
- package/dist/tests/signatureHelp.test.js +2 -3
- package/dist/tests/signatureHelp.test.js.map +1 -1
- package/dist/tests/sourceFile.test.js +3 -3
- package/dist/tests/sourceFile.test.js.map +1 -1
- package/dist/tests/sourceMapperUtils.test.js +2 -2
- package/dist/tests/sourceMapperUtils.test.js.map +1 -1
- package/dist/tests/testState.test.js +1 -1
- package/dist/tests/testState.test.js.map +1 -1
- package/dist/tests/testStateUtils.js +2 -2
- package/dist/tests/testStateUtils.js.map +1 -1
- package/dist/tests/textEditUtil.test.js +1 -2
- package/dist/tests/textEditUtil.test.js.map +1 -1
- package/dist/tests/typeEvaluator1.test.js +15 -3
- package/dist/tests/typeEvaluator1.test.js.map +1 -1
- package/dist/tests/typeEvaluator2.test.js +12 -8
- package/dist/tests/typeEvaluator2.test.js.map +1 -1
- package/dist/tests/typeEvaluator3.test.js +24 -6
- package/dist/tests/typeEvaluator3.test.js.map +1 -1
- package/dist/tests/typeEvaluator4.test.js +5 -5
- package/dist/tests/typeEvaluator4.test.js.map +1 -1
- package/dist/tests/typeEvaluator5.test.js +4 -0
- package/dist/tests/typeEvaluator5.test.js.map +1 -1
- package/dist/tests/uri.test.js +95 -15
- package/dist/tests/uri.test.js.map +1 -1
- package/dist/tests/workspaceEditUtils.test.js +8 -8
- package/dist/tests/workspaceEditUtils.test.js.map +1 -1
- package/dist/workspaceFactory.d.ts +1 -0
- package/dist/workspaceFactory.js +2 -1
- package/dist/workspaceFactory.js.map +1 -1
- package/package.json +2 -1
@@ -1,7 +1,7 @@
|
|
1
1
|
import { IPythonMode } from '../analyzer/sourceFile';
|
2
2
|
import { TextRange } from '../common/textRange';
|
3
3
|
import { TextRangeCollection } from '../common/textRangeCollection';
|
4
|
-
import {
|
4
|
+
import { OperatorFlags, OperatorType, Token } from './tokenizerTypes';
|
5
5
|
export declare const maxStringTokenLength: number;
|
6
6
|
export interface TokenizerOutput {
|
7
7
|
tokens: TextRangeCollection<Token>;
|
@@ -22,8 +22,7 @@ export interface IgnoreComment {
|
|
22
22
|
range: TextRange;
|
23
23
|
rulesList: IgnoreCommentRule[] | undefined;
|
24
24
|
}
|
25
|
-
export declare class Tokenizer
|
26
|
-
private readonly _keywords;
|
25
|
+
export declare class Tokenizer {
|
27
26
|
private _cs;
|
28
27
|
private _tokens;
|
29
28
|
private _prevLineStart;
|
@@ -45,7 +44,6 @@ export declare class Tokenizer<KeywordT extends number> {
|
|
45
44
|
private _singleQuoteCount;
|
46
45
|
private _doubleQuoteCount;
|
47
46
|
private _ipythonMode;
|
48
|
-
constructor(_keywords?: Map<string, KeywordT> | Map<string, KeywordType>);
|
49
47
|
tokenize(text: string, start?: number, length?: number, initialParenDepth?: number, ipythonMode?: IPythonMode): TokenizerOutput;
|
50
48
|
static getOperatorInfo(operatorType: OperatorType): OperatorFlags;
|
51
49
|
static isPythonKeyword(name: string, includeSoftKeywords?: boolean): boolean;
|
package/dist/parser/tokenizer.js
CHANGED
@@ -19,7 +19,7 @@ const characters_1 = require("./characters");
|
|
19
19
|
const characterStream_1 = require("./characterStream");
|
20
20
|
const tokenizerTypes_1 = require("./tokenizerTypes");
|
21
21
|
// This must be a Map, as operations like {}["constructor"] succeed.
|
22
|
-
const
|
22
|
+
const _keywords = new Map([
|
23
23
|
['and', 0 /* KeywordType.And */],
|
24
24
|
['as', 1 /* KeywordType.As */],
|
25
25
|
['assert', 2 /* KeywordType.Assert */],
|
@@ -109,8 +109,7 @@ const _byteOrderMarker = 0xfeff;
|
|
109
109
|
const defaultTabSize = 8;
|
110
110
|
exports.maxStringTokenLength = 32 * 1024;
|
111
111
|
class Tokenizer {
|
112
|
-
constructor(
|
113
|
-
this._keywords = _keywords;
|
112
|
+
constructor() {
|
114
113
|
this._cs = new characterStream_1.CharacterStream('');
|
115
114
|
this._tokens = [];
|
116
115
|
this._prevLineStart = 0;
|
@@ -244,7 +243,7 @@ class Tokenizer {
|
|
244
243
|
return _operatorInfo[operatorType];
|
245
244
|
}
|
246
245
|
static isPythonKeyword(name, includeSoftKeywords = false) {
|
247
|
-
const keyword =
|
246
|
+
const keyword = _keywords.get(name);
|
248
247
|
if (!keyword) {
|
249
248
|
return false;
|
250
249
|
}
|
@@ -644,8 +643,8 @@ class Tokenizer {
|
|
644
643
|
}
|
645
644
|
if (this._cs.position > start) {
|
646
645
|
const value = this._cs.getText().substring(start, this._cs.position);
|
647
|
-
if (
|
648
|
-
this._tokens.push(tokenizerTypes_1.KeywordToken.create(start, this._cs.position - start,
|
646
|
+
if (_keywords.has(value)) {
|
647
|
+
this._tokens.push(tokenizerTypes_1.KeywordToken.create(start, this._cs.position - start, _keywords.get(value), this._getComments()));
|
649
648
|
}
|
650
649
|
else {
|
651
650
|
this._tokens.push(tokenizerTypes_1.IdentifierToken.create(start, this._cs.position - start, value, this._getComments()));
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"tokenizer.js","sourceRoot":"","sources":["../../../src/parser/tokenizer.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AAEH,+DAA0D;AAC1D,uDAAqD;AAGrD,uEAAoE;AACpE,6CAQsB;AACtB,uDAAoD;AACpD,qDAqB0B;AAE1B,oEAAoE;AACpE,MAAM,cAAc,GAA6B,IAAI,GAAG,CAAC;IACrD,CAAC,KAAK,0BAAkB;IACxB,CAAC,IAAI,yBAAiB;IACtB,CAAC,QAAQ,6BAAqB;IAC9B,CAAC,OAAO,4BAAoB;IAC5B,CAAC,OAAO,4BAAoB;IAC5B,CAAC,OAAO,4BAAoB;IAC5B,CAAC,MAAM,2BAAmB;IAC1B,CAAC,OAAO,4BAAoB;IAC5B,CAAC,UAAU,+BAAuB;IAClC,CAAC,WAAW,4BAAoB;IAChC,CAAC,KAAK,2BAAkB;IACxB,CAAC,KAAK,2BAAkB;IACxB,CAAC,MAAM,4BAAmB;IAC1B,CAAC,MAAM,4BAAmB;IAC1B,CAAC,QAAQ,8BAAqB;IAC9B,CAAC,SAAS,+BAAsB;IAChC,CAAC,KAAK,2BAAkB;IACxB,CAAC,MAAM,4BAAmB;IAC1B,CAAC,QAAQ,8BAAqB;IAC9B,CAAC,IAAI,0BAAiB;IACtB,CAAC,QAAQ,8BAAqB;IAC9B,CAAC,IAAI,0BAAiB;IACtB,CAAC,IAAI,0BAAiB;IACtB,CAAC,QAAQ,8BAAqB;IAC9B,CAAC,OAAO,6BAAoB;IAC5B,CAAC,UAAU,gCAAuB;IAClC,CAAC,KAAK,2BAAkB;IACxB,CAAC,IAAI,0BAAiB;IACtB,CAAC,MAAM,4BAAmB;IAC1B,CAAC,OAAO,6BAAoB;IAC5B,CAAC,QAAQ,8BAAqB;IAC9B,CAAC,KAAK,2BAAkB;IACxB,CAAC,MAAM,4BAAmB;IAC1B,CAAC,OAAO,6BAAoB;IAC5B,CAAC,MAAM,4BAAmB;IAC1B,CAAC,OAAO,6BAAoB;IAC5B,CAAC,OAAO,6BAAoB;IAC5B,CAAC,MAAM,4BAAmB;IAC1B,CAAC,MAAM,4BAAmB;CAC7B,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAEzD,MAAM,aAAa,GAAqC;IACpD,0BAAkB,EAAE,0DAA0C;IAC9D,+BAAuB,kCAA0B;IACjD,6BAAqB,kCAA0B;IAC/C,iCAAyB,8BAAsB;IAC/C,sCAA8B,kCAA0B;IACxD,oCAA4B,6BAAqB;IACjD,gCAAwB,8BAAsB;IAC9C,qCAA6B,kCAA0B;IACvD,iCAAyB,8BAAsB;IAC/C,sCAA8B,kCAA0B;IACxD,8BAAqB,8BAAsB;IAC3C,mCAA0B,kCAA0B;IACpD,8BAAqB,EAAE,+DAA+C;IACtE,mCAA0B,8BAAsB;IAChD,wCAA+B,kCAA0B;IACzD,mCAA0B,EAAE,+DAA+C;IAC3E,0CAAiC,EAAE,+DAA+C;IAClF,iCAAwB,8BAAsB;IAC9C,sCAA6B,kCAA0B;IACvD,yCAAgC,EAAE,+DAA+C,oCAA2B;IAC5G,gCAAuB,EAAE,+DAA+C;IACxE,uCAA8B,EAAE,+DAA+C;IAC/E,sCAA6B,8BAAsB;IACnD,2CAAkC,kCAA0B;IAC5D,2BAAkB,8BAAsB;IACxC,gCAAuB,kCAA0B;IACjD,gCAAuB,8BAAsB;IAC7C,qCAA4B,kCAA0B;IACtD,iCAAwB,EAAE,+DAA+C;IACzE,6BAAoB,8BAAsB;IAC1C,kCAAyB,kCAA0B;IACnD,kCAAyB,8BAAsB;IAC/C,uCAA8B,kCAA0B;IACxD,gCAAuB,8BAAsB;IAC7C,qCAA4B,kCAA0B;IAEtD,2BAAkB,8BAAsB;IACxC,0BAAiB,8BAAsB;IACvC,2BAAkB,6BAAqB;IACvC,0BAAiB,8BAAsB;IACvC,6BAAoB,8BAAsB;IAC1C,0BAAiB,8BAAsB;IACvC,6BAAoB,8BAAsB;CAC7C,CAAC;AAEF,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEhC,MAAM,cAAc,GAAG,CAAC,CAAC;AAEZ,QAAA,oBAAoB,GAAG,EAAE,GAAG,IAAI,CAAC;AAkE9C,MAAa,SAAS;IAuClB,YAA6B,YAA8D,cAAc;QAA5E,cAAS,GAAT,SAAS,CAAmE;QAtCjG,QAAG,GAAG,IAAI,iCAAe,CAAC,EAAE,CAAC,CAAC;QAC9B,YAAO,GAAY,EAAE,CAAC;QACtB,mBAAc,GAAG,CAAC,CAAC;QACnB,gBAAW,GAAG,CAAC,CAAC;QAChB,gBAAW,GAAgB,EAAE,CAAC;QAC9B,mBAAc,GAAiB,EAAE,CAAC;QAElC,qBAAgB,GAAG,IAAI,GAAG,EAAyB,CAAC;QACpD,wBAAmB,GAAG,IAAI,GAAG,EAAyB,CAAC;QAEvD,kBAAa,GAAqB,EAAE,CAAC;QAG7C,sDAAsD;QACtD,wDAAwD;QAChD,aAAQ,GAAG,CAAC,CAAC;QACb,eAAU,GAAG,CAAC,CAAC;QACf,aAAQ,GAAG,CAAC,CAAC;QAErB,8CAA8C;QACtC,iBAAY,GAAG,CAAC,CAAC;QAEzB,iEAAiE;QACjE,2DAA2D;QACnD,oBAAe,GAAG,CAAC,CAAC;QAE5B,sDAAsD;QACtD,gDAAgD;QACxC,uBAAkB,GAAG,CAAC,CAAC;QAE/B,yDAAyD;QACzD,eAAe;QACP,sBAAiB,GAAG,CAAC,CAAC;QACtB,sBAAiB,GAAG,CAAC,CAAC;QAE9B,eAAe;QACP,iBAAY,GAAG,wBAAW,CAAC,IAAI,CAAC;IAEoE,CAAC;IAE7G,QAAQ,CACJ,IAAY,EACZ,KAAc,EACd,MAAe,EACf,iBAAiB,GAAG,CAAC,EACrB,WAAW,GAAG,wBAAW,CAAC,IAAI;QAE9B,IAAI,KAAK,KAAK,SAAS,EAAE;YACrB,KAAK,GAAG,CAAC,CAAC;SACb;aAAM,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE;YACzC,MAAM,IAAI,KAAK,CAAC,8BAA8B,KAAK,iBAAiB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;SACvF;QAED,IAAI,MAAM,KAAK,SAAS,EAAE;YACtB,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;SACxB;aAAM,IAAI,MAAM,GAAG,CAAC,IAAI,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE;YACnD,MAAM,IAAI,KAAK,CAAC,+BAA+B,KAAK,YAAY,MAAM,iBAAiB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;SAC1G;aAAM,IAAI,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE;YACrC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC,CAAC;SAC5C;QAED,IAAI,CAAC,GAAG,GAAG,IAAI,iCAAe,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,iBAAiB,CAAC;QACrC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAEhC,MAAM,GAAG,GAAG,KAAK,GAAG,MAAM,CAAC;QAE3B,IAAI,KAAK,KAAK,CAAC,EAAE;YACb,IAAI,CAAC,4BAA4B,EAAE,CAAC;SACvC;QAED,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE;YAC9B,IAAI,CAAC,aAAa,EAAE,CAAC;YAErB,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,GAAG,EAAE;gBAC1B,MAAM;aACT;SACJ;QAED,wCAAwC;QACxC,OAAO,IAAI,CAAC,cAAc,EAAE;YACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,gCAAe,CAAC,MAAM,CAClB,IAAI,CAAC,GAAG,CAAC,QAAQ,EACjB,CAAC,EACD,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,KAAK,4CAAgC,CACvE,CACJ,CAAC;YACF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC;SAClD;QAED,qDAAqD;QACrD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,8BAAsB,EAAE;YAC/F,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,6BAAY,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,+BAAuB,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;SAC1G;QAED,oCAAoC;QACpC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,oBAAoB,CAAC,KAAK,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAE/F,0DAA0D;QAC1D,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAK,CAAC,MAAM,gCAAwB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAElG,4BAA4B;QAC5B,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,qEAAqE;QACrE,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC/D,MAAM,kBAAkB,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACjF,IAAI,kBAAkB,iCAAwB,IAAI,kBAAkB,2BAAkB,EAAE;gBACpF,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;aAClE;SACJ;QAED,IAAI,4BAA4B,GAAG,IAAI,CAAC;QACxC,IAAI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;YAClE,4BAA4B,GAAG,IAAI,CAAC;SACvC;aAAM,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,EAAE;YAC3E,4BAA4B,GAAG,MAAM,CAAC;SACzC;QAED,IAAI,sBAAsB,GAAG,MAAM,CAAC;QACpC,IAAI,yBAAyB,GAAG,KAAK,CAAC;QACtC,sDAAsD;QACtD,8CAA8C;QAC9C,IAAI,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,EAAE;YAC9C,yBAAyB,GAAG,IAAI,CAAC;YACjC,sBAAsB,GAAG,IAAI,CAAC;SACjC;aAAM,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,EAAE;YAC9B,yBAAyB,GAAG,IAAI,CAAC;YACjC,kDAAkD;YAClD,yCAAyC;YACzC,IAAI,qBAAqB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;YACpF,IAAI,qBAAqB,GAAG,CAAC,EAAE;gBAC3B,qBAAqB,GAAG,CAAC,CAAC;aAC7B;iBAAM,IAAI,qBAAqB,GAAG,cAAc,EAAE;gBAC/C,qBAAqB,GAAG,cAAc,CAAC;aAC1C;YACD,sBAAsB,GAAG,EAAE,CAAC;YAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,qBAAqB,EAAE,CAAC,EAAE,EAAE;gBAC5C,sBAAsB,IAAI,GAAG,CAAC;aACjC;SACJ;QAED,OAAO;YACH,MAAM,EAAE,IAAI,yCAAmB,CAAC,IAAI,CAAC,OAAO,CAAC;YAC7C,KAAK,EAAE,IAAI,yCAAmB,CAAC,IAAI,CAAC,WAAW,CAAC;YAChD,eAAe,EAAE,IAAI,CAAC,gBAAgB;YACtC,aAAa,EAAE,IAAI,CAAC,cAAc;YAClC,kBAAkB,EAAE,IAAI,CAAC,mBAAmB;YAC5C,4BAA4B;YAC5B,yBAAyB;YACzB,sBAAsB;YACtB,+BAA+B,EAAE,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;SAChG,CAAC;IACN,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,YAA0B;QAC7C,OAAO,aAAa,CAAC,YAAY,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,IAAY,EAAE,mBAAmB,GAAG,KAAK;QAC5D,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,EAAE;YACV,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,mBAAmB,EAAE;YACrB,OAAO,IAAI,CAAC;SACf;QAED,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,oBAAoB,CAAC,YAA2B;QACnD,IAAI,YAAY,KAAK,SAAS,IAAI,aAAa,CAAC,YAAY,CAAC,KAAK,SAAS,EAAE;YACzE,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,mCAA2B,CAAC,KAAK,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,CAAC,oBAAoB,CAAC,YAA2B;QACnD,IAAI,YAAY,KAAK,SAAS,IAAI,aAAa,CAAC,YAAY,CAAC,KAAK,SAAS,EAAE;YACzE,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,mCAA2B,CAAC,KAAK,CAAC,CAAC;IAC1E,CAAC;IAEO,aAAa;QACjB,sEAAsE;QACtE,IACI,IAAI,CAAC,cAAc;YACnB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,sBAAsB;gBACxC,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,EACnE;YACE,IAAI,CAAC,oBAAoB,EAAE,CAAC;SAC/B;aAAM;YACH,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;SAC7B;QAED,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE;YAC1B,OAAO;SACV;QAED,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE;YAC1B,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;SACvB;IACL,CAAC;IAED,uEAAuE;IACvE,wEAAwE;IACxE,yBAAyB;IACjB,gBAAgB;;QACpB,4BAA4B;QAC5B,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAEzD,IAAI,kBAAkB,IAAI,CAAC,EAAE;YACzB,IAAI,YAAY,GAAG,EAAE,CAAC;YACtB,IAAI,kBAAkB,GAAG,CAAC,EAAE;gBACxB,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,kBAAkB,CAAC,CAAC;gBACvG,kBAAkB;gBAClB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;aACxC;YAED,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;YAC7D,IAAI,cAAc,kCAA0B,EAAE;gBAC1C,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;gBACvD,OAAO,IAAI,CAAC;aACf;SACJ;QAED,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,uBAAc,EAAE;YACpC,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;SACf;QAED,IAAI,IAAI,CAAC,YAAY,EAAE;YACnB,MAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC1C,IAAI,IAAI,KAAK,MAAM,EAAE;gBACjB,IAAI,CAAC,oBAAoB,CACrB,IAAI,CAAC,GAAG,CAAC,WAAW,0BAAiB,CAAC,CAAC,kCAA0B,CAAC,uCAA+B,CACpG,CAAC;gBACF,OAAO,IAAI,CAAC;aACf;YAED,IAAI,IAAI,KAAK,MAAM,EAAE;gBACjB,IAAI,CAAC,oBAAoB,CACrB,IAAI,CAAC,GAAG,CAAC,WAAW,0BAAiB;oBACjC,CAAC;oBACD,CAAC,2CAAmC,CAC3C,CAAC;gBACF,OAAO,IAAI,CAAC;aACf;SACJ;QAED,QAAQ,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE;YAC1B,KAAK,gBAAgB,CAAC,CAAC;gBACnB,iDAAiD;gBACjD,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,EAAE;oBACzB,OAAO,KAAK,CAAC;iBAChB;gBACD,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;aAChC;YAED,iCAAwB,CAAC,CAAC;gBACtB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,2BAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3D,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,4CAAoC,CAAC,mCAA2B,CAAC;gBACnG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;gBACzC,OAAO,IAAI,CAAC;aACf;YAED,2BAAkB,CAAC,CAAC;gBAChB,IAAI,CAAC,cAAc,CAAC,CAAC,+BAAuB,CAAC;gBAC7C,OAAO,IAAI,CAAC;aACf;YAED,4BAAmB,CAAC,CAAC;gBACjB,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,iCAAwB,EAAE;oBAC3C,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,2BAAkB,EAAE;wBACzC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;qBACvB;yBAAM;wBACH,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;qBACvB;oBACD,IAAI,CAAC,aAAa,EAAE,CAAC;oBACrB,OAAO,IAAI,CAAC;iBACf;qBAAM,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,2BAAkB,EAAE;oBAC5C,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;oBACpB,IAAI,CAAC,aAAa,EAAE,CAAC;oBACrB,OAAO,IAAI,CAAC;iBACf;gBACD,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;aAChC;YAED,kCAAyB,CAAC,CAAC;gBACvB,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAK,CAAC,MAAM,qCAA4B,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBACtG,MAAM;aACT;YAED,mCAA0B,CAAC,CAAC;gBACxB,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,EAAE;oBACtB,IAAI,CAAC,WAAW,EAAE,CAAC;iBACtB;gBACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAK,CAAC,MAAM,sCAA6B,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBACvG,MAAM;aACT;YAED,8BAAqB,CAAC,CAAC;gBACnB,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAK,CAAC,MAAM,iCAAwB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBAClG,MAAM;aACT;YAED,+BAAsB,CAAC,CAAC;gBACpB,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,EAAE;oBACtB,IAAI,CAAC,WAAW,EAAE,CAAC;iBACtB;gBACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAK,CAAC,MAAM,kCAAyB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBACnG,MAAM;aACT;YAED,6BAAmB,CAAC,CAAC;gBACjB,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAK,CAAC,MAAM,oCAA2B,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBAErG,IAAI,IAAI,CAAC,cAAc,EAAE;oBACrB,2CAA2C;oBAC3C,IACI,CAAC,IAAI,CAAC,cAAc,CAAC,sBAAsB;wBAC3C,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,iBAAiB,EAC9D;wBACE,2DAA2D;wBAC3D,uCAAuC;wBACvC,IAAI,IAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE;4BAC5C,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,CAAC;yBAC9F;wBAED,iDAAiD;wBACjD,IAAI,CAAC,cAAc,CAAC,sBAAsB,GAAG;4BACzC,iBAAiB,EAAE,KAAK;4BACxB,UAAU,EAAE,IAAI,CAAC,WAAW;yBAC/B,CAAC;qBACL;iBACJ;gBACD,MAAM;aACT;YAED,8BAAoB,CAAC,CAAC;gBAClB,IACI,IAAI,CAAC,cAAc;oBACnB,CAAA,MAAA,IAAI,CAAC,cAAc,CAAC,sBAAsB,0CAAE,UAAU,MAAK,IAAI,CAAC,WAAW,EAC7E;oBACE,IAAI,CAAC,cAAc,CAAC,sBAAsB,GAAG,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,GAAG,EAAE,CAAC;iBAChG;gBAED,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,EAAE;oBACtB,IAAI,CAAC,WAAW,EAAE,CAAC;iBACtB;gBACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAK,CAAC,MAAM,qCAA4B,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBACtG,MAAM;aACT;YAED,wBAAe,CAAC,CAAC;gBACb,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAK,CAAC,MAAM,2BAAkB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBAC5F,MAAM;aACT;YAED,2BAAkB,CAAC,CAAC;gBAChB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAK,CAAC,MAAM,8BAAqB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBAC/F,MAAM;aACT;YAED,4BAAmB,CAAC,CAAC;gBACjB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAK,CAAC,MAAM,+BAAsB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBAChG,MAAM;aACT;YAED,wBAAe,CAAC,CAAC;gBACb,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,wBAAe,EAAE;oBAClC,IACI,CAAC,IAAI,CAAC,cAAc;wBACpB,CAAC,IAAI,CAAC,cAAc,CAAC,sBAAsB;wBAC3C,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,UAAU,KAAK,IAAI,CAAC,WAAW,EAC5E;wBACE,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,8BAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,gCAAuB,IAAI,CAAC,YAAY,EAAE,CAAC,CACvF,CAAC;wBACF,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;wBACpB,MAAM;qBACT;iBACJ;gBAED,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAK,CAAC,MAAM,2BAAkB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBAE5F,IACI,CAAA,MAAA,IAAI,CAAC,cAAc,0CAAE,sBAAsB;oBAC3C,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,UAAU,EAC5E;oBACE,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,iBAAiB,GAAG,IAAI,CAAC;iBACvE;gBACD,MAAM;aACT;YAED,OAAO,CAAC,CAAC;gBACL,IAAI,IAAI,CAAC,iBAAiB,EAAE,EAAE;oBAC1B,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;wBACnB,OAAO,IAAI,CAAC;qBACf;iBACJ;gBAED,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,yBAAgB,EAAE;oBACtC,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,yBAAgB,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,yBAAgB,EAAE;wBAC5E,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAK,CAAC,MAAM,8BAAqB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;wBAC/F,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;wBACpB,OAAO,IAAI,CAAC;qBACf;oBACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAK,CAAC,MAAM,yBAAgB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;oBAC1F,MAAM;iBACT;gBAED,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE;oBACxB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE;wBACtB,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;qBAChC;iBACJ;gBACD,OAAO,IAAI,CAAC;aACf;SACJ;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,aAAa;QACjB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC;QAC3D,IAAI,UAAU,GAAG,CAAC,EAAE;YAChB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;SAC7E;QAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC5C,CAAC;IAEO,cAAc,CAAC,MAAc,EAAE,WAAwB;QAC3D,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC,IAAI,WAAW,gCAAwB,EAAE;YAC/D,4CAA4C;YAC5C,0EAA0E;YAC1E,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,8BAAsB,EAAE;gBAC/F,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,6BAAY,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;aACvG;SACJ;QACD,IAAI,WAAW,uCAA+B,EAAE;YAC5C,IAAI,CAAC,QAAQ,EAAE,CAAC;SACnB;aAAM,IAAI,WAAW,+CAAuC,EAAE;YAC3D,IAAI,CAAC,UAAU,EAAE,CAAC;SACrB;aAAM;YACH,IAAI,CAAC,QAAQ,EAAE,CAAC;SACnB;QACD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACzB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,4BAA4B,EAAE,CAAC;IACxC,CAAC;IAEO,4BAA4B;QAChC,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,cAAc,GAAG,KAAK,CAAC;QAE3B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;QAEtC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE;YAC9B,QAAQ,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE;gBAC1B;oBACI,UAAU,EAAE,CAAC;oBACb,UAAU,EAAE,CAAC;oBACb,cAAc,GAAG,IAAI,CAAC;oBACtB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;oBACpB,MAAM;gBAEV;oBACI,mDAAmD;oBACnD,yBAAyB;oBACzB,UAAU,EAAE,CAAC;oBACb,UAAU,IAAI,cAAc,GAAG,CAAC,UAAU,GAAG,cAAc,CAAC,CAAC;oBAC7D,YAAY,GAAG,IAAI,CAAC;oBACpB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;oBACpB,MAAM;gBAEV;oBACI,UAAU,GAAG,CAAC,CAAC;oBACf,UAAU,GAAG,CAAC,CAAC;oBACf,YAAY,GAAG,KAAK,CAAC;oBACrB,cAAc,GAAG,KAAK,CAAC;oBACvB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;oBACpB,MAAM;gBAEV;oBACI,gDAAgD;oBAChD,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;oBACnF,OAAO;gBAEX,wBAAe;gBACf,4BAAmB;gBACnB;oBACI,+CAA+C;oBAC/C,OAAO;aACd;SACJ;IACL,CAAC;IAED,oEAAoE;IACpE,wEAAwE;IACxE,uDAAuD;IAC/C,UAAU,CACd,WAAmB,EACnB,UAAkB,EAClB,UAAkB,EAClB,cAAuB,EACvB,YAAqB;QAErB,0DAA0D;QAC1D,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,EAAE;YACtB,OAAO;SACV;QAED,+CAA+C;QAC/C,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;YAClC,IAAI,UAAU,GAAG,CAAC,EAAE;gBAChB,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,YAAY,EAAE;oBACd,IAAI,CAAC,eAAe,EAAE,CAAC;iBAC1B;gBACD,IAAI,CAAC,kBAAkB,IAAI,UAAU,CAAC;gBAEtC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;oBACrB,UAAU;oBACV,UAAU;oBACV,cAAc;oBACd,YAAY;iBACf,CAAC,CAAC;gBACH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,4BAAW,CAAC,MAAM,CAAC,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;aAC1G;SACJ;aAAM;YACH,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACxE,IAAI,WAAW,CAAC,UAAU,GAAG,UAAU,EAAE;gBACrC,wEAAwE;gBACxE,qEAAqE;gBACrE,0EAA0E;gBAC1E,qCAAqC;gBACrC,MAAM,iBAAiB,GACnB,CAAC,CAAC,WAAW,CAAC,cAAc,IAAI,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,IAAI,cAAc,CAAC,CAAC;oBAC9F,WAAW,CAAC,UAAU,IAAI,UAAU,CAAC;gBAEzC,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,YAAY,EAAE;oBACd,IAAI,CAAC,eAAe,EAAE,CAAC;iBAC1B;gBACD,IAAI,CAAC,kBAAkB,IAAI,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC;gBAEvG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;oBACrB,UAAU;oBACV,UAAU;oBACV,cAAc;oBACd,YAAY;iBACf,CAAC,CAAC;gBAEH,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,4BAAW,CAAC,MAAM,CAAC,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAClG,CAAC;aACL;iBAAM,IAAI,WAAW,CAAC,UAAU,KAAK,UAAU,EAAE;gBAC9C,wEAAwE;gBACxE,qEAAqE;gBACrE,0EAA0E;gBAC1E,qCAAqC;gBACrC,IAAI,CAAC,WAAW,CAAC,cAAc,IAAI,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE;oBAC9F,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,4BAAW,CAAC,MAAM,CAAC,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CACrF,CAAC;iBACL;aACJ;iBAAM;gBACH,wEAAwE;gBACxE,qEAAqE;gBACrE,0EAA0E;gBAC1E,qCAAqC;gBACrC,IAAI,iBAAiB,GACjB,CAAC,WAAW,CAAC,cAAc,IAAI,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,IAAI,cAAc,CAAC,CAAC;gBAEjG,oEAAoE;gBACpE,kEAAkE;gBAClE,mEAAmE;gBACnE,6BAA6B;gBAC7B,MAAM,YAAY,GAAa,EAAE,CAAC;gBAClC,OACI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;oBAC9B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU,GAAG,UAAU,EAC7E;oBACE,YAAY,CAAC,IAAI,CACb,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;wBAC1B,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU;wBAChE,CAAC,CAAC,CAAC,CACV,CAAC;oBACF,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;iBAC7B;gBAED,YAAY,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,EAAE;oBACzC,MAAM,aAAa,GAAG,KAAK,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,KAAK,UAAU,CAAC;oBACrF,MAAM,kBAAkB,GAAG,KAAK,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC;oBACvF,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,4BAAW,CAAC,MAAM,CACd,IAAI,CAAC,GAAG,CAAC,QAAQ,EACjB,CAAC,EACD,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,IAAI,CAAC,YAAY,EAAE,CACtB,CACJ,CAAC;oBAEF,iBAAiB,GAAG,KAAK,CAAC;gBAC9B,CAAC,CAAC,CAAC;aACN;SACJ;IACL,CAAC;IAEO,cAAc;QAClB,MAAM,qBAAqB,GAAG,GAAG,EAAE;YAC/B,OAAO,IAAI,EAAE;gBACT,IAAI,IAAA,6BAAgB,EAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;oBACxC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;iBACvB;qBAAM,IAAI,IAAA,6BAAgB,EAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;oBAClE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;oBACpB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;iBACvB;qBAAM;oBACH,MAAM;iBACT;aACJ;QACL,CAAC,CAAC;QAEF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;QAChC,IAAI,IAAA,kCAAqB,EAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;YAC7C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACpB,qBAAqB,EAAE,CAAC;SAC3B;aAAM,IAAI,IAAA,kCAAqB,EAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YACvE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACpB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACpB,qBAAqB,EAAE,CAAC;SAC3B;QAED,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,EAAE;YAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACrE,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC3B,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,6BAAY,CAAC,MAAM,CACf,KAAK,EACL,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,EACzB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAE,EAC1B,IAAI,CAAC,YAAY,EAAE,CACtB,CACJ,CAAC;aACL;iBAAM;gBACH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,gCAAe,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;aAC3G;YACD,OAAO,IAAI,CAAC;SACf;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,iBAAiB;QACrB,IAAI,IAAA,sBAAS,EAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;YACjC,OAAO,IAAI,CAAC;SACf;QAED,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,yBAAgB,IAAI,IAAA,sBAAS,EAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YACtE,OAAO,IAAI,CAAC;SACf;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,UAAU;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;QAEhC,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,qBAAY,EAAE;YAClC,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,YAAY,GAAG,CAAC,CAAC;YAErB,2DAA2D;YAC3D,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,qBAAW,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,oBAAW,CAAC,IAAI,IAAA,kBAAK,EAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;gBAChG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACpB,YAAY,GAAG,CAAC,CAAC;gBACjB,OAAO,IAAA,kBAAK,EAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;oBAChC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;iBACvB;gBACD,KAAK,GAAG,EAAE,CAAC;aACd;YAED,8DAA8D;iBACzD,IACD,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,oBAAW,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,oBAAW,CAAC;gBAC9D,IAAA,qBAAQ,EAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EACjC;gBACE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACpB,YAAY,GAAG,CAAC,CAAC;gBACjB,OAAO,IAAA,qBAAQ,EAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;oBACnC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;iBACvB;gBACD,KAAK,GAAG,CAAC,CAAC;aACb;YAED,6DAA6D;iBACxD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,qBAAW,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,oBAAW,CAAC,IAAI,IAAA,oBAAO,EAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;gBACvG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACpB,YAAY,GAAG,CAAC,CAAC;gBACjB,OAAO,IAAA,oBAAO,EAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;oBAClC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;iBACvB;gBACD,KAAK,GAAG,CAAC,CAAC;aACb;YAED,IAAI,KAAK,GAAG,CAAC,EAAE;gBACX,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACpE,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC7C,IAAI,QAAQ,GAAoB,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,CAAC;gBAEvF,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;oBAClB,MAAM,WAAW,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;oBAC1C,IACI,CAAC,QAAQ,CAAC,QAAQ,CAAC;wBACnB,QAAQ,GAAG,MAAM,CAAC,gBAAgB;wBAClC,QAAQ,GAAG,MAAM,CAAC,gBAAgB,EACpC;wBACE,QAAQ,GAAG,WAAW,CAAC;qBAC1B;oBAED,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,4BAAW,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CACrF,CAAC;oBACF,OAAO,IAAI,CAAC;iBACf;aACJ;SACJ;QAED,IAAI,gBAAgB,GAAG,KAAK,CAAC;QAC7B,IAAI,oBAAoB,GAAG,KAAK,CAAC;QACjC,qBAAqB;QACrB,gEAAgE;QAChE,6BAA6B;QAC7B,sBAAsB;QACtB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,oBAAW,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,oBAAW,EAAE;YACpE,OAAO,IAAA,sBAAS,EAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBACpC,oBAAoB,GAAG,IAAI,CAAC;gBAC5B,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;aACvB;YACD,gBAAgB;gBACZ,IAAI,CAAC,GAAG,CAAC,WAAW,yBAAgB;oBACpC,IAAI,CAAC,GAAG,CAAC,WAAW,qBAAW;oBAC/B,IAAI,CAAC,GAAG,CAAC,WAAW,oBAAW,CAAC;SACvC;QAED,mBAAmB;QACnB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,qBAAY,EAAE;YAClC,oBAAoB,GAAG,IAAI,CAAC;YAC5B,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,qBAAY,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,6BAAoB,EAAE;gBACjF,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;aACvB;YACD,gBAAgB;gBACZ,IAAI,CAAC,GAAG,CAAC,WAAW,yBAAgB;oBACpC,IAAI,CAAC,GAAG,CAAC,WAAW,qBAAW;oBAC/B,IAAI,CAAC,GAAG,CAAC,WAAW,oBAAW;oBAC/B,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,mBAAU,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,mBAAU,CAAC,CAAC;SAC1E;QAED,IAAI,gBAAgB,EAAE;YAClB,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAClE,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC7C,IAAI,QAAQ,GAAoB,QAAQ,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;YAE5D,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;gBAClB,IAAI,WAAW,GAAG,KAAK,CAAC;gBAExB,MAAM,WAAW,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;gBAC1C,IACI,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBACnB,WAAW,GAAG,MAAM,CAAC,gBAAgB;oBACrC,WAAW,GAAG,MAAM,CAAC,gBAAgB,EACvC;oBACE,QAAQ,GAAG,WAAW,CAAC;iBAC1B;gBAED,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,qBAAW,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,oBAAW,EAAE;oBACpE,WAAW,GAAG,IAAI,CAAC;oBACnB,IAAI,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oBAClD,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;iBACvB;gBAED,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,4BAAW,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAC3F,CAAC;gBACF,OAAO,IAAI,CAAC;aACf;SACJ;QAED,qEAAqE;QACrE,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC1B,IACI,oBAAoB;YACpB,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,yBAAgB,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,oBAAW,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,oBAAW,CAAC,EACxG;YACE,IAAI,IAAI,CAAC,2BAA2B,EAAE,EAAE;gBACpC,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAClE,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;gBAC/B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;oBACf,IAAI,WAAW,GAAG,KAAK,CAAC;oBACxB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,qBAAW,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,oBAAW,EAAE;wBACpE,WAAW,GAAG,IAAI,CAAC;wBACnB,IAAI,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;wBAClD,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;qBACvB;oBACD,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,4BAAW,CAAC,MAAM,CACd,KAAK,EACL,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,EACzB,KAAK,EACL,KAAK,EACL,WAAW,EACX,IAAI,CAAC,YAAY,EAAE,CACtB,CACJ,CAAC;oBACF,OAAO,IAAI,CAAC;iBACf;aACJ;SACJ;QAED,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC1B,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,YAAY;;QAChB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;QACnC,IAAI,YAA0B,CAAC;QAE/B,QAAQ,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE;YAC1B;gBACI,MAAM,GAAG,QAAQ,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,+BAAuB,CAAC,yBAAiB,CAAC;gBACvE,MAAM;YAEV;gBACI,MAAM,GAAG,QAAQ,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,sCAA8B,CAAC,gCAAwB,CAAC;gBACrF,MAAM;YAEV;gBACI,MAAM,GAAG,QAAQ,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,qCAA6B,CAAC,+BAAuB,CAAC;gBACnF,MAAM;YAEV;gBACI,MAAM,GAAG,QAAQ,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,sCAA8B,CAAC,gCAAwB,CAAC;gBACrF,MAAM;YAEV;gBACI,IACI,CAAA,MAAA,IAAI,CAAC,cAAc,0CAAE,sBAAsB;oBAC3C,CAAA,MAAA,IAAI,CAAC,cAAc,0CAAE,sBAAsB,CAAC,UAAU,MAAK,IAAI,CAAC,WAAW;oBAC3E,CAAC,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,iBAAiB;oBAC7D,QAAQ,wBAAe,EACzB;oBACE,MAAM,GAAG,CAAC,CAAC;oBACX,YAAY,8BAAsB,CAAC;oBACnC,MAAM;iBACT;gBAED,MAAM,GAAG,QAAQ,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,8BAAqB,CAAC,4BAAoB,CAAC;gBACxE,MAAM;YAEV;gBACI,IAAI,QAAQ,wBAAe,EAAE;oBACzB,IAAI,IAAI,CAAC,cAAc,EAAE;wBACrB,0DAA0D;wBAC1D,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,sBAAK,CAAC,MAAM,qCAA4B,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CACrF,CAAC;wBACF,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;wBACpB,OAAO,IAAI,CAAC;qBACf;oBAED,OAAO,KAAK,CAAC;iBAChB;gBACD,MAAM,GAAG,CAAC,CAAC;gBACX,YAAY,kCAAyB,CAAC;gBACtC,MAAM;YAEV;gBACI,MAAM,GAAG,QAAQ,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,gCAAuB,CAAC,0BAAiB,CAAC;gBACvE,MAAM;YAEV;gBACI,MAAM,GAAG,CAAC,CAAC;gBACX,YAAY,qCAA6B,CAAC;gBAC1C,MAAM;YAEV;gBACI,IAAI,QAAQ,0BAAiB,EAAE;oBAC3B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAK,CAAC,MAAM,2BAAkB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;oBAC5F,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;oBACpB,OAAO,IAAI,CAAC;iBACf;gBAED,MAAM,GAAG,QAAQ,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,qCAA4B,CAAC,+BAAsB,CAAC;gBACjF,MAAM;YAEV;gBACI,IAAI,QAAQ,2BAAkB,EAAE;oBAC5B,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACtD,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,kCAAyB,CAAC,4BAAmB,CAAC;iBAC9E;qBAAM;oBACH,MAAM,GAAG,QAAQ,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACzC,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,qCAA4B,CAAC,+BAAsB,CAAC;iBACpF;gBACD,MAAM;YAEV;gBACI,IAAI,QAAQ,wBAAe,EAAE;oBACzB,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACtD,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,wCAA+B,CAAC,kCAAyB,CAAC;iBAC1F;qBAAM;oBACH,MAAM,GAAG,QAAQ,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACzC,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,mCAA0B,CAAC,6BAAoB,CAAC;iBAChF;gBACD,MAAM;YAEV;gBACI,IAAI,QAAQ,uBAAc,EAAE;oBACxB,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACtD,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,sCAA6B,CAAC,gCAAuB,CAAC;iBACtF;qBAAM,IAAI,QAAQ,0BAAiB,EAAE;oBAClC,MAAM,GAAG,CAAC,CAAC;oBACX,YAAY,0CAAiC,CAAC;iBACjD;qBAAM;oBACH,MAAM,GAAG,QAAQ,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACzC,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,uCAA8B,CAAC,+BAAsB,CAAC;iBACtF;gBACD,MAAM;YAEV;gBACI,IAAI,QAAQ,0BAAiB,EAAE;oBAC3B,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACtD,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,uCAA8B,CAAC,iCAAwB,CAAC;iBACxF;qBAAM;oBACH,MAAM,GAAG,QAAQ,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACzC,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,0CAAiC,CAAC,kCAAyB,CAAC;iBAC5F;gBACD,MAAM;YAEV;gBACI,MAAM,GAAG,QAAQ,wBAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,YAAY,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,2CAAkC,CAAC,qCAA4B,CAAC;gBAC7F,MAAM;YAEV;gBACI,OAAO,KAAK,CAAC;SACpB;QACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,8BAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QACtG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACzB,OAAO,MAAM,GAAG,CAAC,CAAC;IACtB,CAAC;IAEO,cAAc;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;QAChC,OAAO,IAAI,EAAE;YACT,IACI,IAAI,CAAC,GAAG,CAAC,WAAW,2BAAkB;gBACtC,IAAI,CAAC,GAAG,CAAC,WAAW,iCAAwB;gBAC5C,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE;gBACzB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,EAC1B;gBACE,MAAM;aACT;YAED,IAAI,IAAA,4BAAe,EAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBACvC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACpB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;aACvB;iBAAM;gBACH,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;aACvB;SACJ;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC;QACzC,IAAI,MAAM,GAAG,CAAC,EAAE;YACZ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAK,CAAC,MAAM,4BAAoB,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YACvF,OAAO,IAAI,CAAC;SACf;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,YAAY;QAChB,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;QACpC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,OAAO,YAAY,CAAC;IACxB,CAAC;IAEO,qBAAqB;QACzB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;YACpC,OAAO,SAAS,CAAC;SACpB;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9F,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,IAAA,6BAAY,EAAC,SAAS,CAAC,EAAE;YACrD,OAAO,SAAS,CAAC;SACpB;QAED,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE;YAC5C,0BAA0B;YAC1B,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,MAAM,CAAC;SACjB;QAED,OAAO,MAAM,CAAC;QAEd,SAAS,WAAW,CAAC,EAAU;YAC3B,OAAO,EAAE,0BAAiB,IAAI,EAAE,kCAAyB,CAAC;QAC9D,CAAC;IACL,CAAC;IAEO,oBAAoB,CAAC,IAAiB;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC;QAEpC,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,GAAG;YACC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;YAErB,IAAI,IAAI,qCAA6B,IAAI,IAAI,2CAAmC,EAAE;gBAC9E,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACzC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,CAAC;gBAElE,0BAA0B;gBAC1B,mBAAmB;gBACnB,wBAAwB;gBACxB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;oBACxB,MAAM;iBACT;aACJ;YAED,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACpB,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC;SACjC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE;QAEpC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,CAAC;QAElE,MAAM,OAAO,GAAG,wBAAO,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAC3D,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAEO,cAAc;;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QAErB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,wBAAO,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAErD,MAAM,oBAAoB,GAAG,KAAK,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;QAC/F,IAAI,oBAAoB,EAAE;YACtB,MAAM,YAAY,GAAG,KAAK,GAAG,CAAC,MAAA,oBAAoB,CAAC,KAAK,mCAAI,CAAC,CAAC,CAAC;YAC/D,MAAM,SAAS,GAAc;gBACzB,KAAK,EAAE,YAAY,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,MAAM;gBACpD,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,MAAM;aAC1E,CAAC;YACF,MAAM,aAAa,GAAkB;gBACjC,KAAK,EAAE,SAAS;gBAChB,SAAS,EAAE,IAAI,CAAC,0BAA0B,CAAC,YAAY,EAAE,oBAAoB,CAAC;aACjF,CAAC;YAEF,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,8BAAsB,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,6BAAqB,CAAC,GAAG,CAAC,EAAE;gBACrG,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;aACvC;iBAAM;gBACH,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;aACrE;SACJ;QAED,MAAM,uBAAuB,GAAG,KAAK,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;QACrG,IAAI,uBAAuB,EAAE;YACzB,MAAM,YAAY,GAAG,KAAK,GAAG,CAAC,MAAA,uBAAuB,CAAC,KAAK,mCAAI,CAAC,CAAC,CAAC;YAClE,MAAM,SAAS,GAAc;gBACzB,KAAK,EAAE,YAAY,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC,MAAM;gBACvD,MAAM,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC,MAAM;aAChF,CAAC;YACF,MAAM,aAAa,GAAkB;gBACjC,KAAK,EAAE,SAAS;gBAChB,SAAS,EAAE,IAAI,CAAC,0BAA0B,CAAC,YAAY,EAAE,uBAAuB,CAAC;aACpF,CAAC;YACF,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;SACxE;QAED,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED,2EAA2E;IACnE,0BAA0B,CAAC,KAAa,EAAE,KAAuB;QACrE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;YAC5C,OAAO,SAAS,CAAC;SACpB;QAED,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,YAAY,GAAwB,EAAE,CAAC;QAC7C,IAAI,aAAa,GAAG,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEtD,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE;YACjC,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;YACzC,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;YACtD,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,EAAE,CAAC;YAE1C,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;gBACvB,YAAY,CAAC,IAAI,CAAC;oBACd,KAAK,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE;oBAC1D,IAAI,EAAE,UAAU;iBACnB,CAAC,CAAC;aACN;YAED,aAAa,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;SAC5C;QAED,OAAO,YAAY,CAAC;IACxB,CAAC;IAEO,YAAY,CAAC,OAAgB;QACjC,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAChC;aAAM;YACH,IAAI,CAAC,SAAS,GAAG,CAAC,OAAO,CAAC,CAAC;SAC9B;IACL,CAAC;IAEO,sBAAsB;QAC1B,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,8BAAqB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,8BAAqB,EAAE;YACxF,2BAA2B;YAC3B,OAAO,CAAC,CAAC;SACZ;QAED,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,8BAAqB,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,8BAAqB,EAAE;YAClF,QAAQ,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE;gBAC1B,sBAAY;gBACZ,qBAAY;gBACZ,sBAAY;gBACZ,qBAAY;gBACZ,qBAAY;gBACZ,qBAAY;gBACZ,sBAAY;gBACZ;oBACI,qCAAqC;oBACrC,OAAO,CAAC,CAAC;gBACb;oBACI,MAAM;aACb;SACJ;QAED,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,8BAAqB,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,8BAAqB,EAAE;YAC1F,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG;iBAClB,OAAO,EAAE;iBACT,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC;iBACnD,WAAW,EAAE,CAAC;YACnB,QAAQ,MAAM,EAAE;gBACZ,KAAK,IAAI,CAAC;gBACV,KAAK,IAAI,CAAC;gBACV,KAAK,IAAI,CAAC;gBACV,KAAK,IAAI,CAAC;gBACV,KAAK,IAAI,CAAC;gBACV,KAAK,IAAI;oBACL,OAAO,CAAC,CAAC;gBACb;oBACI,MAAM;aACb;SACJ;QACD,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IAEO,kBAAkB,CAAC,MAAc;QACrC,IAAI,KAAK,gCAAwB,CAAC;QAElC,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACpC,QAAQ,MAAM,CAAC,CAAC,CAAC,EAAE;gBACf,KAAK,GAAG;oBACJ,KAAK,qCAA4B,CAAC;oBAClC,MAAM;gBAEV,KAAK,GAAG;oBACJ,KAAK,mCAA0B,CAAC;oBAChC,MAAM;gBAEV,KAAK,GAAG;oBACJ,KAAK,gCAAwB,CAAC;oBAC9B,MAAM;gBAEV,KAAK,GAAG;oBACJ,KAAK,oCAA2B,CAAC;oBACjC,MAAM;aACb;SACJ;QAED,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,8BAAqB,EAAE;YAC3C,KAAK,wCAAgC,CAAC;YACtC,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,8BAAqB,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,8BAAqB,EAAE;gBACtF,KAAK,uCAA+B,CAAC;aACxC;SACJ;aAAM,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,8BAAqB,EAAE;YAClD,KAAK,wCAAgC,CAAC;YACtC,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,8BAAqB,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,8BAAqB,EAAE;gBACtF,KAAK,uCAA+B,CAAC;aACxC;SACJ;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,aAAa,CAAC,KAAuB,EAAE,kBAA0B;;QACrE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,kBAAkB,CAAC;QAErD,IAAI,KAAK,mCAA0B,EAAE;YACjC,IAAI,KAAK,sCAA8B,EAAE;gBACrC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;aACvB;iBAAM;gBACH,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;aACvB;YAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;YAE9B,MAAM,iBAAiB,GAAG,kCAAiB,CAAC,MAAM,CAC9C,KAAK,EACL,GAAG,GAAG,KAAK,EACX,KAAK,EACL,kBAAkB,EAClB,IAAI,CAAC,YAAY,EAAE,CACtB,CAAC;YAEF,0DAA0D;YAC1D,MAAM,cAAc,GAAmB;gBACnC,UAAU,EAAE,iBAAiB;gBAC7B,qBAAqB,EAAE,EAAE;aAC5B,CAAC;YAEF,IAAI,IAAI,CAAC,cAAc,EAAE;gBACrB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;aAChD;YACD,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;YAErC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;SACxC;aAAM;YACH,IAAI,KAAK,sCAA8B,EAAE;gBACrC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;aACvB;iBAAM;gBACH,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAEpB,IAAI,KAAK,uCAA+B,EAAE;oBACtC,IAAI,CAAC,iBAAiB,EAAE,CAAC;iBAC5B;qBAAM;oBACH,IAAI,CAAC,iBAAiB,EAAE,CAAC;iBAC5B;aACJ;YAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;YAChE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;YAE9B,uEAAuE;YACvE,kEAAkE;YAClE,oEAAoE;YACpE,uEAAuE;YACvE,IACI,CAAC,iBAAiB,CAAC,KAAK,4CAAgC,CAAC,KAAK,CAAC;iBAC/D,MAAA,IAAI,CAAC,cAAc,0CAAE,sBAAsB,CAAA,EAC7C;gBACE,IACI,CAAC,KAAK;oBACF,CAAC;yDAC2B;oDACJ;wDACG,CAAC,CAAC;oBACjC,CAAC,EACH;oBACE,MAAM,aAAa,GACf,0EAA0D,uCAA+B,CAAC;oBAC9F,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,KAAK,GAAG,aAAa,CAAC,EAAE;wBACpF,gFAAgF;wBAChF,+EAA+E;wBAC/E,oBAAoB;wBACpB,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC;wBAC1B,OAAO,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE;4BACzD,IAAI,CAAC,cAAc,CAAC,sBAAsB;gCACtC,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,GAAG,EAAE,CAAC;yBACvD;wBACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,sBAAuB,CAAC,UAAU,GAAG,CAAC,CAAC;wBAC9E,IAAI,CAAC,cAAc,CAAC,sBAAsB,GAAG,SAAS,CAAC;wBACvD,OAAO;qBACV;iBACJ;aACJ;YAED,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,4BAAW,CAAC,MAAM,CACd,KAAK,EACL,GAAG,GAAG,KAAK,EACX,iBAAiB,CAAC,KAAK,EACvB,iBAAiB,CAAC,YAAY,EAC9B,kBAAkB,EAClB,IAAI,CAAC,YAAY,EAAE,CACtB,CACJ,CAAC;SACL;IACL,CAAC;IAED,iEAAiE;IACzD,oBAAoB;;QACxB,MAAM,aAAa,GAAG,IAAI,CAAC,cAAe,CAAC;QAC3C,MAAM,iBAAiB,GAAG,CAAC,CAAC,CAAA,MAAA,IAAI,CAAC,cAAe,CAAC,sBAAsB,0CAAE,iBAAiB,CAAA,CAAC;QAC3F,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;QAChC,MAAM,KAAK,GAAG,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC;QAC7C,MAAM,iBAAiB,GAAG,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;QACnF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;QAE9B,MAAM,cAAc,GAAG,CAAC,iBAAiB,CAAC,KAAK,4CAAgC,CAAC,KAAK,CAAC,CAAC;QACvF,MAAM,wBAAwB,GAAG,CAAC,iBAAiB,CAAC,KAAK,mDAAyC,CAAC,KAAK,CAAC,CAAC;QAC1G,MAAM,sBAAsB,GAAG,CAAC,iBAAiB,CAAC,KAAK,iDAAuC,CAAC,KAAK,CAAC,CAAC;QACtG,MAAM,WAAW,GAAG,CAAC,cAAc,IAAI,CAAC,wBAAwB,IAAI,CAAC,sBAAsB,CAAC;QAE5F,IAAI,iBAAiB,GAAG,GAAG,GAAG,KAAK,CAAC;QACpC,IAAI,WAAW,EAAE;YACb,iBAAiB,IAAI,aAAa,CAAC,UAAU,CAAC,eAAe,CAAC;SACjE;QAED,IAAI,iBAAiB,GAAG,CAAC,IAAI,cAAc,EAAE;YACzC,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,mCAAkB,CAAC,MAAM,CACrB,KAAK,EACL,iBAAiB,EACjB,iBAAiB,CAAC,KAAK,EACvB,iBAAiB,CAAC,YAAY,CACjC,CACJ,CAAC;SACL;QAED,IAAI,WAAW,EAAE;YACb,IAAI,CAAC,OAAO,CAAC,IAAI,CACb,gCAAe,CAAC,MAAM,CAClB,KAAK,GAAG,iBAAiB,EACzB,aAAa,CAAC,UAAU,CAAC,eAAe,EACxC,iBAAiB,CAAC,KAAK,CAC1B,CACJ,CAAC;YAEF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC;SAClD;aAAM,IAAI,cAAc,EAAE;YACvB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC;SAClD;IACL,CAAC;IAEO,yBAAyB,CAAC,KAAuB,EAAE,iBAAiB,GAAG,KAAK;QAChF,MAAM,SAAS,GAAG,KAAK,uCAA+B,CAAC,CAAC,2BAAkB,CAAC,0BAAiB,CAAC;QAC7F,MAAM,YAAY,GAAG,CAAC,KAAK,sCAA8B,CAAC,KAAK,CAAC,CAAC;QACjE,MAAM,SAAS,GAAG,CAAC,KAAK,mCAA0B,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,sBAAsB,GAAG,KAAK,CAAC;QACnC,IAAI,iBAAiB,GAAa,EAAE,CAAC;QAErC,OAAO,IAAI,EAAE;YACT,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE;gBAC1B,6CAA6C;gBAC7C,KAAK,6CAAiC,CAAC;gBACvC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,EAAE,iBAAiB,CAAC,EAAE,KAAK,EAAE,CAAC;aAC3F;YAED,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,4BAAmB,EAAE;gBACzC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAE7C,8CAA8C;gBAC9C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAEpB,sEAAsE;gBACtE,IACI,CAAC,sBAAsB;oBACvB,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,oBAAW;oBACpC,IAAI,CAAC,GAAG,CAAC,QAAQ,6BAAmB,EACtC;oBACE,sBAAsB,GAAG,IAAI,CAAC;iBACjC;qBAAM;oBACH,mEAAmE;oBACnE,gEAAgE;oBAChE,MAAM,cAAc,GAChB,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,8BAAqB;wBAC9C,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,8BAAqB,CAAC;oBACnD,MAAM,gBAAgB,GAClB,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,iCAAwB;wBACjD,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,2BAAkB,CAAC;oBAChD,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,4BAAmB,CAAC;oBAExE,IAAI,CAAC,SAAS,IAAI,kBAAkB,IAAI,cAAc,IAAI,gBAAgB,EAAE;wBACxE,IAAI,gBAAgB,EAAE;4BAClB,IACI,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,iCAAwB;gCACjD,IAAI,CAAC,GAAG,CAAC,QAAQ,2BAAkB,EACrC;gCACE,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gCAC7C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;6BACvB;4BACD,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;4BAC7C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;4BACpB,IAAI,CAAC,aAAa,EAAE,CAAC;yBACxB;6BAAM;4BACH,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;4BAC7C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;yBACvB;qBACJ;iBACJ;aACJ;iBAAM,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,2BAAkB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,iCAAwB,EAAE;gBAC/F,IAAI,CAAC,YAAY,IAAI,CAAC,SAAS,EAAE;oBAC7B,kCAAkC;oBAClC,KAAK,6CAAiC,CAAC;oBACvC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,EAAE,iBAAiB,CAAC,EAAE,KAAK,EAAE,CAAC;iBAC3F;gBAED,yDAAyD;gBACzD,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,iCAAwB,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,2BAAkB,EAAE;oBACrF,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oBAC7C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;iBACvB;gBAED,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAC7C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACpB,IAAI,CAAC,aAAa,EAAE,CAAC;aACxB;iBAAM,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS,EAAE;gBAC5D,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACpB,MAAM;aACT;iBAAM,IACH,YAAY;gBACZ,IAAI,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS;gBAClC,IAAI,CAAC,GAAG,CAAC,QAAQ,KAAK,SAAS;gBAC/B,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,EACrC;gBACE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACpB,MAAM;aACT;iBAAM,IAAI,CAAC,sBAAsB,IAAI,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,6BAAmB,EAAE;gBACxF,IAAI,iBAAiB,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,6BAAmB,EAAE;oBAC3D,KAAK,oDAA0C,CAAC;oBAChD,MAAM;iBACT;qBAAM;oBACH,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oBAC7C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;oBACpB,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oBAC7C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;iBACvB;aACJ;iBAAM,IAAI,sBAAsB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,8BAAoB,EAAE;gBAC3E,sBAAsB,GAAG,KAAK,CAAC;gBAC/B,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAC7C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;aACvB;iBAAM,IAAI,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,8BAAoB,EAAE;gBAC9D,IAAI,iBAAiB,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,8BAAoB,EAAE;oBAC5D,KAAK,kDAAwC,CAAC;oBAC9C,MAAM;iBACT;qBAAM;oBACH,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oBAC7C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;oBACpB,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oBAC7C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;iBACvB;aACJ;iBAAM;gBACH,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAC7C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;aACvB;SACJ;QAED,wEAAwE;QACxE,uEAAuE;QACvE,sEAAsE;QACtE,2DAA2D;QAC3D,IAAI,iBAAiB,CAAC,MAAM,GAAG,4BAAoB,EAAE;YACjD,iBAAiB,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,4BAAoB,CAAC,CAAC;YACrE,KAAK,gDAAmC,CAAC;SAC5C;QAED,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,EAAE,iBAAiB,CAAC,EAAE,KAAK,EAAE,CAAC;IAC5F,CAAC;IAEO,2BAA2B;QAC/B,uDAAuD;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,EAAE;YAC3B,yBAAyB;YACzB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,qBAAW,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,oBAAW,EAAE;gBACpE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAEpB,sBAAsB;gBACtB,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;aACjD;SACJ;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC;IACrC,CAAC;IAEO,qBAAqB;QACzB,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,yBAAgB,EAAE;YACtC,kBAAkB;YAClB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;SACvB;QACD,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAEO,kBAAkB,CAAC,SAAkB;QACzC,IAAI,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,yBAAgB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,uBAAc,CAAC,EAAE;YAC3F,gBAAgB;YAChB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;SACvB;QACD,OAAO,IAAA,sBAAS,EAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;YACpC,oBAAoB;YACpB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;SACvB;IACL,CAAC;CACJ;AAr/CD,8BAq/CC"}
|
1
|
+
{"version":3,"file":"tokenizer.js","sourceRoot":"","sources":["../../../src/parser/tokenizer.ts"],"names":[],"mappings":"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"}
|
@@ -193,10 +193,10 @@ export declare namespace NewLineToken {
|
|
193
193
|
}
|
194
194
|
export interface KeywordToken extends Token {
|
195
195
|
readonly type: TokenType.Keyword;
|
196
|
-
readonly keywordType:
|
196
|
+
readonly keywordType: KeywordType;
|
197
197
|
}
|
198
198
|
export declare namespace KeywordToken {
|
199
|
-
function create(start: number, length: number, keywordType:
|
199
|
+
function create(start: number, length: number, keywordType: KeywordType, comments: Comment[] | undefined): KeywordToken;
|
200
200
|
}
|
201
201
|
export interface StringToken extends Token {
|
202
202
|
readonly type: TokenType.String;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"tokenizerTypes.js","sourceRoot":"","sources":["../../../src/parser/tokenizerTypes.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"tokenizerTypes.js","sourceRoot":"","sources":["../../../src/parser/tokenizerTypes.ts"],"names":[],"mappings":"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"}
|
package/dist/pyright.js
CHANGED
@@ -60,6 +60,7 @@ const uri_1 = require("./common/uri/uri");
|
|
60
60
|
const uriUtils_1 = require("./common/uri/uriUtils");
|
61
61
|
const pyrightFileSystem_1 = require("./pyrightFileSystem");
|
62
62
|
const toolName = 'pyright';
|
63
|
+
// These values are publicly documented. Do not change them.
|
63
64
|
var ExitStatus;
|
64
65
|
(function (ExitStatus) {
|
65
66
|
ExitStatus[ExitStatus["NoErrors"] = 0] = "NoErrors";
|
@@ -409,6 +410,7 @@ function accumulateReportDiagnosticStats(diag, report) {
|
|
409
410
|
}
|
410
411
|
}
|
411
412
|
function buildTypeCompletenessReport(packageName, completenessReport, minSeverityLevel) {
|
413
|
+
var _a, _b, _c;
|
412
414
|
const report = {
|
413
415
|
version: getVersionString(),
|
414
416
|
time: Date.now().toString(),
|
@@ -423,7 +425,7 @@ function buildTypeCompletenessReport(packageName, completenessReport, minSeverit
|
|
423
425
|
};
|
424
426
|
// Add the general diagnostics.
|
425
427
|
completenessReport.generalDiagnostics.forEach((diag) => {
|
426
|
-
const jsonDiag = convertDiagnosticToJson(uri_1.Uri.empty(), diag);
|
428
|
+
const jsonDiag = convertDiagnosticToJson(uri_1.Uri.empty().getFilePath(), diag);
|
427
429
|
if (isDiagnosticIncluded(jsonDiag.severity, minSeverityLevel)) {
|
428
430
|
report.generalDiagnostics.push(jsonDiag);
|
429
431
|
}
|
@@ -431,11 +433,11 @@ function buildTypeCompletenessReport(packageName, completenessReport, minSeverit
|
|
431
433
|
});
|
432
434
|
report.typeCompleteness = {
|
433
435
|
packageName,
|
434
|
-
packageRootDirectory: completenessReport.packageRootDirectoryUri,
|
436
|
+
packageRootDirectory: (_a = completenessReport.packageRootDirectoryUri) === null || _a === void 0 ? void 0 : _a.getFilePath(),
|
435
437
|
moduleName: completenessReport.moduleName,
|
436
|
-
moduleRootDirectory: completenessReport.moduleRootDirectoryUri,
|
438
|
+
moduleRootDirectory: (_b = completenessReport.moduleRootDirectoryUri) === null || _b === void 0 ? void 0 : _b.getFilePath(),
|
437
439
|
ignoreUnknownTypesFromImports: completenessReport.ignoreExternal,
|
438
|
-
pyTypedPath: completenessReport.pyTypedPathUri,
|
440
|
+
pyTypedPath: (_c = completenessReport.pyTypedPathUri) === null || _c === void 0 ? void 0 : _c.getFilePath(),
|
439
441
|
exportedSymbolCounts: {
|
440
442
|
withKnownType: 0,
|
441
443
|
withAmbiguousType: 0,
|
@@ -465,7 +467,7 @@ function buildTypeCompletenessReport(packageName, completenessReport, minSeverit
|
|
465
467
|
const diagnostics = [];
|
466
468
|
// Convert and filter the diagnostics.
|
467
469
|
symbol.diagnostics.forEach((diag) => {
|
468
|
-
const jsonDiag = convertDiagnosticToJson(diag.uri, diag.diagnostic);
|
470
|
+
const jsonDiag = convertDiagnosticToJson(diag.uri.getFilePath(), diag.diagnostic);
|
469
471
|
if (isDiagnosticIncluded(jsonDiag.severity, minSeverityLevel)) {
|
470
472
|
diagnostics.push(jsonDiag);
|
471
473
|
}
|
@@ -658,7 +660,7 @@ function reportDiagnosticsAsJson(fileDiagnostics, minSeverityLevel, filesInProgr
|
|
658
660
|
if (diag.category === 0 /* DiagnosticCategory.Error */ ||
|
659
661
|
diag.category === 1 /* DiagnosticCategory.Warning */ ||
|
660
662
|
diag.category === 2 /* DiagnosticCategory.Information */) {
|
661
|
-
const jsonDiag = convertDiagnosticToJson(fileDiag.fileUri, diag);
|
663
|
+
const jsonDiag = convertDiagnosticToJson(fileDiag.fileUri.getFilePath(), diag);
|
662
664
|
if (isDiagnosticIncluded(jsonDiag.severity, minSeverityLevel)) {
|
663
665
|
report.generalDiagnostics.push(jsonDiag);
|
664
666
|
}
|
@@ -698,9 +700,9 @@ function convertDiagnosticCategoryToSeverity(category) {
|
|
698
700
|
(0, debug_1.fail)('Unexpected diagnostic category');
|
699
701
|
}
|
700
702
|
}
|
701
|
-
function convertDiagnosticToJson(
|
703
|
+
function convertDiagnosticToJson(filePath, diag) {
|
702
704
|
return {
|
703
|
-
file:
|
705
|
+
file: filePath,
|
704
706
|
severity: convertDiagnosticCategoryToSeverity(diag.category),
|
705
707
|
message: diag.message,
|
706
708
|
range: (0, textRange_1.isEmptyRange)(diag.range) ? undefined : diag.range,
|
@@ -722,7 +724,7 @@ function reportDiagnosticsAsText(fileDiagnostics, minSeverityLevel) {
|
|
722
724
|
if (fileErrorsAndWarnings.length > 0) {
|
723
725
|
console.info(`${fileDiagnostics.fileUri.toUserVisibleString()}`);
|
724
726
|
fileErrorsAndWarnings.forEach((diag) => {
|
725
|
-
const jsonDiag = convertDiagnosticToJson(fileDiagnostics.fileUri, diag);
|
727
|
+
const jsonDiag = convertDiagnosticToJson(fileDiagnostics.fileUri.getFilePath(), diag);
|
726
728
|
logDiagnosticToConsole(jsonDiag);
|
727
729
|
if (diag.category === 0 /* DiagnosticCategory.Error */) {
|
728
730
|
errorCount++;
|
package/dist/pyright.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pyright.js","sourceRoot":"","sources":["../../src/pyright.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"pyright.js","sourceRoot":"","sources":["../../src/pyright.ts"],"names":[],"mappings":"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"}
|
@@ -112,8 +112,8 @@ class PyrightFileSystem extends readonlyAugmentedFileSystem_1.ReadOnlyAugmentedF
|
|
112
112
|
// Merge partial stub packages to the library.
|
113
113
|
partialStubs = partialStubs !== null && partialStubs !== void 0 ? partialStubs : this._getRelativePathPartialStubs(partialStubPackagePath);
|
114
114
|
for (const partialStub of partialStubs) {
|
115
|
-
const originalPyiFile = partialStubPackagePath.
|
116
|
-
const mappedPyiFile = packagePath.
|
115
|
+
const originalPyiFile = partialStubPackagePath.resolvePaths(partialStub);
|
116
|
+
const mappedPyiFile = packagePath.resolvePaths(partialStub);
|
117
117
|
this.recordMovedEntry(mappedPyiFile, originalPyiFile, packagePath);
|
118
118
|
}
|
119
119
|
}
|
package/dist/server.js
CHANGED
@@ -63,6 +63,7 @@ class PyrightServer extends languageServerBase_1.LanguageServerBase {
|
|
63
63
|
openFilesOnly: true,
|
64
64
|
useLibraryCodeForTypes: true,
|
65
65
|
disableLanguageServices: false,
|
66
|
+
disableTaggedHints: false,
|
66
67
|
disableOrganizeImports: false,
|
67
68
|
typeCheckingMode: 'standard',
|
68
69
|
diagnosticSeverityOverrides: {},
|
@@ -75,11 +76,11 @@ class PyrightServer extends languageServerBase_1.LanguageServerBase {
|
|
75
76
|
if (pythonSection) {
|
76
77
|
const pythonPath = pythonSection.pythonPath;
|
77
78
|
if (pythonPath && (0, core_1.isString)(pythonPath) && !(0, pythonPathUtils_1.isPythonBinary)(pythonPath)) {
|
78
|
-
serverSettings.pythonPath = workspace.rootUri.
|
79
|
+
serverSettings.pythonPath = workspace.rootUri.resolvePaths((0, envVarUtils_1.expandPathVariables)(workspace.rootUri, pythonPath));
|
79
80
|
}
|
80
81
|
const venvPath = pythonSection.venvPath;
|
81
82
|
if (venvPath && (0, core_1.isString)(venvPath)) {
|
82
|
-
serverSettings.venvPath = workspace.rootUri.
|
83
|
+
serverSettings.venvPath = workspace.rootUri.resolvePaths((0, envVarUtils_1.expandPathVariables)(workspace.rootUri, venvPath));
|
83
84
|
}
|
84
85
|
}
|
85
86
|
const pythonAnalysisSection = await this.getConfiguration(workspace.rootUri, 'python.analysis');
|
@@ -88,12 +89,12 @@ class PyrightServer extends languageServerBase_1.LanguageServerBase {
|
|
88
89
|
if (typeshedPaths && Array.isArray(typeshedPaths) && typeshedPaths.length > 0) {
|
89
90
|
const typeshedPath = typeshedPaths[0];
|
90
91
|
if (typeshedPath && (0, core_1.isString)(typeshedPath)) {
|
91
|
-
serverSettings.typeshedPath = workspace.rootUri.
|
92
|
+
serverSettings.typeshedPath = workspace.rootUri.resolvePaths((0, envVarUtils_1.expandPathVariables)(workspace.rootUri, typeshedPath));
|
92
93
|
}
|
93
94
|
}
|
94
95
|
const stubPath = pythonAnalysisSection.stubPath;
|
95
96
|
if (stubPath && (0, core_1.isString)(stubPath)) {
|
96
|
-
serverSettings.stubPath = workspace.rootUri.
|
97
|
+
serverSettings.stubPath = workspace.rootUri.resolvePaths((0, envVarUtils_1.expandPathVariables)(workspace.rootUri, stubPath));
|
97
98
|
}
|
98
99
|
const diagnosticSeverityOverrides = pythonAnalysisSection.diagnosticSeverityOverrides;
|
99
100
|
if (diagnosticSeverityOverrides) {
|
@@ -120,7 +121,7 @@ class PyrightServer extends languageServerBase_1.LanguageServerBase {
|
|
120
121
|
if (extraPaths && Array.isArray(extraPaths) && extraPaths.length > 0) {
|
121
122
|
serverSettings.extraPaths = extraPaths
|
122
123
|
.filter((p) => p && (0, core_1.isString)(p))
|
123
|
-
.map((p) => workspace.rootUri.
|
124
|
+
.map((p) => workspace.rootUri.resolvePaths((0, envVarUtils_1.expandPathVariables)(workspace.rootUri, p)));
|
124
125
|
}
|
125
126
|
serverSettings.includeFileSpecs = this._getStringValues(pythonAnalysisSection.include);
|
126
127
|
serverSettings.excludeFileSpecs = this._getStringValues(pythonAnalysisSection.exclude);
|
@@ -151,6 +152,7 @@ class PyrightServer extends languageServerBase_1.LanguageServerBase {
|
|
151
152
|
serverSettings.useLibraryCodeForTypes = !!pyrightSection.useLibraryCodeForTypes;
|
152
153
|
}
|
153
154
|
serverSettings.disableLanguageServices = !!pyrightSection.disableLanguageServices;
|
155
|
+
serverSettings.disableTaggedHints = !!pyrightSection.disableTaggedHints;
|
154
156
|
serverSettings.disableOrganizeImports = !!pyrightSection.disableOrganizeImports;
|
155
157
|
const typeCheckingMode = pyrightSection.typeCheckingMode;
|
156
158
|
if (typeCheckingMode && (0, core_1.isString)(typeCheckingMode)) {
|