yaml-language-server 1.19.1-fce910a.0 → 1.20.1-82d8808.0
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/CHANGELOG.md +27 -0
- package/Dockerfile +2 -2
- package/README.md +3 -3
- package/eslint-result.sarif +147 -172
- package/l10n/bundle.l10n.de.json +56 -0
- package/l10n/bundle.l10n.fr.json +56 -0
- package/l10n/bundle.l10n.ja.json +56 -0
- package/l10n/bundle.l10n.json +56 -0
- package/l10n/bundle.l10n.ko.json +56 -0
- package/l10n/bundle.l10n.zh-cn.json +56 -0
- package/l10n/bundle.l10n.zh-tw.json +56 -0
- package/lib/esm/languageservice/jsonASTTypes.d.ts +2 -2
- package/lib/esm/languageservice/jsonSchema.d.ts +1 -1
- package/lib/esm/languageservice/parser/ast-converter.d.ts +7 -2
- package/lib/esm/languageservice/parser/ast-converter.js +20 -12
- package/lib/esm/languageservice/parser/ast-converter.js.map +1 -1
- package/lib/esm/languageservice/parser/jsonParser07.js +38 -45
- package/lib/esm/languageservice/parser/jsonParser07.js.map +1 -1
- package/lib/esm/languageservice/parser/yamlParser07.d.ts +1 -1
- package/lib/esm/languageservice/services/validation/unused-anchors.js +3 -2
- package/lib/esm/languageservice/services/validation/unused-anchors.js.map +1 -1
- package/lib/esm/languageservice/services/validation/yaml-style.js +3 -2
- package/lib/esm/languageservice/services/validation/yaml-style.js.map +1 -1
- package/lib/esm/languageservice/services/yamlCodeActions.js +8 -7
- package/lib/esm/languageservice/services/yamlCodeActions.js.map +1 -1
- package/lib/esm/languageservice/services/yamlCompletion.js +40 -38
- package/lib/esm/languageservice/services/yamlCompletion.js.map +1 -1
- package/lib/esm/languageservice/services/yamlHover.js +11 -4
- package/lib/esm/languageservice/services/yamlHover.js.map +1 -1
- package/lib/esm/languageservice/services/yamlSchemaService.js +31 -8
- package/lib/esm/languageservice/services/yamlSchemaService.js.map +1 -1
- package/lib/esm/languageservice/yamlTypes.d.ts +1 -1
- package/lib/esm/requestTypes.d.ts +1 -1
- package/lib/esm/server.js +0 -3
- package/lib/esm/server.js.map +1 -1
- package/lib/esm/yamlServerInit.d.ts +2 -1
- package/lib/esm/yamlServerInit.js +24 -2
- package/lib/esm/yamlServerInit.js.map +1 -1
- package/lib/esm/yamlSettings.d.ts +1 -1
- package/lib/esm/yamlSettings.js.map +1 -1
- package/lib/umd/languageservice/jsonASTTypes.d.ts +2 -2
- package/lib/umd/languageservice/jsonSchema.d.ts +1 -1
- package/lib/umd/languageservice/parser/ast-converter.d.ts +7 -2
- package/lib/umd/languageservice/parser/ast-converter.js +21 -13
- package/lib/umd/languageservice/parser/ast-converter.js.map +1 -1
- package/lib/umd/languageservice/parser/jsonParser07.js +39 -46
- package/lib/umd/languageservice/parser/jsonParser07.js.map +1 -1
- package/lib/umd/languageservice/parser/yamlParser07.d.ts +1 -1
- package/lib/umd/languageservice/services/validation/unused-anchors.js +4 -3
- package/lib/umd/languageservice/services/validation/unused-anchors.js.map +1 -1
- package/lib/umd/languageservice/services/validation/yaml-style.js +4 -3
- package/lib/umd/languageservice/services/validation/yaml-style.js.map +1 -1
- package/lib/umd/languageservice/services/yamlCodeActions.js +9 -8
- package/lib/umd/languageservice/services/yamlCodeActions.js.map +1 -1
- package/lib/umd/languageservice/services/yamlCompletion.js +41 -39
- package/lib/umd/languageservice/services/yamlCompletion.js.map +1 -1
- package/lib/umd/languageservice/services/yamlHover.js +12 -5
- package/lib/umd/languageservice/services/yamlHover.js.map +1 -1
- package/lib/umd/languageservice/services/yamlSchemaService.js +32 -9
- package/lib/umd/languageservice/services/yamlSchemaService.js.map +1 -1
- package/lib/umd/languageservice/yamlTypes.d.ts +1 -1
- package/lib/umd/requestTypes.d.ts +1 -1
- package/lib/umd/server.js +1 -4
- package/lib/umd/server.js.map +1 -1
- package/lib/umd/yamlServerInit.d.ts +2 -1
- package/lib/umd/yamlServerInit.js +25 -3
- package/lib/umd/yamlServerInit.js.map +1 -1
- package/lib/umd/yamlSettings.d.ts +1 -1
- package/lib/umd/yamlSettings.js.map +1 -1
- package/out/server/src/languageservice/jsonASTTypes.d.ts +2 -2
- package/out/server/src/languageservice/jsonSchema.d.ts +1 -1
- package/out/server/src/languageservice/parser/ast-converter.d.ts +7 -2
- package/out/server/src/languageservice/parser/ast-converter.js +21 -13
- package/out/server/src/languageservice/parser/ast-converter.js.map +1 -1
- package/out/server/src/languageservice/parser/jsonParser07.js +38 -45
- package/out/server/src/languageservice/parser/jsonParser07.js.map +1 -1
- package/out/server/src/languageservice/parser/yamlParser07.d.ts +1 -1
- package/out/server/src/languageservice/services/validation/unused-anchors.js +3 -2
- package/out/server/src/languageservice/services/validation/unused-anchors.js.map +1 -1
- package/out/server/src/languageservice/services/validation/yaml-style.js +3 -2
- package/out/server/src/languageservice/services/validation/yaml-style.js.map +1 -1
- package/out/server/src/languageservice/services/yamlCodeActions.js +8 -7
- package/out/server/src/languageservice/services/yamlCodeActions.js.map +1 -1
- package/out/server/src/languageservice/services/yamlCompletion.js +40 -38
- package/out/server/src/languageservice/services/yamlCompletion.js.map +1 -1
- package/out/server/src/languageservice/services/yamlHover.js +11 -4
- package/out/server/src/languageservice/services/yamlHover.js.map +1 -1
- package/out/server/src/languageservice/services/yamlSchemaService.js +31 -8
- package/out/server/src/languageservice/services/yamlSchemaService.js.map +1 -1
- package/out/server/src/languageservice/yamlTypes.d.ts +1 -1
- package/out/server/src/requestTypes.d.ts +1 -1
- package/out/server/src/server.js +0 -3
- package/out/server/src/server.js.map +1 -1
- package/out/server/src/yamlServerInit.d.ts +2 -1
- package/out/server/src/yamlServerInit.js +24 -2
- package/out/server/src/yamlServerInit.js.map +1 -1
- package/out/server/src/yamlSettings.d.ts +1 -1
- package/out/server/src/yamlSettings.js.map +1 -1
- package/out/server/test/autoCompletion.test.js +146 -76
- package/out/server/test/autoCompletion.test.js.map +1 -1
- package/out/server/test/bundlel10n.test.d.ts +1 -0
- package/out/server/test/bundlel10n.test.js +72 -0
- package/out/server/test/bundlel10n.test.js.map +1 -0
- package/out/server/test/hover.test.js +103 -0
- package/out/server/test/hover.test.js.map +1 -1
- package/out/server/test/utils/testHelper.js +5 -0
- package/out/server/test/utils/testHelper.js.map +1 -1
- package/out/server/test/utils/verifyError.d.ts +1 -1
- package/out/server/test/utils/verifyError.js.map +1 -1
- package/out/server/test/yamlParser.test.js +61 -0
- package/out/server/test/yamlParser.test.js.map +1 -1
- package/out/server/test/yamlSelectionRanges.test.js +1 -1
- package/package.json +10 -10
|
@@ -9,42 +9,40 @@ exports.JSONDocument = exports.findNodeAtOffset = exports.contains = exports.get
|
|
|
9
9
|
const objects_1 = require("../utils/objects");
|
|
10
10
|
const schemaUtils_1 = require("../utils/schemaUtils");
|
|
11
11
|
const vscode_json_languageservice_1 = require("vscode-json-languageservice");
|
|
12
|
-
const
|
|
12
|
+
const l10n = require("@vscode/l10n");
|
|
13
13
|
const vscode_uri_1 = require("vscode-uri");
|
|
14
14
|
const vscode_languageserver_types_1 = require("vscode-languageserver-types");
|
|
15
15
|
const arrUtils_1 = require("../utils/arrUtils");
|
|
16
16
|
const strings_1 = require("../utils/strings");
|
|
17
17
|
const yamlSchemaService_1 = require("../services/yamlSchemaService");
|
|
18
18
|
const math_1 = require("../utils/math");
|
|
19
|
-
const localize = nls.loadMessageBundle();
|
|
20
|
-
const MSG_PROPERTY_NOT_ALLOWED = 'Property {0} is not allowed.';
|
|
21
19
|
exports.formats = {
|
|
22
20
|
'color-hex': {
|
|
23
|
-
errorMessage:
|
|
21
|
+
errorMessage: l10n.t('colorHexFormatWarning'),
|
|
24
22
|
pattern: /^#([0-9A-Fa-f]{3,4}|([0-9A-Fa-f]{2}){3,4})$/,
|
|
25
23
|
},
|
|
26
24
|
'date-time': {
|
|
27
|
-
errorMessage:
|
|
25
|
+
errorMessage: l10n.t('dateTimeFormatWarning'),
|
|
28
26
|
pattern: /^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i,
|
|
29
27
|
},
|
|
30
28
|
date: {
|
|
31
|
-
errorMessage:
|
|
29
|
+
errorMessage: l10n.t('dateFormatWarning'),
|
|
32
30
|
pattern: /^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$/i,
|
|
33
31
|
},
|
|
34
32
|
time: {
|
|
35
|
-
errorMessage:
|
|
33
|
+
errorMessage: l10n.t('timeFormatWarning'),
|
|
36
34
|
pattern: /^([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i,
|
|
37
35
|
},
|
|
38
36
|
email: {
|
|
39
|
-
errorMessage:
|
|
37
|
+
errorMessage: l10n.t('emailFormatWarning'),
|
|
40
38
|
pattern: /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,
|
|
41
39
|
},
|
|
42
40
|
ipv4: {
|
|
43
|
-
errorMessage:
|
|
41
|
+
errorMessage: l10n.t('ipv4FormatWarning'),
|
|
44
42
|
pattern: /^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)\.?\b){4}$/,
|
|
45
43
|
},
|
|
46
44
|
ipv6: {
|
|
47
|
-
errorMessage:
|
|
45
|
+
errorMessage: l10n.t('ipv6FormatWarning'),
|
|
48
46
|
pattern: /^([0-9a-f]|:){1,4}(:([0-9a-f]{0,4})*){1,7}$/i,
|
|
49
47
|
},
|
|
50
48
|
};
|
|
@@ -273,7 +271,7 @@ class ValidationResult {
|
|
|
273
271
|
this.enumValues = this.enumValues.concat(validationResult.enumValues);
|
|
274
272
|
for (const error of this.problems) {
|
|
275
273
|
if (error.code === vscode_json_languageservice_1.ErrorCode.EnumValueMismatch) {
|
|
276
|
-
error.message =
|
|
274
|
+
error.message = l10n.t('enumWarning', [...new Set(this.enumValues)]
|
|
277
275
|
.map((v) => {
|
|
278
276
|
return JSON.stringify(v);
|
|
279
277
|
})
|
|
@@ -536,8 +534,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
536
534
|
validationResult.problems.push({
|
|
537
535
|
location: { offset: node.offset, length: node.length },
|
|
538
536
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
539
|
-
message: schema.errorMessage ||
|
|
540
|
-
localize('typeArrayMismatchWarning', 'Incorrect type. Expected one of {0}.', schema.type.join(', ')),
|
|
537
|
+
message: schema.errorMessage || l10n.t('typeArrayMismatchWarning', schema.type.join(', ')),
|
|
541
538
|
source: getSchemaSource(schema, originalSchema),
|
|
542
539
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
543
540
|
});
|
|
@@ -572,7 +569,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
572
569
|
validationResult.problems.push({
|
|
573
570
|
location: { offset: node.offset, length: node.length },
|
|
574
571
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
575
|
-
message:
|
|
572
|
+
message: l10n.t('notSchemaWarning'),
|
|
576
573
|
source: getSchemaSource(schema, originalSchema),
|
|
577
574
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
578
575
|
});
|
|
@@ -621,7 +618,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
621
618
|
validationResult.problems.push({
|
|
622
619
|
location: { offset: node.offset, length: 1 },
|
|
623
620
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
624
|
-
message:
|
|
621
|
+
message: l10n.t('oneOfWarning'),
|
|
625
622
|
source: getSchemaSource(schema, originalSchema),
|
|
626
623
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
627
624
|
});
|
|
@@ -666,7 +663,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
666
663
|
subValidationResult.problems.push({
|
|
667
664
|
location: { offset: node.offset, length: node.length },
|
|
668
665
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
669
|
-
message:
|
|
666
|
+
message: l10n.t('ifFilePatternAssociation', filePatternAssociation, options.uri),
|
|
670
667
|
source: getSchemaSource(schema, originalSchema),
|
|
671
668
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
672
669
|
});
|
|
@@ -704,7 +701,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
704
701
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
705
702
|
code: vscode_json_languageservice_1.ErrorCode.EnumValueMismatch,
|
|
706
703
|
message: schema.errorMessage ||
|
|
707
|
-
|
|
704
|
+
l10n.t('enumWarning', schema.enum
|
|
708
705
|
.map((v) => {
|
|
709
706
|
return JSON.stringify(v);
|
|
710
707
|
})
|
|
@@ -753,7 +750,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
753
750
|
validationResult.problems.push({
|
|
754
751
|
location: { offset: node.offset, length: node.length },
|
|
755
752
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
756
|
-
message:
|
|
753
|
+
message: l10n.t('multipleOfWarning', schema.multipleOf),
|
|
757
754
|
source: getSchemaSource(schema, originalSchema),
|
|
758
755
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
759
756
|
});
|
|
@@ -779,7 +776,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
779
776
|
validationResult.problems.push({
|
|
780
777
|
location: { offset: node.offset, length: node.length },
|
|
781
778
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
782
|
-
message:
|
|
779
|
+
message: l10n.t('exclusiveMinimumWarning', exclusiveMinimum),
|
|
783
780
|
source: getSchemaSource(schema, originalSchema),
|
|
784
781
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
785
782
|
});
|
|
@@ -789,7 +786,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
789
786
|
validationResult.problems.push({
|
|
790
787
|
location: { offset: node.offset, length: node.length },
|
|
791
788
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
792
|
-
message:
|
|
789
|
+
message: l10n.t('exclusiveMaximumWarning', exclusiveMaximum),
|
|
793
790
|
source: getSchemaSource(schema, originalSchema),
|
|
794
791
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
795
792
|
});
|
|
@@ -799,7 +796,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
799
796
|
validationResult.problems.push({
|
|
800
797
|
location: { offset: node.offset, length: node.length },
|
|
801
798
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
802
|
-
message:
|
|
799
|
+
message: l10n.t('minimumWarning', minimum),
|
|
803
800
|
source: getSchemaSource(schema, originalSchema),
|
|
804
801
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
805
802
|
});
|
|
@@ -809,7 +806,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
809
806
|
validationResult.problems.push({
|
|
810
807
|
location: { offset: node.offset, length: node.length },
|
|
811
808
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
812
|
-
message:
|
|
809
|
+
message: l10n.t('maximumWarning', maximum),
|
|
813
810
|
source: getSchemaSource(schema, originalSchema),
|
|
814
811
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
815
812
|
});
|
|
@@ -820,7 +817,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
820
817
|
validationResult.problems.push({
|
|
821
818
|
location: { offset: node.offset, length: node.length },
|
|
822
819
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
823
|
-
message:
|
|
820
|
+
message: l10n.t('minLengthWarning', schema.minLength),
|
|
824
821
|
source: getSchemaSource(schema, originalSchema),
|
|
825
822
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
826
823
|
});
|
|
@@ -829,7 +826,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
829
826
|
validationResult.problems.push({
|
|
830
827
|
location: { offset: node.offset, length: node.length },
|
|
831
828
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
832
|
-
message:
|
|
829
|
+
message: l10n.t('maxLengthWarning', schema.maxLength),
|
|
833
830
|
source: getSchemaSource(schema, originalSchema),
|
|
834
831
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
835
832
|
});
|
|
@@ -840,9 +837,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
840
837
|
validationResult.problems.push({
|
|
841
838
|
location: { offset: node.offset, length: node.length },
|
|
842
839
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
843
|
-
message: schema.patternErrorMessage ||
|
|
844
|
-
schema.errorMessage ||
|
|
845
|
-
localize('patternWarning', 'String does not match the pattern of "{0}".', schema.pattern),
|
|
840
|
+
message: schema.patternErrorMessage || schema.errorMessage || l10n.t('patternWarning', schema.pattern),
|
|
846
841
|
source: getSchemaSource(schema, originalSchema),
|
|
847
842
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
848
843
|
});
|
|
@@ -855,13 +850,13 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
855
850
|
{
|
|
856
851
|
let errorMessage;
|
|
857
852
|
if (!node.value) {
|
|
858
|
-
errorMessage =
|
|
853
|
+
errorMessage = l10n.t('uriEmpty');
|
|
859
854
|
}
|
|
860
855
|
else {
|
|
861
856
|
try {
|
|
862
857
|
const uri = vscode_uri_1.URI.parse(node.value);
|
|
863
858
|
if (!uri.scheme && schema.format === 'uri') {
|
|
864
|
-
errorMessage =
|
|
859
|
+
errorMessage = l10n.t('uriSchemeMissing');
|
|
865
860
|
}
|
|
866
861
|
}
|
|
867
862
|
catch (e) {
|
|
@@ -872,9 +867,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
872
867
|
validationResult.problems.push({
|
|
873
868
|
location: { offset: node.offset, length: node.length },
|
|
874
869
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
875
|
-
message: schema.patternErrorMessage ||
|
|
876
|
-
schema.errorMessage ||
|
|
877
|
-
localize('uriFormatWarning', 'String is not a URI: {0}', errorMessage),
|
|
870
|
+
message: schema.patternErrorMessage || schema.errorMessage || l10n.t('uriFormatWarning', errorMessage),
|
|
878
871
|
source: getSchemaSource(schema, originalSchema),
|
|
879
872
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
880
873
|
});
|
|
@@ -894,7 +887,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
894
887
|
validationResult.problems.push({
|
|
895
888
|
location: { offset: node.offset, length: node.length },
|
|
896
889
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
897
|
-
message: schema.patternErrorMessage || schema.errorMessage || format.errorMessage,
|
|
890
|
+
message: schema.patternErrorMessage || schema.errorMessage || l10n.t(format.errorMessage),
|
|
898
891
|
source: getSchemaSource(schema, originalSchema),
|
|
899
892
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
900
893
|
});
|
|
@@ -936,7 +929,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
936
929
|
validationResult.problems.push({
|
|
937
930
|
location: { offset: node.offset, length: node.length },
|
|
938
931
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
939
|
-
message:
|
|
932
|
+
message: l10n.t('additionalItemsWarning', subSchemas.length),
|
|
940
933
|
source: getSchemaSource(schema, originalSchema),
|
|
941
934
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
942
935
|
});
|
|
@@ -976,7 +969,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
976
969
|
validationResult.problems.push({
|
|
977
970
|
location: { offset: node.offset, length: node.length },
|
|
978
971
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
979
|
-
message: schema.errorMessage ||
|
|
972
|
+
message: schema.errorMessage || l10n.t('requiredItemMissingWarning'),
|
|
980
973
|
source: getSchemaSource(schema, originalSchema),
|
|
981
974
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
982
975
|
});
|
|
@@ -986,7 +979,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
986
979
|
validationResult.problems.push({
|
|
987
980
|
location: { offset: node.offset, length: node.length },
|
|
988
981
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
989
|
-
message:
|
|
982
|
+
message: l10n.t('minItemsWarning', schema.minItems),
|
|
990
983
|
source: getSchemaSource(schema, originalSchema),
|
|
991
984
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
992
985
|
});
|
|
@@ -995,7 +988,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
995
988
|
validationResult.problems.push({
|
|
996
989
|
location: { offset: node.offset, length: node.length },
|
|
997
990
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
998
|
-
message:
|
|
991
|
+
message: l10n.t('maxItemsWarning', schema.maxItems),
|
|
999
992
|
source: getSchemaSource(schema, originalSchema),
|
|
1000
993
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
1001
994
|
});
|
|
@@ -1009,7 +1002,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
1009
1002
|
validationResult.problems.push({
|
|
1010
1003
|
location: { offset: node.offset, length: node.length },
|
|
1011
1004
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
1012
|
-
message:
|
|
1005
|
+
message: l10n.t('uniqueItemsWarning'),
|
|
1013
1006
|
source: getSchemaSource(schema, originalSchema),
|
|
1014
1007
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
1015
1008
|
});
|
|
@@ -1087,7 +1080,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
1087
1080
|
length: propertyNode.keyNode.length,
|
|
1088
1081
|
},
|
|
1089
1082
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
1090
|
-
message: schema.errorMessage ||
|
|
1083
|
+
message: schema.errorMessage || l10n.t('DisallowedExtraPropWarning', propertyName),
|
|
1091
1084
|
source: getSchemaSource(schema, originalSchema),
|
|
1092
1085
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
1093
1086
|
});
|
|
@@ -1125,7 +1118,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
1125
1118
|
length: propertyNode.keyNode.length,
|
|
1126
1119
|
},
|
|
1127
1120
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
1128
|
-
message: schema.errorMessage ||
|
|
1121
|
+
message: schema.errorMessage || l10n.t('DisallowedExtraPropWarning', propertyName),
|
|
1129
1122
|
source: getSchemaSource(schema, originalSchema),
|
|
1130
1123
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
1131
1124
|
});
|
|
@@ -1195,7 +1188,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
1195
1188
|
},
|
|
1196
1189
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
1197
1190
|
code: vscode_json_languageservice_1.ErrorCode.PropertyExpected,
|
|
1198
|
-
message: schema.errorMessage ||
|
|
1191
|
+
message: schema.errorMessage || l10n.t('DisallowedExtraPropWarning', propertyName),
|
|
1199
1192
|
source: getSchemaSource(schema, originalSchema),
|
|
1200
1193
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
1201
1194
|
};
|
|
@@ -1212,7 +1205,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
1212
1205
|
validationResult.problems.push({
|
|
1213
1206
|
location: { offset: node.offset, length: node.length },
|
|
1214
1207
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
1215
|
-
message:
|
|
1208
|
+
message: l10n.t('MaxPropWarning', schema.maxProperties),
|
|
1216
1209
|
source: getSchemaSource(schema, originalSchema),
|
|
1217
1210
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
1218
1211
|
});
|
|
@@ -1223,7 +1216,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
1223
1216
|
validationResult.problems.push({
|
|
1224
1217
|
location: { offset: node.offset, length: node.length },
|
|
1225
1218
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
1226
|
-
message:
|
|
1219
|
+
message: l10n.t('MinPropWarning', schema.minProperties),
|
|
1227
1220
|
source: getSchemaSource(schema, originalSchema),
|
|
1228
1221
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
1229
1222
|
});
|
|
@@ -1240,7 +1233,7 @@ function validate(node, schema, originalSchema, validationResult, matchingSchema
|
|
|
1240
1233
|
validationResult.problems.push({
|
|
1241
1234
|
location: { offset: node.offset, length: node.length },
|
|
1242
1235
|
severity: vscode_languageserver_types_1.DiagnosticSeverity.Warning,
|
|
1243
|
-
message:
|
|
1236
|
+
message: l10n.t('RequiredDependentPropWarning', requiredProp, key),
|
|
1244
1237
|
source: getSchemaSource(schema, originalSchema),
|
|
1245
1238
|
schemaUri: getSchemaUri(schema, originalSchema),
|
|
1246
1239
|
});
|
|
@@ -1366,7 +1359,7 @@ function getSchemaUri(schema, originalSchema) {
|
|
|
1366
1359
|
return uriString ? [uriString] : [];
|
|
1367
1360
|
}
|
|
1368
1361
|
function getWarningMessage(problemType, args) {
|
|
1369
|
-
return
|
|
1362
|
+
return l10n.t(exports.ProblemTypeMessages[problemType], args.join(' | '));
|
|
1370
1363
|
}
|
|
1371
1364
|
/**
|
|
1372
1365
|
* if callFromAutoComplete than compare value from yaml and value from schema (s.const | s.enum[i])
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsonParser07.js","sourceRoot":"","sources":["../../../../../src/languageservice/parser/jsonParser07.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"jsonParser07.js","sourceRoot":"","sources":["../../../../../src/languageservice/parser/jsonParser07.ts"],"names":[],"mappings":";AAAA;;;;gGAIgG;;;AAGhG,8CAAgG;AAChG,sDAAyD;AAYzD,6EAAwD;AACxD,qCAAqC;AACrC,2CAAiC;AACjC,6EAAoF;AAEpF,gDAAiD;AAEjD,8CAA2D;AAC3D,qEAAuE;AACvE,wCAAmD;AAOtC,QAAA,OAAO,GAAG;IACrB,WAAW,EAAE;QACX,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,uBAAuB,CAAC;QAC7C,OAAO,EAAE,6CAA6C;KACvD;IACD,WAAW,EAAE;QACX,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,uBAAuB,CAAC;QAC7C,OAAO,EACL,yJAAyJ;KAC5J;IACD,IAAI,EAAE;QACJ,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC;QACzC,OAAO,EAAE,qDAAqD;KAC/D;IACD,IAAI,EAAE;QACJ,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC;QACzC,OAAO,EAAE,wGAAwG;KAClH;IACD,KAAK,EAAE;QACL,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAC;QAC1C,OAAO,EACL,sJAAsJ;KACzJ;IACD,IAAI,EAAE;QACJ,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC;QACzC,OAAO,EAAE,6CAA6C;KACvD;IACD,IAAI,EAAE;QACJ,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC;QACzC,OAAO,EAAE,8CAA8C;KACxD;CACF,CAAC;AAEW,QAAA,WAAW,GAAG,MAAM,CAAC;AAClC,MAAM,kBAAkB,GAAG,eAAe,CAAC;AAE3C,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,wEAAyD,CAAA;IACzD,0DAA2C,CAAA;IAC3C,4CAA6B,CAAA;AAC/B,CAAC,EAJW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAItB;AAEY,QAAA,mBAAmB,GAAgC;IAC9D,CAAC,WAAW,CAAC,0BAA0B,CAAC,EAAE,yBAAyB;IACnE,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,iCAAiC;IACpE,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,oBAAoB;CACjD,CAAC;AAaF,MAAsB,WAAW;IAS/B,YAAY,MAAe,EAAE,YAAsB,EAAE,MAAc,EAAE,MAAe;QAClF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAEM,6BAA6B,CAAC,MAAc;QACjD,MAAM,SAAS,GAAG,EAAE,CAAC;QACrB,MAAM,QAAQ,GAAG,CAAC,IAA2B,EAAyB,EAAE;YACtE,IAAI,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,MAAM,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE;gBAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,MAAM,EAAE,CAAC,EAAE,EAAE;oBACxE,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;oBACnC,IAAI,IAAI,EAAE;wBACR,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;qBACtB;iBACF;gBACD,OAAO,IAAI,CAAC;aACb;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QACF,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC;QACnC,IAAI,WAAW,GAAG,IAAI,CAAC;QACvB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;YAChC,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;YACxF,IAAI,OAAO,GAAG,WAAW,EAAE;gBACzB,WAAW,GAAG,QAAQ,CAAC;gBACvB,WAAW,GAAG,OAAO,CAAC;aACvB;SACF;QACD,OAAO,WAAW,IAAI,SAAS,CAAC;IAClC,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,EAAE,CAAC;IACZ,CAAC;IAEM,QAAQ;QACb,OAAO,CACL,QAAQ;YACR,IAAI,CAAC,IAAI;YACT,IAAI;YACJ,IAAI,CAAC,MAAM;YACX,GAAG;YACH,IAAI,CAAC,MAAM;YACX,GAAG;YACH,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CACjE,CAAC;IACJ,CAAC;CACF;AA5DD,kCA4DC;AAED,MAAa,eAAgB,SAAQ,WAAW;IAG9C,YAAY,MAAe,EAAE,YAAkB,EAAE,MAAc,EAAE,MAAe;QAC9E,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAHvC,SAAI,GAAW,MAAe,CAAC;QAC/B,UAAK,GAAG,IAAI,CAAC;IAGpB,CAAC;CACF;AAND,0CAMC;AAED,MAAa,kBAAmB,SAAQ,WAAW;IAKjD,YAAY,MAAe,EAAE,YAAkB,EAAE,SAAkB,EAAE,UAAkB,EAAE,MAAc,EAAE,MAAe;QACtH,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QALvC,SAAI,GAAc,SAAkB,CAAC;QAM1C,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC;IAC3B,CAAC;CACF;AAVD,gDAUC;AAED,MAAa,gBAAiB,SAAQ,WAAW;IAI/C,YAAY,MAAe,EAAE,YAAkB,EAAE,MAAc,EAAE,MAAe;QAC9E,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAJvC,SAAI,GAAY,OAAgB,CAAC;QAKtC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IAClB,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF;AAZD,4CAYC;AAED,MAAa,iBAAkB,SAAQ,WAAW;IAKhD,YAAY,MAAe,EAAE,YAAkB,EAAE,MAAc,EAAE,MAAe;QAC9E,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QALvC,SAAI,GAAa,QAAiB,CAAC;QAMxC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC;IAC1B,CAAC;CACF;AAVD,8CAUC;AAED,MAAa,iBAAkB,SAAQ,WAAW;IAIhD,YAAY,MAAe,EAAE,YAAkB,EAAE,MAAc,EAAE,MAAe;QAC9E,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAJvC,SAAI,GAAa,QAAiB,CAAC;QAKxC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IAClB,CAAC;CACF;AARD,8CAQC;AAED,MAAa,mBAAoB,SAAQ,WAAW;IAMlD,YAAY,MAAqB,EAAE,YAAkB,EAAE,MAAc,EAAE,MAAe;QACpF,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QANvC,SAAI,GAAe,UAAmB,CAAC;QAO5C,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;IACxB,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1E,CAAC;CACF;AAdD,kDAcC;AAED,MAAa,iBAAkB,SAAQ,WAAW;IAIhD,YAAY,MAAe,EAAE,YAAkB,EAAE,MAAc,EAAE,MAAe;QAC9E,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAJvC,SAAI,GAAa,QAAiB,CAAC;QAMxC,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;IACvB,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;CACF;AAbD,8CAaC;AAED,SAAgB,QAAQ,CAAC,MAAqB;IAC5C,IAAI,MAAM,KAAK,SAAS,EAAE;QACxB,OAAO,SAAS,CAAC;KAClB;IAED,IAAI,IAAA,mBAAS,EAAC,MAAM,CAAC,EAAE;QACrB,OAAO,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC;KAClC;IAED,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC9B,4EAA4E;QAC5E,OAAO,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC;QACzF,MAAM,GAAG;YACP,IAAI,EAAE,MAAM;SACb,CAAC;KACH;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAjBD,4BAiBC;AAYD,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,uCAAG,CAAA;IACH,yCAAI,CAAA;AACN,CAAC,EAHW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAGpB;AAUD,MAAM,eAAe;IAEnB,YACU,cAAc,CAAC,CAAC,EAChB,UAAmB,IAAI;QADvB,gBAAW,GAAX,WAAW,CAAK;QAChB,YAAO,GAAP,OAAO,CAAgB;QAHjC,YAAO,GAAwB,EAAE,CAAC;IAI/B,CAAC;IACJ,GAAG,CAAC,MAAyB;QAC3B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IACD,KAAK,CAAC,KAAuB;QAC3B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,CAAC,IAAa;QACnB,OAAO,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC;IAChG,CAAC;IACD,MAAM;QACJ,OAAO,IAAI,eAAe,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;CACF;AAED,MAAM,mBAAmB;IACvB;QACE,SAAS;IACX,CAAC;IACD,8DAA8D;IAC9D,IAAI,OAAO;QACT,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,6DAA6D;IAC7D,GAAG,CAAC,MAAyB;QAC3B,SAAS;IACX,CAAC;IACD,6DAA6D;IAC7D,KAAK,CAAC,KAAuB;QAC3B,SAAS;IACX,CAAC;IACD,6DAA6D;IAC7D,OAAO,CAAC,IAAa;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM;QACJ,OAAO,IAAI,CAAC;IACd,CAAC;;AAEM,4BAAQ,GAAG,IAAI,mBAAmB,EAAE,CAAC;AAG9C,MAAa,gBAAgB;IAU3B,YAAY,YAAqB;QAC/B,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,sBAAsB,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC5B,IAAI,YAAY,EAAE;YAChB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;SACtB;aAAM;YACL,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;SACxB;IACH,CAAC;IAEM,WAAW;QAChB,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;IAChC,CAAC;IAEM,QAAQ,CAAC,iBAAqC;QACnD,KAAK,MAAM,gBAAgB,IAAI,iBAAiB,EAAE;YAChD,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;SAC9B;IACH,CAAC;IAEM,KAAK,CAAC,gBAAkC;QAC7C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAClE,CAAC;IAEM,eAAe,CAAC,gBAAkC;QACvD,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,gBAAgB,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,IAAI,gBAAgB,CAAC,UAAU,EAAE;YAC9G,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;YACtE,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjC,IAAI,KAAK,CAAC,IAAI,KAAK,uCAAS,CAAC,iBAAiB,EAAE;oBAC9C,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CACpB,aAAa,EACb,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;yBAC1B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;wBACT,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;oBAC3B,CAAC,CAAC;yBACD,IAAI,CAAC,IAAI,CAAC,CACd,CAAC;iBACH;aACF;SACF;IACH,CAAC;IAED;;;OAGG;IACI,mBAAmB,CAAC,mBAAqC,EAAE,mBAAkC;QAClG,IAAI,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE;YACzB,KAAK,MAAM,WAAW,IAAI,mBAAmB,EAAE;gBAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,WAAW,CAAC,CAAC;gBAC/E,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;oBACpC,MAAM,aAAa,GAAG,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CACtD,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,WAAW,KAAK,WAAW;wBAC7B,UAAU,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM;wBAChD,CAAC,WAAW,KAAK,WAAW,CAAC,0BAA0B,IAAI,IAAA,uBAAY,EAAC,CAAC,CAAC,WAAW,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,kDAAkD;qBACrK,CAAC;oBACF,IAAI,aAAa,EAAE;wBACjB,IAAI,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE;4BACrC,aAAa,CAAC,WAAW;iCACtB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;iCAClD,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;4BAClD,UAAU,CAAC,OAAO,GAAG,iBAAiB,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;yBACxF;wBACD,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;qBAC9C;iBACF;aACF;SACF;IACH,CAAC;IAEM,kBAAkB,CAAC,wBAA0C;QAClE,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QACrC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IACE,wBAAwB,CAAC,cAAc;YACvC,CAAC,CAAC,wBAAwB,CAAC,WAAW,EAAE,IAAI,wBAAwB,CAAC,iBAAiB,CAAC,EACvF;YACA,IAAI,CAAC,sBAAsB,EAAE,CAAC;SAC/B;QACD,IAAI,wBAAwB,CAAC,cAAc,IAAI,wBAAwB,CAAC,UAAU,EAAE;YAClF,IAAI,CAAC,mBAAmB,EAAE,CAAC;SAC5B;IACH,CAAC;IAEO,YAAY,CAAC,aAAuB,EAAE,UAAoB;QAChE,MAAM,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE;YAC9C,UAAU,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,GAAG,KAAK,GAAG,aAAa,CAAC;SAC/D;QACD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;YAC9D,UAAU,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;SAC7E;IACH,CAAC;IAEM,cAAc,CAAC,KAAuB;QAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACvC,IAAI,WAAW,KAAK,KAAK,CAAC,WAAW,EAAE,EAAE;YACvC,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC7B;QACD,IAAI,IAAI,CAAC,cAAc,KAAK,KAAK,CAAC,cAAc,EAAE;YAChD,OAAO,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACtC;QACD,IAAI,IAAI,CAAC,sBAAsB,KAAK,KAAK,CAAC,sBAAsB,EAAE;YAChE,OAAO,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC,sBAAsB,CAAC;SACnE;QACD,IAAI,IAAI,CAAC,mBAAmB,KAAK,KAAK,CAAC,mBAAmB,EAAE;YAC1D,OAAO,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,mBAAmB,CAAC;SAC7D;QACD,OAAO,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAC;IAC1D,CAAC;IAEM,iBAAiB,CAAC,KAAuB;QAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACvC,IAAI,IAAI,CAAC,iBAAiB,KAAK,KAAK,CAAC,iBAAiB,EAAE;YACtD,OAAO,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAC;SACzD;QACD,IAAI,IAAI,CAAC,cAAc,KAAK,KAAK,CAAC,cAAc,EAAE;YAChD,OAAO,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACtC;QACD,IAAI,IAAI,CAAC,mBAAmB,KAAK,KAAK,CAAC,mBAAmB,EAAE;YAC1D,OAAO,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,mBAAmB,CAAC;SAC7D;QACD,IAAI,IAAI,CAAC,sBAAsB,KAAK,KAAK,CAAC,sBAAsB,EAAE;YAChE,OAAO,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC,sBAAsB,CAAC;SACnE;QACD,IAAI,WAAW,KAAK,KAAK,CAAC,WAAW,EAAE,EAAE;YACvC,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC7B;QACD,OAAO,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAC;IAC1D,CAAC;CACF;AAhJD,4CAgJC;AAED,SAAgB,eAAe,CAAC,IAAa,EAAE,cAA4B,EAAE;IAC3E,OAAO,IAAI,YAAY,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;AACjD,CAAC;AAFD,0CAEC;AAED,8DAA8D;AAC9D,SAAgB,YAAY,CAAC,IAAa;IACxC,QAAQ,IAAI,CAAC,IAAI,EAAE;QACjB,KAAK,OAAO;YACV,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACzC,KAAK,QAAQ,CAAC,CAAC;YACb,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAChC,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE;gBACzD,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;gBACpB,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACnC,IAAI,SAAS,EAAE;oBACb,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAe,CAAC,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;iBACjE;aACF;YACD,OAAO,GAAG,CAAC;SACZ;QACD,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,KAAK,SAAS;YACZ,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB;YACE,OAAO,SAAS,CAAC;KACpB;AACH,CAAC;AAxBD,oCAwBC;AAED,SAAgB,QAAQ,CAAC,IAAa,EAAE,MAAc,EAAE,iBAAiB,GAAG,KAAK;IAC/E,OAAO,CACL,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,MAAM,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,MAAM,KAAK,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAC9H,CAAC;AACJ,CAAC;AAJD,4BAIC;AAED,SAAgB,gBAAgB,CAAC,IAAa,EAAE,MAAc,EAAE,iBAA0B;IACxF,IAAI,iBAAiB,KAAK,KAAK,CAAC,EAAE;QAChC,iBAAiB,GAAG,KAAK,CAAC;KAC3B;IACD,IAAI,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE;QAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,MAAM,EAAE,CAAC,EAAE,EAAE;gBACxE,MAAM,IAAI,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;gBACtE,IAAI,IAAI,EAAE;oBACR,OAAO,IAAI,CAAC;iBACb;aACF;SACF;QACD,OAAO,IAAI,CAAC;KACb;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAjBD,4CAiBC;AAQD,MAAa,YAAY;IAKvB,YACkB,IAAa,EACb,eAA6B,EAAE,EAC/B,WAAoB,EAAE;QAFtB,SAAI,GAAJ,IAAI,CAAS;QACb,iBAAY,GAAZ,YAAY,CAAmB;QAC/B,aAAQ,GAAR,QAAQ,CAAc;IACrC,CAAC;IAEG,iBAAiB,CAAC,MAAc,EAAE,iBAAiB,GAAG,KAAK;QAChE,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;SAC/D;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAEM,6BAA6B,CAAC,MAAc;QACjD,OAAO,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC;IACtE,CAAC;IAEM,KAAK,CAAC,OAAmC;QAC9C,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,MAAM,OAAO,GAAG,CAAC,IAAa,EAAW,EAAE;gBACzC,IAAI,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;gBACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;oBAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE;wBAC/C,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;qBAC5B;iBACF;gBACD,OAAO,GAAG,CAAC;YACb,CAAC,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACpB;IACH,CAAC;IAEM,QAAQ,CAAC,YAA0B,EAAE,MAAkB;QAC5D,IAAI,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE;YACvB,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACjE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,QAAQ,EAAE;gBAClF,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,2BAA2B,EAAE,IAAI,CAAC,2BAA2B;gBAC7D,GAAG,EAAE,IAAI,CAAC,GAAG;aACd,CAAC,CAAC;YACH,OAAO,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACzC,MAAM,KAAK,GAAG,mCAAK,CAAC,MAAM,CACxB,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAC1C,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAC/D,CAAC;gBACF,MAAM,UAAU,GAAe,wCAAU,CAAC,MAAM,CAC9C,KAAK,EACL,CAAC,CAAC,OAAO,EACT,CAAC,CAAC,QAAQ,EACV,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,uCAAS,CAAC,SAAS,EACrC,CAAC,CAAC,MAAM,CACT,CAAC;gBACF,UAAU,CAAC,IAAI,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;gBACxD,OAAO,UAAU,CAAC;YACpB,CAAC,CAAC,CAAC;SACJ;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;OAaG;IACI,kBAAkB,CACvB,MAAkB,EAClB,WAAW,GAAG,CAAC,CAAC,EAChB,UAAmB,IAAI,EACvB,uBAAiC;QAEjC,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAClE,IAAI,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE;YACvB,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,eAAe,EAAE;gBAC5F,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,2BAA2B,EAAE,IAAI,CAAC,2BAA2B;gBAC7D,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,oBAAoB,EAAE,uBAAuB;aAC9C,CAAC,CAAC;SACJ;QACD,OAAO,eAAe,CAAC,OAAO,CAAC;IACjC,CAAC;CACF;AAhGD,oCAgGC;AAOD,SAAS,QAAQ,CACf,IAAa,EACb,MAAkB,EAClB,cAA0B,EAC1B,gBAAkC,EAClC,eAAiC,EACjC,OAAgB;AAChB,8DAA8D;;IAE9D,MAAM,EAAE,YAAY,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC;IACvD,IAAI,CAAC,IAAI,EAAE;QACT,OAAO;KACR;IAED,6BAA6B;IAC7B,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC9B,OAAO;KACR;IAED,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;QACf,MAAM,CAAC,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC;KACjC;IAED,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,KAAK,IAAI,cAAc,CAAC,YAAY,CAAC;IAElE,QAAQ,IAAI,CAAC,IAAI,EAAE;QACjB,KAAK,QAAQ;YACX,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;YACrE,MAAM;QACR,KAAK,OAAO;YACV,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;YACpE,MAAM;QACR,KAAK,QAAQ;YACX,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC;YACpD,MAAM;QACR,KAAK,QAAQ;YACX,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC;YACpD,MAAM;QACR,KAAK,UAAU;YACb,OAAO,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;KAC/F;IACD,aAAa,EAAE,CAAC;IAEhB,eAAe,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAEpD,SAAS,aAAa;QACpB,SAAS,WAAW,CAAC,IAAY;YAC/B,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;QAChG,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;gBAClC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;oBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;oBACpC,OAAO,EAAE,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,0BAA0B,EAAa,MAAM,CAAC,IAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACtG,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;oBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;iBAChD,CAAC,CAAC;aACJ;SACF;aAAM,IAAI,MAAM,CAAC,IAAI,EAAE;YACtB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;gBAC7B,yCAAyC;gBACzC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAA,+BAAiB,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;gBACtF,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;oBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;oBACpC,OAAO,EAAE,MAAM,CAAC,YAAY,IAAI,iBAAiB,CAAC,WAAW,CAAC,mBAAmB,EAAE,CAAC,UAAU,CAAC,CAAC;oBAChG,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;oBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;oBAC/C,WAAW,EAAE,WAAW,CAAC,mBAAmB;oBAC5C,WAAW,EAAE,CAAC,UAAU,CAAC;iBAC1B,CAAC,CAAC;aACJ;SACF;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YAC/B,KAAK,MAAM,YAAY,IAAI,MAAM,CAAC,KAAK,EAAE;gBACvC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;aAC5F;SACF;QACD,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,SAAS,EAAE;YACb,MAAM,mBAAmB,GAAG,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAAC;YAC/D,MAAM,kBAAkB,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;YACpD,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC;YACpF,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,EAAE;gBACtC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;oBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;oBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC;oBACnC,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;oBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;iBAChD,CAAC,CAAC;aACJ;YACD,KAAK,MAAM,EAAE,IAAI,kBAAkB,CAAC,OAAO,EAAE;gBAC3C,EAAE,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC;gBAC3B,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aACzB;SACF;QAED,MAAM,gBAAgB,GAAG,CAAC,YAA6B,EAAE,WAAoB,EAAU,EAAE;YACvF,MAAM,OAAO,GAAG,EAAE,CAAC;YACnB,MAAM,UAAU,GAAG,EAAE,CAAC;YACtB,MAAM,iBAAiB,GAAG,EAAE,CAAC;YAC7B,0DAA0D;YAC1D,IAAI,SAAS,GAIT,IAAI,CAAC;YACT,KAAK,MAAM,YAAY,IAAI,YAAY,EAAE;gBACvC,MAAM,SAAS,GAAG,EAAE,GAAG,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBAChD,MAAM,mBAAmB,GAAG,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAAC;gBAC/D,MAAM,kBAAkB,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;gBACpD,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC;gBACpF,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,IAAI,oBAAoB,EAAE;oBAC9D,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACxB,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC3B,IAAI,mBAAmB,CAAC,iBAAiB,KAAK,CAAC,EAAE;wBAC/C,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;qBACnC;oBACD,IAAI,SAAS,CAAC,MAAM,EAAE;wBACpB,UAAU,CAAC,GAAG,EAAE,CAAC;qBAClB;iBACF;gBACD,IAAI,CAAC,SAAS,EAAE;oBACd,SAAS,GAAG;wBACV,MAAM,EAAE,SAAS;wBACjB,gBAAgB,EAAE,mBAAmB;wBACrC,eAAe,EAAE,kBAAkB;qBACpC,CAAC;iBACH;qBAAM,IAAI,YAAY,EAAE;oBACvB,SAAS,GAAG,qBAAqB,CAAC,mBAAmB,EAAE,SAAS,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;iBAClG;qBAAM;oBACL,SAAS,GAAG,iBAAiB,CAAC,IAAI,EAAE,WAAW,EAAE,mBAAmB,EAAE,SAAS,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;iBACjH;aACF;YAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,WAAW,EAAE;gBACrG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE;oBAC5C,QAAQ,EAAE,gDAAkB,CAAC,OAAO;oBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC;oBAC/B,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;oBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;iBAChD,CAAC,CAAC;aACJ;YACD,IAAI,SAAS,KAAK,IAAI,EAAE;gBACtB,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;gBACnD,gBAAgB,CAAC,iBAAiB,IAAI,SAAS,CAAC,gBAAgB,CAAC,iBAAiB,CAAC;gBACnF,gBAAgB,CAAC,sBAAsB,IAAI,SAAS,CAAC,gBAAgB,CAAC,sBAAsB,CAAC;gBAC7F,gBAAgB,CAAC,cAAc,GAAG,gBAAgB,CAAC,cAAc,IAAI,SAAS,CAAC,gBAAgB,CAAC,cAAc,CAAC;gBAC/G,IAAI,SAAS,CAAC,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE;oBACjD,gBAAgB,CAAC,UAAU,GAAG,CAAC,gBAAgB,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;iBACjH;gBACD,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;aAClD;YACD,OAAO,OAAO,CAAC,MAAM,CAAC;QACxB,CAAC,CAAC;QACF,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YAC/B,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;SACvC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YAC/B,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;SACtC;QAED,MAAM,UAAU,GAAG,CAAC,MAAqB,EAAE,cAA0B,EAAQ,EAAE;YAC7E,MAAM,mBAAmB,GAAG,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAAC;YAC/D,MAAM,kBAAkB,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;YAEpD,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC;YAEnG,gBAAgB,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAC5C,gBAAgB,CAAC,iBAAiB,IAAI,mBAAmB,CAAC,iBAAiB,CAAC;YAC5E,gBAAgB,CAAC,sBAAsB,IAAI,mBAAmB,CAAC,sBAAsB,CAAC;YACtF,eAAe,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAC5C,CAAC,CAAC;QAEF,MAAM,aAAa,GAAG,CACpB,QAAuB,EACvB,cAA0B,EAC1B,UAA0B,EAC1B,UAA0B,EACpB,EAAE;YACR,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACrC,MAAM,mBAAmB,GAAG,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAAC;YAC/D,MAAM,kBAAkB,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;YAEpD,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC;YAC5F,eAAe,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YAE1C,MAAM,EAAE,sBAAsB,EAAE,GAAG,SAAS,CAAC;YAC7C,IAAI,sBAAsB,EAAE;gBAC1B,MAAM,WAAW,GAAG,IAAI,0CAAsB,CAAC,sBAAsB,CAAC,CAAC;gBACvE,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBAC5C,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC;wBAChC,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;wBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;wBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,0BAA0B,EAAE,sBAAsB,EAAE,OAAO,CAAC,GAAG,CAAC;wBAChF,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;wBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;qBAChD,CAAC,CAAC;oBACH,+DAA+D;oBAC/D,+CAA+C;iBAChD;aACF;YAED,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,EAAE;gBACtC,IAAI,UAAU,EAAE;oBACd,UAAU,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;iBACxC;aACF;iBAAM,IAAI,UAAU,EAAE;gBACrB,UAAU,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;aACxC;QACH,CAAC,CAAC;QAEF,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACrC,IAAI,QAAQ,EAAE;YACZ,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;SAC/E;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YAC9B,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,cAAc,GAAG,KAAK,CAAC;YAC3B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE;gBAC3B,IAAI,IAAA,gBAAM,EAAC,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,wBAAwB,CAAC,oBAAoB,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE;oBAC7F,cAAc,GAAG,IAAI,CAAC;oBACtB,MAAM;iBACP;aACF;YACD,gBAAgB,CAAC,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;YAC1C,gBAAgB,CAAC,cAAc,GAAG,cAAc,CAAC;YACjD,IAAI,CAAC,cAAc,EAAE;gBACnB,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;oBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;oBACpC,IAAI,EAAE,uCAAS,CAAC,iBAAiB;oBACjC,OAAO,EACL,MAAM,CAAC,YAAY;wBACnB,IAAI,CAAC,CAAC,CACJ,aAAa,EACb,MAAM,CAAC,IAAI;6BACR,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;4BACT,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;wBAC3B,CAAC,CAAC;6BACD,IAAI,CAAC,IAAI,CAAC,CACd;oBACH,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;oBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;oBAC/C,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE;iBAC9B,CAAC,CAAC;aACJ;SACF;QAED,IAAI,IAAA,mBAAS,EAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YAC3B,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,CAAC,IAAA,gBAAM,EAAC,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,oBAAoB,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE;gBACrH,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;oBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;oBACpC,IAAI,EAAE,uCAAS,CAAC,iBAAiB;oBACjC,WAAW,EAAE,WAAW,CAAC,YAAY;oBACrC,OAAO,EAAE,MAAM,CAAC,YAAY,IAAI,iBAAiB,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC3G,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;oBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;oBAC/C,WAAW,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC3C,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;iBACjC,CAAC,CAAC;gBACH,gBAAgB,CAAC,cAAc,GAAG,KAAK,CAAC;aACzC;iBAAM;gBACL,gBAAgB,CAAC,cAAc,GAAG,IAAI,CAAC;aACxC;YACD,gBAAgB,CAAC,UAAU,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SAC9C;QAED,IAAI,MAAM,CAAC,kBAAkB,IAAI,IAAI,CAAC,MAAM,EAAE;YAC5C,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;gBACpE,QAAQ,EAAE,gDAAkB,CAAC,OAAO;gBACpC,OAAO,EAAE,MAAM,CAAC,kBAAkB;gBAClC,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;gBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;aAChD,CAAC,CAAC;SACJ;IACH,CAAC;IAED,SAAS,mBAAmB,CAAC,IAAmB,EAAE,MAAkB,EAAE,gBAAkC;QACtG,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;QAEvB,IAAI,IAAA,kBAAQ,EAAC,MAAM,CAAC,UAAU,CAAC,EAAE;YAC/B,IAAI,IAAA,yBAAkB,EAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;gBACpD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;oBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;oBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,mBAAmB,EAAE,MAAM,CAAC,UAAU,CAAC;oBACvD,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;oBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;iBAChD,CAAC,CAAC;aACJ;SACF;QACD,SAAS,iBAAiB,CAAC,KAAyB,EAAE,SAAuC;YAC3F,IAAI,IAAA,kBAAQ,EAAC,SAAS,CAAC,EAAE;gBACvB,OAAO,SAAS,CAAC;aAClB;YACD,IAAI,IAAA,mBAAS,EAAC,SAAS,CAAC,IAAI,SAAS,EAAE;gBACrC,OAAO,KAAK,CAAC;aACd;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,SAAS,QAAQ,CAAC,KAAyB,EAAE,SAAuC;YAClF,IAAI,CAAC,IAAA,mBAAS,EAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE;gBACvC,OAAO,KAAK,CAAC;aACd;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACpF,IAAI,IAAA,kBAAQ,EAAC,gBAAgB,CAAC,IAAI,GAAG,IAAI,gBAAgB,EAAE;YACzD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;gBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;gBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,yBAAyB,EAAE,gBAAgB,CAAC;gBAC5D,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;gBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;aAChD,CAAC,CAAC;SACJ;QACD,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACpF,IAAI,IAAA,kBAAQ,EAAC,gBAAgB,CAAC,IAAI,GAAG,IAAI,gBAAgB,EAAE;YACzD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;gBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;gBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,yBAAyB,EAAE,gBAAgB,CAAC;gBAC5D,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;gBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;aAChD,CAAC,CAAC;SACJ;QACD,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAClE,IAAI,IAAA,kBAAQ,EAAC,OAAO,CAAC,IAAI,GAAG,GAAG,OAAO,EAAE;YACtC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;gBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;gBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,gBAAgB,EAAE,OAAO,CAAC;gBAC1C,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;gBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;aAChD,CAAC,CAAC;SACJ;QACD,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAClE,IAAI,IAAA,kBAAQ,EAAC,OAAO,CAAC,IAAI,GAAG,GAAG,OAAO,EAAE;YACtC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;gBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;gBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,gBAAgB,EAAE,OAAO,CAAC;gBAC1C,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;gBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;aAChD,CAAC,CAAC;SACJ;IACH,CAAC;IAED,SAAS,mBAAmB,CAAC,IAAmB,EAAE,MAAkB,EAAE,gBAAkC;QACtG,IAAI,IAAA,kBAAQ,EAAC,MAAM,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE;YACtE,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;gBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;gBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,kBAAkB,EAAE,MAAM,CAAC,SAAS,CAAC;gBACrD,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;gBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;aAChD,CAAC,CAAC;SACJ;QAED,IAAI,IAAA,kBAAQ,EAAC,MAAM,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE;YACtE,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;gBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;gBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,kBAAkB,EAAE,MAAM,CAAC,SAAS,CAAC;gBACrD,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;gBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;aAChD,CAAC,CAAC;SACJ;QAED,IAAI,IAAA,kBAAQ,EAAC,MAAM,CAAC,OAAO,CAAC,EAAE;YAC5B,MAAM,KAAK,GAAG,IAAA,iCAAuB,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACtD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBAC3B,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;oBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;oBACpC,OAAO,EAAE,MAAM,CAAC,mBAAmB,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC;oBACtG,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;oBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;iBAChD,CAAC,CAAC;aACJ;SACF;QAED,IAAI,MAAM,CAAC,MAAM,EAAE;YACjB,QAAQ,MAAM,CAAC,MAAM,EAAE;gBACrB,KAAK,KAAK,CAAC;gBACX,KAAK,eAAe;oBAClB;wBACE,IAAI,YAAY,CAAC;wBACjB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;4BACf,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;yBACnC;6BAAM;4BACL,IAAI;gCACF,MAAM,GAAG,GAAG,gBAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gCAClC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE;oCAC1C,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC;iCAC3C;6BACF;4BAAC,OAAO,CAAC,EAAE;gCACV,YAAY,GAAG,CAAC,CAAC,OAAO,CAAC;6BAC1B;yBACF;wBACD,IAAI,YAAY,EAAE;4BAChB,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;gCAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;gCACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;gCACpC,OAAO,EAAE,MAAM,CAAC,mBAAmB,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,kBAAkB,EAAE,YAAY,CAAC;gCACtG,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;gCAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;6BAChD,CAAC,CAAC;yBACJ;qBACF;oBACD,MAAM;gBACR,KAAK,WAAW,CAAC;gBACjB,KAAK,WAAW,CAAC;gBACjB,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM,CAAC;gBACZ,KAAK,OAAO,CAAC;gBACb,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM;oBACT;wBACE,MAAM,MAAM,GAAG,eAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBACtC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;4BACnD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;gCAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;gCACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;gCACpC,OAAO,EAAE,MAAM,CAAC,mBAAmB,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;gCACzF,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;gCAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;6BAChD,CAAC,CAAC;yBACJ;qBACF;oBACD,MAAM;gBACR,QAAQ;aACT;SACF;IACH,CAAC;IACD,SAAS,kBAAkB,CACzB,IAAkB,EAClB,MAAkB,EAClB,gBAAkC,EAClC,eAAiC;QAEjC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC;YAChC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBACtD,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;gBACvC,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;gBACzC,MAAM,oBAAoB,GAAG,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAAC;gBAChE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC/B,IAAI,IAAI,EAAE;oBACR,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,oBAAoB,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;oBAClF,gBAAgB,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;oBAC1D,gBAAgB,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;iBACxD;qBAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,EAAE;oBACjD,gBAAgB,CAAC,sBAAsB,EAAE,CAAC;iBAC3C;aACF;YACD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE;gBACzC,IAAI,OAAO,MAAM,CAAC,eAAe,KAAK,QAAQ,EAAE;oBAC9C,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBAC1D,MAAM,oBAAoB,GAAG,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAAC;wBAChE,8DAA8D;wBAC9D,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAO,MAAM,CAAC,eAAe,EAAE,MAAM,EAAE,oBAAoB,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;wBAC7G,gBAAgB,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;wBAC1D,gBAAgB,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;qBACxD;iBACF;qBAAM,IAAI,MAAM,CAAC,eAAe,KAAK,KAAK,EAAE;oBAC3C,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;wBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;wBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;wBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,wBAAwB,EAAE,UAAU,CAAC,MAAM,CAAC;wBAC5D,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;wBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;qBAChD,CAAC,CAAC;iBACJ;aACF;SACF;aAAM;YACL,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,UAAU,EAAE;gBACd,MAAM,oBAAoB,GAAG,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAAC;gBAChE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;oBAC1B,IAAI,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;wBACrD,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBACzC,MAAM,SAAS,GAAG,EAAE,GAAG,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;wBAChD,SAAS,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;wBAC/B,SAAS,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;wBAC7C,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,oBAAoB,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;wBAClF,gBAAgB,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;wBAC1D,gBAAgB,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;qBACxD;yBAAM;wBACL,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,oBAAoB,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;wBACnF,gBAAgB,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;wBAC1D,gBAAgB,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;qBACxD;gBACH,CAAC,CAAC,CAAC;aACJ;SACF;QAED,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,cAAc,EAAE;YAClB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC3C,MAAM,oBAAoB,GAAG,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAAC;gBAChE,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,oBAAoB,EAAE,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACpG,OAAO,CAAC,oBAAoB,CAAC,WAAW,EAAE,CAAC;YAC7C,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,WAAW,EAAE;gBAChB,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;oBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;oBACpC,OAAO,EAAE,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,4BAA4B,CAAC;oBACpE,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;oBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;iBAChD,CAAC,CAAC;aACJ;SACF;QAED,IAAI,IAAA,kBAAQ,EAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE;YACpE,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;gBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;gBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC;gBACnD,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;gBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;aAChD,CAAC,CAAC;SACJ;QAED,IAAI,IAAA,kBAAQ,EAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE;YACpE,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;gBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;gBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC;gBACnD,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;gBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;aAChD,CAAC,CAAC;SACJ;QAED,IAAI,MAAM,CAAC,WAAW,KAAK,IAAI,EAAE;YAC/B,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YAClC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBAC9C,OAAO,KAAK,KAAK,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAC7C,CAAC,CAAC,CAAC;YACH,IAAI,UAAU,EAAE;gBACd,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;oBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;oBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAC;oBACrC,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;oBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;iBAChD,CAAC,CAAC;aACJ;SACF;IACH,CAAC;IAED,SAAS,mBAAmB,CAC1B,IAAmB,EACnB,MAAkB,EAClB,gBAAkC,EAClC,eAAiC;QAEjC,MAAM,QAAQ,GAA+B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjE,MAAM,qBAAqB,GAAa,EAAE,CAAC;QAC3C,MAAM,gBAAgB,GAAsB,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;QAEjE,OAAO,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;YAClC,MAAM,YAAY,GAAG,gBAAgB,CAAC,GAAG,EAAE,CAAC;YAC5C,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC;YAEvC,4FAA4F;YAC5F,IAAI,GAAG,KAAK,IAAI,IAAI,YAAY,CAAC,SAAS,EAAE;gBAC1C,QAAQ,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE;oBACnC,KAAK,QAAQ,CAAC,CAAC;wBACb,gBAAgB,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;wBAC/D,MAAM;qBACP;oBACD,KAAK,OAAO,CAAC,CAAC;wBACZ,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;4BACvD,IAAI,YAAY,IAAI,IAAA,oBAAU,EAAC,YAAY,CAAC,YAAY,CAAC,CAAC,EAAE;gCAC1D,gBAAgB,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC;6BACtD;wBACH,CAAC,CAAC,CAAC;wBACH,MAAM;qBACP;oBACD,OAAO,CAAC,CAAC;wBACP,MAAM;qBACP;iBACF;aACF;iBAAM;gBACL,QAAQ,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,SAAS,CAAC;gBACvC,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACjC;SACF;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;YAClC,KAAK,MAAM,YAAY,IAAI,MAAM,CAAC,QAAQ,EAAE;gBAC1C,IAAI,QAAQ,CAAC,YAAY,CAAC,KAAK,SAAS,EAAE;oBACxC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;oBACtF,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;oBACnH,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;wBAC7B,QAAQ,EAAE,QAAQ;wBAClB,QAAQ,EAAE,gDAAkB,CAAC,OAAO;wBACpC,OAAO,EAAE,iBAAiB,CAAC,WAAW,CAAC,0BAA0B,EAAE,CAAC,YAAY,CAAC,CAAC;wBAClF,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;wBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;wBAC/C,WAAW,EAAE,CAAC,YAAY,CAAC;wBAC3B,WAAW,EAAE,WAAW,CAAC,0BAA0B;qBACpD,CAAC,CAAC;iBACJ;aACF;SACF;QAED,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAQ,EAAE;YAC/C,IAAI,KAAK,GAAG,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAChD,OAAO,KAAK,IAAI,CAAC,EAAE;gBACjB,qBAAqB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACvC,KAAK,GAAG,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;aAC7C;QACH,CAAC,CAAC;QAEF,IAAI,MAAM,CAAC,UAAU,EAAE;YACrB,KAAK,MAAM,YAAY,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;gBACzD,iBAAiB,CAAC,YAAY,CAAC,CAAC;gBAChC,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;gBACvD,MAAM,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;gBACrC,IAAI,KAAK,EAAE;oBACT,IAAI,IAAA,mBAAS,EAAC,cAAc,CAAC,EAAE;wBAC7B,IAAI,CAAC,cAAc,EAAE;4BACnB,MAAM,YAAY,GAAoB,KAAK,CAAC,MAAM,CAAC;4BACnD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;gCAC7B,QAAQ,EAAE;oCACR,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM;oCACnC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM;iCACpC;gCACD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;gCACpC,OAAO,EAAE,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,4BAA4B,EAAE,YAAY,CAAC;gCAClF,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;gCAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;6BAChD,CAAC,CAAC;yBACJ;6BAAM;4BACL,gBAAgB,CAAC,iBAAiB,EAAE,CAAC;4BACrC,gBAAgB,CAAC,sBAAsB,EAAE,CAAC;yBAC3C;qBACF;yBAAM;wBACL,cAAc,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC;wBACtD,MAAM,wBAAwB,GAAG,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAAC;wBACpE,QAAQ,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,wBAAwB,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;wBAC5F,gBAAgB,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,CAAC;wBAC9D,gBAAgB,CAAC,eAAe,CAAC,wBAAwB,CAAC,CAAC;qBAC5D;iBACF;aACF;SACF;QAED,IAAI,MAAM,CAAC,iBAAiB,EAAE;YAC5B,KAAK,MAAM,eAAe,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE;gBACnE,MAAM,KAAK,GAAG,IAAA,iCAAuB,EAAC,eAAe,CAAC,CAAC;gBACvD,KAAK,MAAM,YAAY,IAAI,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;oBACzD,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;wBAC5B,iBAAiB,CAAC,YAAY,CAAC,CAAC;wBAChC,MAAM,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;wBACrC,IAAI,KAAK,EAAE;4BACT,MAAM,cAAc,GAAG,MAAM,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;4BACjE,IAAI,IAAA,mBAAS,EAAC,cAAc,CAAC,EAAE;gCAC7B,IAAI,CAAC,cAAc,EAAE;oCACnB,MAAM,YAAY,GAAoB,KAAK,CAAC,MAAM,CAAC;oCACnD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;wCAC7B,QAAQ,EAAE;4CACR,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM;4CACnC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM;yCACpC;wCACD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;wCACpC,OAAO,EAAE,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,4BAA4B,EAAE,YAAY,CAAC;wCAClF,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;wCAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;qCAChD,CAAC,CAAC;iCACJ;qCAAM;oCACL,gBAAgB,CAAC,iBAAiB,EAAE,CAAC;oCACrC,gBAAgB,CAAC,sBAAsB,EAAE,CAAC;iCAC3C;6BACF;iCAAM;gCACL,MAAM,wBAAwB,GAAG,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAAC;gCACpE,QAAQ,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,wBAAwB,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;gCAC5F,gBAAgB,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,CAAC;gCAC9D,gBAAgB,CAAC,eAAe,CAAC,wBAAwB,CAAC,CAAC;6BAC5D;yBACF;qBACF;iBACF;aACF;SACF;QACD,IAAI,OAAO,MAAM,CAAC,oBAAoB,KAAK,QAAQ,EAAE;YACnD,KAAK,MAAM,YAAY,IAAI,qBAAqB,EAAE;gBAChD,MAAM,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;gBACrC,IAAI,KAAK,EAAE;oBACT,MAAM,wBAAwB,GAAG,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAAC;oBACpE,8DAA8D;oBAC9D,QAAQ,CAAC,KAAK,EAAO,MAAM,CAAC,oBAAoB,EAAE,MAAM,EAAE,wBAAwB,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;oBAC9G,gBAAgB,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,CAAC;oBAC9D,gBAAgB,CAAC,eAAe,CAAC,wBAAwB,CAAC,CAAC;iBAC5D;aACF;SACF;aAAM,IACL,MAAM,CAAC,oBAAoB,KAAK,KAAK;YACrC,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,oBAAoB,KAAK,SAAS,IAAI,OAAO,CAAC,2BAA2B,KAAK,IAAI,CAAC,EACvH;YACA,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE;gBACpC,MAAM,kBAAkB,GACtB,MAAM,CAAC,UAAU;oBACjB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;yBAC9B,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,EAAE;wBAC1B,oCAAoC;wBACpC,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE;4BACjB,OAAO,KAAK,CAAC;yBACd;wBACD,gEAAgE;wBAChE,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,kBAAkB,CAAC,EAAE;4BACtG,OAAO,KAAK,CAAC;yBACd;wBACD,OAAO,IAAI,CAAC;oBACd,CAAC,CAAC;yBACD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBAEzB,KAAK,MAAM,YAAY,IAAI,qBAAqB,EAAE;oBAChD,MAAM,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;oBACrC,IAAI,KAAK,EAAE;wBACT,IAAI,YAAY,GAAG,IAAI,CAAC;wBACxB,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE;4BAC7B,YAAY,GAAoB,KAAK,CAAC,MAAM,CAAC;4BAC7C,IAAI,YAAY,CAAC,IAAI,KAAK,QAAQ,EAAE;gCAClC,YAAY,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;6BAC3C;yBACF;6BAAM;4BACL,YAAY,GAAG,KAAK,CAAC;yBACtB;wBACD,MAAM,OAAO,GAAa;4BACxB,QAAQ,EAAE;gCACR,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM;gCACnC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM;6BACpC;4BACD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;4BACpC,IAAI,EAAE,uCAAS,CAAC,gBAAgB;4BAChC,OAAO,EAAE,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,4BAA4B,EAAE,YAAY,CAAC;4BAClF,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;4BAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;yBAChD,CAAC;wBACF,IAAI,kBAAkB,EAAE,MAAM,EAAE;4BAC9B,OAAO,CAAC,IAAI,GAAG,EAAE,UAAU,EAAE,kBAAkB,EAAE,CAAC;yBACnD;wBACD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qBACzC;iBACF;aACF;SACF;QAED,IAAI,IAAA,kBAAQ,EAAC,MAAM,CAAC,aAAa,CAAC,EAAE;YAClC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC,aAAa,EAAE;gBACjD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;oBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;oBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,gBAAgB,EAAE,MAAM,CAAC,aAAa,CAAC;oBACvD,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;oBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;iBAChD,CAAC,CAAC;aACJ;SACF;QAED,IAAI,IAAA,kBAAQ,EAAC,MAAM,CAAC,aAAa,CAAC,EAAE;YAClC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC,aAAa,EAAE;gBACjD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;oBACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;oBACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,gBAAgB,EAAE,MAAM,CAAC,aAAa,CAAC;oBACvD,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;oBAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;iBAChD,CAAC,CAAC;aACJ;SACF;QAED,IAAI,MAAM,CAAC,YAAY,EAAE;YACvB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;gBAClD,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC3B,IAAI,IAAI,EAAE;oBACR,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;oBAC7C,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;wBAC9B,KAAK,MAAM,YAAY,IAAI,WAAW,EAAE;4BACtC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;gCAC3B,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;oCAC7B,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;oCACtD,QAAQ,EAAE,gDAAkB,CAAC,OAAO;oCACpC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,8BAA8B,EAAE,YAAY,EAAE,GAAG,CAAC;oCAClE,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC;oCAC/C,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC;iCAChD,CAAC,CAAC;6BACJ;iCAAM;gCACL,gBAAgB,CAAC,sBAAsB,EAAE,CAAC;6BAC3C;yBACF;qBACF;yBAAM;wBACL,MAAM,cAAc,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;wBAC7C,IAAI,cAAc,EAAE;4BAClB,MAAM,wBAAwB,GAAG,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAAC;4BACpE,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,wBAAwB,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;4BAC3F,gBAAgB,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,CAAC;4BAC9D,gBAAgB,CAAC,eAAe,CAAC,wBAAwB,CAAC,CAAC;yBAC5D;qBACF;iBACF;aACF;SACF;QAED,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACrD,IAAI,aAAa,EAAE;YACjB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE;gBAC/B,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC;gBACtB,IAAI,GAAG,EAAE;oBACP,QAAQ,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;iBAC/F;aACF;SACF;IACH,CAAC;IAED,8JAA8J;IAC9J,8DAA8D;IAC9D,SAAS,qBAAqB,CAAC,mBAAmB,EAAE,SAAS,EAAE,SAAS,EAAE,kBAAkB;QAC1F,MAAM,aAAa,GAAG,mBAAmB,CAAC,iBAAiB,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACxF,IAAI,aAAa,GAAG,CAAC,EAAE;YACrB,uCAAuC;YACvC,SAAS,GAAG;gBACV,MAAM,EAAE,SAAS;gBACjB,gBAAgB,EAAE,mBAAmB;gBACrC,eAAe,EAAE,kBAAkB;aACpC,CAAC;SACH;aAAM,IAAI,aAAa,KAAK,CAAC,EAAE;YAC9B,qDAAqD;YACrD,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACpD,SAAS,CAAC,gBAAgB,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;SACjE;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,qFAAqF;IACrF,SAAS,iBAAiB,CACxB,IAAa,EACb,WAAW,EACX,mBAAqC,EACrC,SAA2B,EAC3B,SAAS,EACT,kBAAkB;QAElB,IAAI,CAAC,WAAW,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,WAAW,EAAE,EAAE;YACnG,2CAA2C;YAC3C,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACpD,SAAS,CAAC,gBAAgB,CAAC,iBAAiB,IAAI,mBAAmB,CAAC,iBAAiB,CAAC;YACtF,SAAS,CAAC,gBAAgB,CAAC,sBAAsB,IAAI,mBAAmB,CAAC,sBAAsB,CAAC;SACjG;aAAM;YACL,MAAM,aAAa,GAAG,mBAAmB,CAAC,cAAc,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;YACrF,IACE,aAAa,GAAG,CAAC;gBACjB,CAAC,aAAa,KAAK,CAAC;oBAClB,WAAW;oBACX,SAAS,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ;oBAClC,IAAI,CAAC,IAAI,KAAK,MAAM;oBACpB,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EACtC;gBACA,uCAAuC;gBACvC,SAAS,GAAG;oBACV,MAAM,EAAE,SAAS;oBACjB,gBAAgB,EAAE,mBAAmB;oBACrC,eAAe,EAAE,kBAAkB;iBACpC,CAAC;aACH;iBAAM,IACL,aAAa,KAAK,CAAC;gBACnB,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,sDAAsD;cAC3H;gBACA,qDAAqD;gBACrD,sBAAsB,CAAC,SAAS,EAAE,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;aAC5E;SACF;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,SAAS,sBAAsB,CAC7B,SAA2B,EAC3B,kBAAoC,EACpC,mBAAqC;QAErC,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACpD,SAAS,CAAC,gBAAgB,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;QAChE,SAAS,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,mBAAmB,EAAE;YAClE,WAAW,CAAC,0BAA0B;YACtC,WAAW,CAAC,mBAAmB;YAC/B,WAAW,CAAC,YAAY;SACzB,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,MAAkB,EAAE,cAA0B;IACrE,IAAI,MAAM,EAAE;QACV,IAAI,KAAa,CAAC;QAClB,IAAI,MAAM,CAAC,KAAK,EAAE;YAChB,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;SACtB;aAAM,IAAI,MAAM,CAAC,YAAY,EAAE;YAC9B,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC;SAC7B;aAAM,IAAI,cAAc,CAAC,YAAY,EAAE;YACtC,KAAK,GAAG,cAAc,CAAC,YAAY,CAAC;SACrC;aAAM;YACL,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC;YACnD,IAAI,SAAS,EAAE;gBACb,MAAM,GAAG,GAAG,gBAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACjC,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE;oBACzB,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC;iBACpB;gBACD,KAAK,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;aACxB;SACF;QACD,IAAI,KAAK,EAAE;YACT,OAAO,GAAG,kBAAkB,GAAG,KAAK,EAAE,CAAC;SACxC;KACF;IAED,OAAO,mBAAW,CAAC;AACrB,CAAC;AAED,SAAS,YAAY,CAAC,MAAkB,EAAE,cAA0B;IAClE,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC;IACnD,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACtC,CAAC;AAED,SAAS,iBAAiB,CAAC,WAAwB,EAAE,IAAc;IACjE,OAAO,IAAI,CAAC,CAAC,CAAC,2BAAmB,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AACpE,CAAC;AAED;;;GAGG;AACH,SAAS,wBAAwB,CAC/B,oBAA6B,EAC7B,IAAa,EACb,SAAkB,EAClB,WAAoB;IAEpB,IAAI,CAAC,oBAAoB,EAAE;QACzB,OAAO,KAAK,CAAC;KACd;IAED,0EAA0E;IAC1E,MAAM,cAAc,GAAG,SAAS,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,0CAA0C;IAC1G,IAAI,cAAc,EAAE;QAClB,OAAO,IAAI,CAAC;KACb;IAED,OAAO,IAAA,kBAAQ,EAAC,SAAS,CAAC,IAAI,IAAA,kBAAQ,EAAC,WAAW,CAAC,IAAI,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AAC3F,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { YAMLDocument, SingleYAMLDocument } from './yaml-documents';
|
|
2
2
|
import { TextDocument } from 'vscode-languageserver-textdocument';
|
|
3
3
|
export { YAMLDocument, SingleYAMLDocument };
|
|
4
|
-
export
|
|
4
|
+
export type YamlVersion = '1.1' | '1.2';
|
|
5
5
|
export interface ParserOptions {
|
|
6
6
|
customTags: string[];
|
|
7
7
|
yamlVersion: YamlVersion;
|
|
@@ -8,6 +8,7 @@ exports.UnusedAnchorsValidator = void 0;
|
|
|
8
8
|
const vscode_languageserver_types_1 = require("vscode-languageserver-types");
|
|
9
9
|
const yaml_1 = require("yaml");
|
|
10
10
|
const astUtils_1 = require("../../../languageservice/utils/astUtils");
|
|
11
|
+
const l10n = require("@vscode/l10n");
|
|
11
12
|
class UnusedAnchorsValidator {
|
|
12
13
|
validate(document, yamlDoc) {
|
|
13
14
|
const result = [];
|
|
@@ -37,7 +38,7 @@ class UnusedAnchorsValidator {
|
|
|
37
38
|
const aToken = this.getAnchorNode(anchorParent.get(anchor), anchor);
|
|
38
39
|
if (aToken) {
|
|
39
40
|
const range = vscode_languageserver_types_1.Range.create(document.positionAt(aToken.offset), document.positionAt(aToken.offset + aToken.source.length));
|
|
40
|
-
const warningDiagnostic = vscode_languageserver_types_1.Diagnostic.create(range,
|
|
41
|
+
const warningDiagnostic = vscode_languageserver_types_1.Diagnostic.create(range, l10n.t('unUsedAnchor', aToken.source), vscode_languageserver_types_1.DiagnosticSeverity.Information, 0);
|
|
41
42
|
warningDiagnostic.tags = [vscode_languageserver_types_1.DiagnosticTag.Unnecessary];
|
|
42
43
|
result.push(warningDiagnostic);
|
|
43
44
|
}
|
|
@@ -49,7 +50,7 @@ class UnusedAnchorsValidator {
|
|
|
49
50
|
const startOffset = nodeRange[0];
|
|
50
51
|
const endOffset = nodeRange[1];
|
|
51
52
|
const range = vscode_languageserver_types_1.Range.create(document.positionAt(startOffset), document.positionAt(endOffset));
|
|
52
|
-
const warningDiagnostic = vscode_languageserver_types_1.Diagnostic.create(range,
|
|
53
|
+
const warningDiagnostic = vscode_languageserver_types_1.Diagnostic.create(range, l10n.t('unUsedAlias', node.toString()), vscode_languageserver_types_1.DiagnosticSeverity.Information, 0);
|
|
53
54
|
warningDiagnostic.tags = [vscode_languageserver_types_1.DiagnosticTag.Unnecessary];
|
|
54
55
|
result.push(warningDiagnostic);
|
|
55
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unused-anchors.js","sourceRoot":"","sources":["../../../../../../src/languageservice/services/validation/unused-anchors.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;;AAGhG,6EAAmG;AACnG,+BAAiH;AAIjH,sEAA2E;
|
|
1
|
+
{"version":3,"file":"unused-anchors.js","sourceRoot":"","sources":["../../../../../../src/languageservice/services/validation/unused-anchors.ts"],"names":[],"mappings":"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"}
|