@microsoft/powerquery-language-services 0.3.27 → 0.3.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/lib/powerquery-language-services/analysis/analysis.d.ts +2 -1
  2. package/lib/powerquery-language-services/analysis/analysisBase.d.ts +11 -7
  3. package/lib/powerquery-language-services/analysis/analysisBase.js +77 -44
  4. package/lib/powerquery-language-services/analysis/analysisBase.js.map +1 -1
  5. package/lib/powerquery-language-services/analysis/analysisSettings.d.ts +4 -3
  6. package/lib/powerquery-language-services/analysis/documentAnalysis.js +1 -1
  7. package/lib/powerquery-language-services/analysis/documentAnalysis.js.map +1 -1
  8. package/lib/powerquery-language-services/commonTypes.d.ts +1 -1
  9. package/lib/powerquery-language-services/commonTypes.js +1 -1
  10. package/lib/powerquery-language-services/commonTypes.js.map +1 -1
  11. package/lib/powerquery-language-services/inspection/activeNode/activeNode.d.ts +17 -2
  12. package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.d.ts +1 -2
  13. package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js +61 -20
  14. package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js.map +1 -1
  15. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js +4 -2
  16. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js.map +1 -1
  17. package/lib/powerquery-language-services/inspection/deferenceIdentifier.d.ts +4 -0
  18. package/lib/powerquery-language-services/inspection/deferenceIdentifier.js +93 -0
  19. package/lib/powerquery-language-services/inspection/deferenceIdentifier.js.map +1 -0
  20. package/lib/powerquery-language-services/inspection/index.d.ts +1 -0
  21. package/lib/powerquery-language-services/inspection/index.js +1 -0
  22. package/lib/powerquery-language-services/inspection/index.js.map +1 -1
  23. package/lib/powerquery-language-services/inspection/scope/scopeInspection.d.ts +1 -2
  24. package/lib/powerquery-language-services/inspection/scope/scopeInspection.js +11 -111
  25. package/lib/powerquery-language-services/inspection/scope/scopeInspection.js.map +1 -1
  26. package/lib/powerquery-language-services/inspection/scope/scopeUtils.d.ts +1 -1
  27. package/lib/powerquery-language-services/inspection/scope/scopeUtils.js +6 -8
  28. package/lib/powerquery-language-services/inspection/scope/scopeUtils.js.map +1 -1
  29. package/lib/powerquery-language-services/inspection/task.js +1 -1
  30. package/lib/powerquery-language-services/inspection/task.js.map +1 -1
  31. package/lib/powerquery-language-services/inspection/type/inspectType/common.d.ts +1 -3
  32. package/lib/powerquery-language-services/inspection/type/inspectType/common.js +26 -89
  33. package/lib/powerquery-language-services/inspection/type/inspectType/common.js.map +1 -1
  34. package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js +7 -10
  35. package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js.map +1 -1
  36. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js +8 -4
  37. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js.map +1 -1
  38. package/lib/powerquery-language-services/inspection/type/task.js +4 -8
  39. package/lib/powerquery-language-services/inspection/type/task.js.map +1 -1
  40. package/lib/powerquery-language-services/providers/commonTypes.d.ts +13 -8
  41. package/lib/powerquery-language-services/providers/index.d.ts +1 -1
  42. package/lib/powerquery-language-services/providers/index.js +3 -3
  43. package/lib/powerquery-language-services/providers/index.js.map +1 -1
  44. package/lib/powerquery-language-services/providers/languageCompletionItemProvider.d.ts +2 -2
  45. package/lib/powerquery-language-services/providers/librarySymbolProvider.d.ts +2 -2
  46. package/lib/powerquery-language-services/providers/librarySymbolProvider.js +2 -2
  47. package/lib/powerquery-language-services/providers/librarySymbolProvider.js.map +1 -1
  48. package/lib/powerquery-language-services/providers/localDocumentProvider.d.ts +21 -0
  49. package/lib/powerquery-language-services/providers/{localDocumentSymbolProvider.js → localDocumentProvider.js} +42 -9
  50. package/lib/powerquery-language-services/providers/localDocumentProvider.js.map +1 -0
  51. package/lib/powerquery-language-services/providers/nullSymbolProvider.d.ts +4 -2
  52. package/lib/powerquery-language-services/providers/nullSymbolProvider.js +6 -0
  53. package/lib/powerquery-language-services/providers/nullSymbolProvider.js.map +1 -1
  54. package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js +11 -0
  55. package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js.map +1 -1
  56. package/lib/powerquery-language-services/validate/validateLexAndParse.js +1 -18
  57. package/lib/powerquery-language-services/validate/validateLexAndParse.js.map +1 -1
  58. package/package.json +3 -3
  59. package/lib/powerquery-language-services/providers/localDocumentSymbolProvider.d.ts +0 -18
  60. package/lib/powerquery-language-services/providers/localDocumentSymbolProvider.js.map +0 -1
@@ -11,15 +11,17 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  });
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.LocalDocumentSymbolProvider = void 0;
14
+ exports.LocalDocumentProvider = void 0;
15
15
  const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
16
16
  const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
17
17
  const vscode_languageserver_types_1 = require("vscode-languageserver-types");
18
18
  const powerquery_parser_1 = require("@microsoft/powerquery-parser");
19
19
  const InspectionUtils = require("../inspectionUtils");
20
20
  const __1 = require("..");
21
- class LocalDocumentSymbolProvider {
22
- constructor(library, promiseMaybeInspected, createInspectionSettingsFn) {
21
+ const inspection_1 = require("../inspection");
22
+ class LocalDocumentProvider {
23
+ constructor(library, uri, promiseMaybeInspected, createInspectionSettingsFn) {
24
+ this.uri = uri;
23
25
  this.promiseMaybeInspected = promiseMaybeInspected;
24
26
  this.createInspectionSettingsFn = createInspectionSettingsFn;
25
27
  this.externalTypeResolver = library.externalTypeResolver;
@@ -41,6 +43,37 @@ class LocalDocumentSymbolProvider {
41
43
  return result;
42
44
  });
43
45
  }
46
+ getDefinition(context) {
47
+ return __awaiter(this, void 0, void 0, function* () {
48
+ const trace = context.traceManager.entry("LocalDocumentSymbolProvider" /* LocalDocumentSymbolProvider */, this.getDefinition.name, context.maybeInitialCorrelationId);
49
+ if (context.identifier.kind === "GeneralizedIdentifier" /* GeneralizedIdentifier */ ||
50
+ context.identifier.identifierContextKind !== "Value" /* Value */) {
51
+ return null;
52
+ }
53
+ const maybeInspected = yield this.promiseMaybeInspected;
54
+ if (maybeInspected === undefined) {
55
+ return null;
56
+ }
57
+ const triedNodeScope = yield maybeInspected.triedNodeScope;
58
+ if (powerquery_parser_1.ResultUtils.isError(triedNodeScope)) {
59
+ return null;
60
+ }
61
+ const maybeScopeItem = triedNodeScope.value.get(context.identifier.literal);
62
+ if (maybeScopeItem === undefined) {
63
+ return null;
64
+ }
65
+ const creator = inspection_1.ScopeUtils.maybeScopeCreatorIdentifier(maybeScopeItem);
66
+ if (creator === undefined) {
67
+ return null;
68
+ }
69
+ const result = {
70
+ range: __1.PositionUtils.createRangeFromTokenRange(creator.tokenRange),
71
+ uri: this.uri,
72
+ };
73
+ trace.exit();
74
+ return [result];
75
+ });
76
+ }
44
77
  getHover(context) {
45
78
  return __awaiter(this, void 0, void 0, function* () {
46
79
  const trace = context.traceManager.entry("LocalDocumentSymbolProvider" /* LocalDocumentSymbolProvider */, this.getHover.name, context.maybeInitialCorrelationId);
@@ -54,7 +87,7 @@ class LocalDocumentSymbolProvider {
54
87
  trace.exit({ outOfBounds: true });
55
88
  return null;
56
89
  }
57
- let maybeHover = yield LocalDocumentSymbolProvider.getHoverForIdentifierPairedExpression(context, this.createInspectionSettingsFn(), maybeInspected, activeNode, trace.id);
90
+ let maybeHover = yield LocalDocumentProvider.getHoverForIdentifierPairedExpression(context, this.createInspectionSettingsFn(), maybeInspected, activeNode, trace.id);
58
91
  if (maybeHover !== undefined) {
59
92
  trace.exit({ maybeHover: true });
60
93
  return maybeHover;
@@ -65,7 +98,7 @@ class LocalDocumentSymbolProvider {
65
98
  trace.exit({ inspectionError: true });
66
99
  return null;
67
100
  }
68
- maybeHover = LocalDocumentSymbolProvider.getHoverForScopeItem(context, triedNodeScope.value, triedScopeType.value, trace.id);
101
+ maybeHover = LocalDocumentProvider.getHoverForScopeItem(context, triedNodeScope.value, triedScopeType.value, trace.id);
69
102
  trace.exit();
70
103
  return maybeHover !== null && maybeHover !== void 0 ? maybeHover : null;
71
104
  });
@@ -147,7 +180,7 @@ class LocalDocumentSymbolProvider {
147
180
  contents: {
148
181
  kind: vscode_languageserver_types_1.MarkupKind.PlainText,
149
182
  language: "powerquery",
150
- value: `[${scopeItemText}] ${context.identifier}: ${nameOfExpressionType}`,
183
+ value: `[${scopeItemText}] ${context.identifier.literal}: ${nameOfExpressionType}`,
151
184
  },
152
185
  range: undefined,
153
186
  };
@@ -156,7 +189,7 @@ class LocalDocumentSymbolProvider {
156
189
  });
157
190
  }
158
191
  static getHoverForScopeItem(context, nodeScope, scopeType, correlationId) {
159
- const identifierLiteral = context.identifier;
192
+ const identifierLiteral = context.identifier.literal;
160
193
  const maybeScopeItem = nodeScope.get(identifierLiteral);
161
194
  if (maybeScopeItem === undefined || maybeScopeItem.kind === "Undefined" /* Undefined */) {
162
195
  return undefined;
@@ -192,5 +225,5 @@ class LocalDocumentSymbolProvider {
192
225
  : [];
193
226
  }
194
227
  }
195
- exports.LocalDocumentSymbolProvider = LocalDocumentSymbolProvider;
196
- //# sourceMappingURL=localDocumentSymbolProvider.js.map
228
+ exports.LocalDocumentProvider = LocalDocumentProvider;
229
+ //# sourceMappingURL=localDocumentProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localDocumentProvider.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/providers/localDocumentProvider.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { AutocompleteItemProviderContext, HoverProviderContext, ISymbolProvider, SignatureProviderContext } from "./commonTypes";
1
+ import { Location } from "vscode-languageserver-types";
2
+ import { AutocompleteItemProviderContext, ISymbolProvider, OnIdentifierProviderContext, SignatureProviderContext } from "./commonTypes";
2
3
  import { Hover, SignatureHelp } from "../commonTypes";
3
4
  import { Inspection, Library } from "..";
4
5
  import { AutocompleteItem } from "../inspection/autocomplete";
@@ -8,6 +9,7 @@ export declare class NullSymbolProvider implements ISymbolProvider {
8
9
  private static instance;
9
10
  static singleton(): NullSymbolProvider;
10
11
  getAutocompleteItems(_context: AutocompleteItemProviderContext): Promise<ReadonlyArray<AutocompleteItem>>;
11
- getHover(_context: HoverProviderContext): Promise<Hover | null>;
12
+ getDefinition(_context: OnIdentifierProviderContext): Promise<Location[] | null>;
13
+ getHover(_context: OnIdentifierProviderContext): Promise<Hover | null>;
12
14
  getSignatureHelp(_context: SignatureProviderContext): Promise<SignatureHelp | null>;
13
15
  }
@@ -31,6 +31,12 @@ class NullSymbolProvider {
31
31
  });
32
32
  }
33
33
  // eslint-disable-next-line require-await
34
+ getDefinition(_context) {
35
+ return __awaiter(this, void 0, void 0, function* () {
36
+ return [];
37
+ });
38
+ }
39
+ // eslint-disable-next-line require-await
34
40
  getHover(_context) {
35
41
  return __awaiter(this, void 0, void 0, function* () {
36
42
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"nullSymbolProvider.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/providers/nullSymbolProvider.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AASlC,0BAAyC;AAGzC,MAAa,kBAAkB;IAA/B;QACoB,yBAAoB,GAChC,cAAU,CAAC,YAAY,CAAC,wBAAwB,CAAC;QACrC,uBAAkB,GAA+B,IAAI,GAAG,EAAE,CAAC;IA4B/E,CAAC;IAxBU,MAAM,CAAC,SAAS;QACnB,IAAI,kBAAkB,CAAC,QAAQ,KAAK,SAAS,EAAE;YAC3C,kBAAkB,CAAC,QAAQ,GAAG,IAAI,kBAAkB,EAAE,CAAC;SAC1D;QAED,OAAO,kBAAkB,CAAC,QAAQ,CAAC;IACvC,CAAC;IAED,yCAAyC;IAC5B,oBAAoB,CAC7B,QAAyC;;YAEzC,OAAO,EAAE,CAAC;QACd,CAAC;KAAA;IAED,yCAAyC;IAC5B,QAAQ,CAAC,QAA8B;;YAChD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IAED,yCAAyC;IAC5B,gBAAgB,CAAC,QAAkC;;YAC5D,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;CACJ;AA/BD,gDA+BC"}
1
+ {"version":3,"file":"nullSymbolProvider.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/providers/nullSymbolProvider.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAWlC,0BAAyC;AAGzC,MAAa,kBAAkB;IAA/B;QACoB,yBAAoB,GAChC,cAAU,CAAC,YAAY,CAAC,wBAAwB,CAAC;QACrC,uBAAkB,GAA+B,IAAI,GAAG,EAAE,CAAC;IAiC/E,CAAC;IA7BU,MAAM,CAAC,SAAS;QACnB,IAAI,kBAAkB,CAAC,QAAQ,KAAK,SAAS,EAAE;YAC3C,kBAAkB,CAAC,QAAQ,GAAG,IAAI,kBAAkB,EAAE,CAAC;SAC1D;QAED,OAAO,kBAAkB,CAAC,QAAQ,CAAC;IACvC,CAAC;IAED,yCAAyC;IAC5B,oBAAoB,CAC7B,QAAyC;;YAEzC,OAAO,EAAE,CAAC;QACd,CAAC;KAAA;IAED,yCAAyC;IAC5B,aAAa,CAAC,QAAqC;;YAC5D,OAAO,EAAE,CAAC;QACd,CAAC;KAAA;IAED,yCAAyC;IAC5B,QAAQ,CAAC,QAAqC;;YACvD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IAED,yCAAyC;IAC5B,gBAAgB,CAAC,QAAkC;;YAC5D,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;CACJ;AApCD,gDAoCC"}
@@ -49,6 +49,7 @@ function validateDuplicateIdentifiers(textDocument, validationSettings) {
49
49
  const result = [
50
50
  ...validateDuplicateIdentifiersForLetExpresion(documentUri, nodeIdMapCollection, updatedSettings, trace.id),
51
51
  ...validateDuplicateIdentifiersForRecord(documentUri, nodeIdMapCollection, updatedSettings, trace.id),
52
+ ...validateDuplicateIdentifiersForRecordType(documentUri, nodeIdMapCollection, updatedSettings, trace.id),
52
53
  ...validateDuplicateIdentifiersForSection(documentUri, nodeIdMapCollection, updatedSettings, trace.id),
53
54
  ];
54
55
  trace.exit();
@@ -75,6 +76,16 @@ function validateDuplicateIdentifiersForRecord(documentUri, nodeIdMapCollection,
75
76
  trace.exit();
76
77
  return result;
77
78
  }
79
+ function validateDuplicateIdentifiersForRecordType(documentUri, nodeIdMapCollection, validationSettings, correlationId) {
80
+ var _a;
81
+ const trace = validationSettings.traceManager.entry("Validation" /* Validation */, validateDuplicateIdentifiersForRecordType.name, correlationId);
82
+ const recordTypeIds = [
83
+ (_a = nodeIdMapCollection.idsByNodeKind.get("RecordType" /* RecordType */)) !== null && _a !== void 0 ? _a : new Set(),
84
+ ];
85
+ const result = validateDuplicateIdentifiersForKeyValuePair(documentUri, nodeIdMapCollection, recordTypeIds, parser_1.NodeIdMapIterator.iterRecordType, validationSettings, trace.id);
86
+ trace.exit();
87
+ return result;
88
+ }
78
89
  function validateDuplicateIdentifiersForSection(documentUri, nodeIdMapCollection, validationSettings, correlationId) {
79
90
  var _a;
80
91
  const trace = validationSettings.traceManager.entry("Validation" /* Validation */, validateDuplicateIdentifiersForSection.name, correlationId);
@@ -1 +1 @@
1
- {"version":3,"file":"validateDuplicateIdentifiers.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/validate/validateDuplicateIdentifiers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validateDuplicateIdentifiers.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/validate/validateDuplicateIdentifiers.ts"],"names":[],"mappings":"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"}
@@ -79,26 +79,9 @@ function validateParse(triedParse, validationSettings) {
79
79
  }
80
80
  const error = triedParse.error;
81
81
  const innerError = error.innerError;
82
+ const maybeErrorToken = PQP.Parser.ParseError.maybeTokenFrom(innerError);
82
83
  const message = error.message;
83
84
  const parseContextState = error.state.contextState;
84
- let maybeErrorToken;
85
- if ((innerError instanceof PQP.Parser.ParseError.ExpectedAnyTokenKindError ||
86
- innerError instanceof PQP.Parser.ParseError.ExpectedTokenKindError) &&
87
- innerError.maybeFoundToken !== undefined) {
88
- maybeErrorToken = innerError.maybeFoundToken.token;
89
- }
90
- else if (innerError instanceof PQP.Parser.ParseError.InvalidPrimitiveTypeError) {
91
- maybeErrorToken = innerError.token;
92
- }
93
- else if (innerError instanceof PQP.Parser.ParseError.UnterminatedSequence) {
94
- maybeErrorToken = innerError.startToken;
95
- }
96
- else if (innerError instanceof PQP.Parser.ParseError.UnusedTokensRemainError) {
97
- maybeErrorToken = innerError.firstUnusedToken;
98
- }
99
- else {
100
- maybeErrorToken = undefined;
101
- }
102
85
  let range;
103
86
  if (maybeErrorToken !== undefined) {
104
87
  range = {
@@ -1 +1 @@
1
- {"version":3,"file":"validateLexAndParse.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/validate/validateLexAndParse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validateLexAndParse.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/validate/validateLexAndParse.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@microsoft/powerquery-language-services",
3
- "version": "0.3.27",
3
+ "version": "0.3.35",
4
4
  "author": "Microsoft",
5
5
  "license": "MIT",
6
6
  "scripts": {
@@ -49,8 +49,8 @@
49
49
  "typescript": "4.6.4"
50
50
  },
51
51
  "dependencies": {
52
- "@microsoft/powerquery-formatter": "0.1.1",
53
- "@microsoft/powerquery-parser": "0.9.1",
52
+ "@microsoft/powerquery-formatter": "0.1.5",
53
+ "@microsoft/powerquery-parser": "0.9.4",
54
54
  "vscode-languageserver-textdocument": "1.0.4",
55
55
  "vscode-languageserver-types": "3.17.1"
56
56
  },
@@ -1,18 +0,0 @@
1
- import { Hover, SignatureHelp } from "vscode-languageserver-types";
2
- import { AutocompleteItemProviderContext, HoverProviderContext, ISymbolProvider, SignatureProviderContext } from "./commonTypes";
3
- import { Inspection, Library } from "..";
4
- import { InspectionSettings } from "../inspectionSettings";
5
- export declare class LocalDocumentSymbolProvider implements ISymbolProvider {
6
- private readonly promiseMaybeInspected;
7
- private readonly createInspectionSettingsFn;
8
- readonly externalTypeResolver: Inspection.ExternalType.TExternalTypeResolverFn;
9
- readonly libraryDefinitions: Library.LibraryDefinitions;
10
- constructor(library: Library.ILibrary, promiseMaybeInspected: Promise<Inspection.Inspected | undefined>, createInspectionSettingsFn: () => InspectionSettings);
11
- getAutocompleteItems(context: AutocompleteItemProviderContext): Promise<ReadonlyArray<Inspection.AutocompleteItem>>;
12
- getHover(context: HoverProviderContext): Promise<Hover | null>;
13
- getSignatureHelp(context: SignatureProviderContext): Promise<SignatureHelp | null>;
14
- protected static getHoverForIdentifierPairedExpression(context: HoverProviderContext, inspectionSettings: InspectionSettings, inspected: Inspection.Inspected, activeNode: Inspection.ActiveNode, correlationId: number): Promise<Hover | undefined>;
15
- protected static getHoverForScopeItem(context: HoverProviderContext, nodeScope: Inspection.NodeScope, scopeType: Inspection.ScopeTypeByKey, correlationId: number): Hover | undefined;
16
- private getMaybeInspectionInvokeExpression;
17
- private getAutocompleteItemsFromFieldAccess;
18
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"localDocumentSymbolProvider.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/providers/localDocumentSymbolProvider.ts"],"names":[],"mappings":"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"}