@nowline/mcp 0.8.5 → 0.9.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.
Files changed (67) hide show
  1. package/dist/branding.d.ts +3 -3
  2. package/dist/branding.js +3 -3
  3. package/dist/capabilities.d.ts.map +1 -1
  4. package/dist/capabilities.js +2 -9
  5. package/dist/capabilities.js.map +1 -1
  6. package/dist/diagnostics.d.ts +46 -18
  7. package/dist/diagnostics.d.ts.map +1 -1
  8. package/dist/diagnostics.js +77 -25
  9. package/dist/diagnostics.js.map +1 -1
  10. package/dist/generated/resources.d.ts.map +1 -1
  11. package/dist/generated/resources.js +15 -3
  12. package/dist/generated/resources.js.map +1 -1
  13. package/dist/generated/ui-bundle.d.ts.map +1 -1
  14. package/dist/generated/ui-bundle.js +2 -2
  15. package/dist/generated/ui-bundle.js.map +1 -1
  16. package/dist/http.d.ts +4 -0
  17. package/dist/http.d.ts.map +1 -0
  18. package/dist/http.js +23 -0
  19. package/dist/http.js.map +1 -0
  20. package/dist/index.js +7 -13
  21. package/dist/index.js.map +1 -1
  22. package/dist/options.d.ts +26 -0
  23. package/dist/options.d.ts.map +1 -0
  24. package/dist/options.js +55 -0
  25. package/dist/options.js.map +1 -0
  26. package/dist/prompts.d.ts +1 -1
  27. package/dist/prompts.d.ts.map +1 -1
  28. package/dist/prompts.js +6 -6
  29. package/dist/prompts.js.map +1 -1
  30. package/dist/reference-cheatsheet.d.ts +1 -1
  31. package/dist/reference-cheatsheet.d.ts.map +1 -1
  32. package/dist/reference-cheatsheet.js +27 -2
  33. package/dist/reference-cheatsheet.js.map +1 -1
  34. package/dist/schema-vocab.d.ts +5 -3
  35. package/dist/schema-vocab.d.ts.map +1 -1
  36. package/dist/schema-vocab.js +9 -0
  37. package/dist/schema-vocab.js.map +1 -1
  38. package/dist/schemas.d.ts +9 -7
  39. package/dist/schemas.d.ts.map +1 -1
  40. package/dist/schemas.js +2 -0
  41. package/dist/schemas.js.map +1 -1
  42. package/dist/server.d.ts +1 -1
  43. package/dist/server.d.ts.map +1 -1
  44. package/dist/server.js +151 -59
  45. package/dist/server.js.map +1 -1
  46. package/dist/ui/entry.js +5 -12
  47. package/dist/ui/entry.js.map +1 -1
  48. package/dist/ui/payload.d.ts +14 -0
  49. package/dist/ui/payload.d.ts.map +1 -1
  50. package/dist/ui/payload.js +23 -0
  51. package/dist/ui/payload.js.map +1 -1
  52. package/package.json +24 -17
  53. package/src/branding.ts +3 -3
  54. package/src/capabilities.ts +4 -2
  55. package/src/diagnostics.ts +99 -39
  56. package/src/generated/resources.ts +15 -3
  57. package/src/generated/ui-bundle.ts +2 -2
  58. package/src/http.ts +28 -0
  59. package/src/index.ts +7 -14
  60. package/src/options.ts +79 -0
  61. package/src/prompts.ts +7 -7
  62. package/src/reference-cheatsheet.ts +27 -2
  63. package/src/schema-vocab.ts +9 -0
  64. package/src/schemas.ts +2 -0
  65. package/src/server.ts +200 -60
  66. package/src/ui/entry.ts +6 -11
  67. package/src/ui/payload.ts +26 -0
@@ -8,9 +8,9 @@
8
8
  * Regenerate data URIs after asset changes:
9
9
  * base64 -i branding/marketplace-publisher-icon.png | tr -d '\n'
10
10
  *
11
- * Per-tool / per-prompt icons: add icons: NOWLINE_MCP_ICONS to each registerTool /
12
- * registerPrompt config once @modelcontextprotocol/sdk exposes icons on those config types
13
- * (SDK 1.29.0 registerTool config does not include icons yet).
11
+ * Per-tool / per-prompt icons: @modelcontextprotocol/server 2.x accepts `icons` on the
12
+ * registerTool / registerPrompt config (the v1 sdk did not). Wiring NOWLINE_MCP_ICONS
13
+ * into each descriptor is its own change; see specs/mcp.md.
14
14
  */
15
15
  export declare const NOWLINE_MCP_ICONS: {
16
16
  src: string;
package/dist/branding.js CHANGED
@@ -8,9 +8,9 @@
8
8
  * Regenerate data URIs after asset changes:
9
9
  * base64 -i branding/marketplace-publisher-icon.png | tr -d '\n'
10
10
  *
11
- * Per-tool / per-prompt icons: add icons: NOWLINE_MCP_ICONS to each registerTool /
12
- * registerPrompt config once @modelcontextprotocol/sdk exposes icons on those config types
13
- * (SDK 1.29.0 registerTool config does not include icons yet).
11
+ * Per-tool / per-prompt icons: @modelcontextprotocol/server 2.x accepts `icons` on the
12
+ * registerTool / registerPrompt config (the v1 sdk did not). Wiring NOWLINE_MCP_ICONS
13
+ * into each descriptor is its own change; see specs/mcp.md.
14
14
  */
15
15
  export const NOWLINE_MCP_ICONS = [
16
16
  {
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,kBAAkB;IAC/B,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC;AAED,eAAO,MAAM,YAAY,EAAE,kBAO1B,CAAC"}
1
+ {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,kBAAkB;IAC/B,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC;AAED,eAAO,MAAM,YAAY,EAAE,kBAO1B,CAAC"}
@@ -1,13 +1,6 @@
1
- // Aggregated server capabilities. Used by the `capabilities` tool and the
2
- // individual `list-*` projection tools. Values are hardcoded to their stable
3
- // registry sources and must be kept in sync with:
4
- // - themes: @nowline/layout/src/themes/index.ts (ThemeName)
5
- // - icons: @nowline/renderer/src/svg/icons.ts (CAPACITY_ICON_SVG keys)
6
- // - locales: @nowline/core/src/i18n (message bundle files)
7
- // - formats: @nowline/export ExportFormat union
8
- // - templates: @nowline/core TEMPLATE_NAMES
1
+ import { THEME_NAMES } from '@nowline/layout';
9
2
  export const CAPABILITIES = {
10
- themes: ['light', 'dark', 'grayscale'],
3
+ themes: THEME_NAMES,
11
4
  // Built-in `capacity-icon:` vocabulary (CAPACITY_ICON_SVG keys).
12
5
  icons: ['person', 'people', 'points', 'time'],
13
6
  locales: ['en', 'fr', 'fr-CA', 'fr-FR'],
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,6EAA6E;AAC7E,kDAAkD;AAClD,8DAA8D;AAC9D,yEAAyE;AACzE,6DAA6D;AAC7D,kDAAkD;AAClD,8CAA8C;AAU9C,MAAM,CAAC,MAAM,YAAY,GAAuB;IAC5C,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC;IACtC,iEAAiE;IACjE,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC;IAC7C,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC;IACvC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC;IAC3E,SAAS,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC;CACzD,CAAC"}
1
+ {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAmB9C,MAAM,CAAC,MAAM,YAAY,GAAuB;IAC5C,MAAM,EAAE,WAAW;IACnB,iEAAiE;IACjE,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC;IAC7C,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC;IACvC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC;IAC3E,SAAS,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC;CACzD,CAAC"}
@@ -1,4 +1,5 @@
1
- import { type NowlineFile } from '@nowline/core';
1
+ import { type NowlineFile, type ResolveDiagnostic } from '@nowline/core';
2
+ import { type HostEnv, type RenderInputs, type StagedRoadmap, type StageResult } from '@nowline/export';
2
3
  import { type LayoutInsight } from '@nowline/layout';
3
4
  export interface McpDiagnostic {
4
5
  file: string;
@@ -22,9 +23,32 @@ export declare function getMcpServices(): {
22
23
  };
23
24
  export declare function buildDocument(source: string): Promise<import("langium").LangiumDocument<NowlineFile>>;
24
25
  export declare function collectMcpDiagnostics(doc: Awaited<ReturnType<typeof buildDocument>>, filePath: string): McpDiagnostic[];
26
+ /**
27
+ * A routed include-resolver diagnostic (a wave rule, specs/waves.md §6.1, or
28
+ * an included file's NL.E0302) as an MCP diagnostic: its stable code, the
29
+ * file it points into and a 1-based line and column, the validator's for the
30
+ * same finding when the diagnostic carries a range (column 1 otherwise).
31
+ * WV8, the one uncoded wave rule, is labelled like the validator's copy. An
32
+ * included file's syntax error takes its position from the lexer or parser.
33
+ */
34
+ export declare function resolveDiagnosticToMcp(diag: ResolveDiagnostic): McpDiagnostic;
35
+ /** The routed diagnostics among `diagnostics`, as MCP diagnostics. */
36
+ export declare function routedResolveDiagnosticsToMcp(diagnostics: readonly ResolveDiagnostic[]): McpDiagnostic[];
25
37
  export declare function diagnosticsErrorResponse(filePath: string, diagnostics: McpDiagnostic[]): {
26
38
  content: {
27
- type: "text";
39
+ type: 'text';
40
+ text: string;
41
+ }[];
42
+ isError: true;
43
+ };
44
+ /**
45
+ * The error response when include resolution reports a routed (wave-rule)
46
+ * error: the validator's diagnostics (warnings only, since `doc` validated)
47
+ * followed by `routed`.
48
+ */
49
+ export declare function includeDiagnosticsResponse(doc: Awaited<ReturnType<typeof buildDocument>>, filePath: string, routed: McpDiagnostic[]): {
50
+ content: {
51
+ type: 'text';
28
52
  text: string;
29
53
  }[];
30
54
  isError: true;
@@ -36,20 +60,24 @@ export declare function diagnosticsErrorBlock(source: string, filePath: string):
36
60
  ok: false;
37
61
  response: ReturnType<typeof diagnosticsErrorResponse>;
38
62
  }>;
39
- export interface LayoutInsightInputs {
40
- source: string;
41
- filePath: string;
42
- today?: Date;
43
- theme?: 'light' | 'dark' | 'grayscale';
44
- width?: number;
45
- locale?: string;
46
- readFile?: (absPath: string) => Promise<string>;
47
- /** Pre-built document to reuse instead of re-parsing `source`. The
48
- * caller is responsible for passing a doc parsed from the same
49
- * `source` (e.g. the one from `diagnosticsErrorBlock`). */
50
- doc?: Awaited<ReturnType<typeof buildDocument>>;
51
- }
52
- export declare function collectMcpLayoutInsights(inputs: LayoutInsightInputs): Promise<McpInsight[]>;
63
+ /**
64
+ * Stage a validated document once for a tool call: the render, the export,
65
+ * the insights and the routed include diagnostics all read this one result.
66
+ * `doc` is the document `diagnosticsErrorBlock` (or `validate`) already built
67
+ * from `source`, so nothing is parsed again.
68
+ */
69
+ export declare function stageMcpRoadmap(doc: Awaited<ReturnType<typeof buildDocument>>, source: string, inputs: RenderInputs, host: HostEnv): Promise<StageResult>;
70
+ /**
71
+ * The routed (wave-rule) include diagnostics a stage reports, as MCP
72
+ * diagnostics, errors included. An uncoded include error takes precedence and
73
+ * hides them, as does a validator error (specs/waves.md §6.1).
74
+ */
75
+ export declare function stageRoutedDiagnostics(stage: StageResult): McpDiagnostic[];
76
+ /**
77
+ * Layout insights read from a staged roadmap's model: the layout the render
78
+ * draws, logo included, so the insights describe the same header and chart.
79
+ */
80
+ export declare function layoutInsightsFromStage(stage: StagedRoadmap): McpInsight[];
53
81
  export declare const LAYOUT_INSIGHT_HINT: string;
54
82
  export declare const REVIEW_MAX_WIDTH = 1024;
55
83
  export declare const DEFAULT_RENDER_WIDTH = 1280;
@@ -66,7 +94,7 @@ export declare class InputRequiredError extends Error {
66
94
  }
67
95
  export declare function toolError(code: string, message: string): {
68
96
  content: {
69
- type: "text";
97
+ type: 'text';
70
98
  text: string;
71
99
  }[];
72
100
  isError: true;
@@ -77,7 +105,7 @@ export declare function mapFsError(err: unknown, filePath: string): {
77
105
  };
78
106
  export declare function handleToolError(err: unknown, filePath?: string): {
79
107
  content: {
80
- type: "text";
108
+ type: 'text';
81
109
  text: string;
82
110
  }[];
83
111
  isError: true;
@@ -1 +1 @@
1
- {"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../src/diagnostics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../src/diagnostics.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  // MCP diagnostic helpers — maps Langium/core diagnostics to the MCP tool shape.
2
- import { collectDocumentDiagnostics, createNowlineServices, extractSuggestion, resolveDiagnosticCode, resolveIncludes, } from '@nowline/core';
3
- import { collectLayoutInsights, layoutRoadmap } from '@nowline/layout';
2
+ import { collectDocumentDiagnostics, createNowlineServices, extractSuggestion, inferCodeFromMessage, isRoutedResolveDiagnostic, resolveDiagnosticCode, } from '@nowline/core';
3
+ import { stageForExport, } from '@nowline/export';
4
+ import { collectLayoutInsights } from '@nowline/layout';
4
5
  import { URI } from 'langium';
5
6
  export function layoutInsightToMcp(insight) {
6
7
  return {
@@ -55,6 +56,45 @@ export function collectMcpDiagnostics(doc, filePath) {
55
56
  }
56
57
  return out;
57
58
  }
59
+ /**
60
+ * A routed include-resolver diagnostic (a wave rule, specs/waves.md §6.1, or
61
+ * an included file's NL.E0302) as an MCP diagnostic: its stable code, the
62
+ * file it points into and a 1-based line and column, the validator's for the
63
+ * same finding when the diagnostic carries a range (column 1 otherwise).
64
+ * WV8, the one uncoded wave rule, is labelled like the validator's copy. An
65
+ * included file's syntax error takes its position from the lexer or parser.
66
+ */
67
+ export function resolveDiagnosticToMcp(diag) {
68
+ // An included file's syntax error, labelled like the root file's own.
69
+ if (diag.syntax) {
70
+ const column = diag.syntax.origin === 'lexer'
71
+ ? diag.syntax.error.column
72
+ : diag.syntax.error.token?.startColumn;
73
+ return {
74
+ file: diag.sourcePath,
75
+ line: (diag.line ?? 0) + 1,
76
+ // An error at end of input has no position (NaN).
77
+ column: column !== undefined && Number.isFinite(column) ? column : 1,
78
+ severity: 'error',
79
+ code: diag.syntax.origin === 'lexer' ? 'lexing-error' : 'parsing-error',
80
+ message: diag.message,
81
+ };
82
+ }
83
+ const suggestion = extractSuggestion(diag.message);
84
+ return {
85
+ file: diag.sourcePath,
86
+ line: (diag.range?.start.line ?? diag.line ?? 0) + 1,
87
+ column: (diag.range?.start.character ?? 0) + 1,
88
+ severity: diag.severity,
89
+ code: diag.code ?? inferCodeFromMessage(diag.message),
90
+ message: diag.message,
91
+ ...(suggestion === undefined ? {} : { suggestion }),
92
+ };
93
+ }
94
+ /** The routed diagnostics among `diagnostics`, as MCP diagnostics. */
95
+ export function routedResolveDiagnosticsToMcp(diagnostics) {
96
+ return diagnostics.filter(isRoutedResolveDiagnostic).map(resolveDiagnosticToMcp);
97
+ }
58
98
  export function diagnosticsErrorResponse(filePath, diagnostics) {
59
99
  return {
60
100
  content: [
@@ -66,6 +106,14 @@ export function diagnosticsErrorResponse(filePath, diagnostics) {
66
106
  isError: true,
67
107
  };
68
108
  }
109
+ /**
110
+ * The error response when include resolution reports a routed (wave-rule)
111
+ * error: the validator's diagnostics (warnings only, since `doc` validated)
112
+ * followed by `routed`.
113
+ */
114
+ export function includeDiagnosticsResponse(doc, filePath, routed) {
115
+ return diagnosticsErrorResponse(filePath, [...collectMcpDiagnostics(doc, filePath), ...routed]);
116
+ }
69
117
  export async function diagnosticsErrorBlock(source, filePath) {
70
118
  const doc = await buildDocument(source);
71
119
  const diagnostics = collectMcpDiagnostics(doc, filePath);
@@ -74,30 +122,34 @@ export async function diagnosticsErrorBlock(source, filePath) {
74
122
  }
75
123
  return { ok: true, doc };
76
124
  }
77
- export async function collectMcpLayoutInsights(inputs) {
78
- const doc = inputs.doc ?? (await buildDocument(inputs.source));
79
- const diagnostics = collectMcpDiagnostics(doc, inputs.filePath);
80
- if (diagnostics.some((d) => d.severity === 'error')) {
81
- return [];
82
- }
83
- const services = getMcpServices();
84
- const file = doc.parseResult.value;
85
- const resolved = await resolveIncludes(file, inputs.filePath, {
86
- services: services.Nowline,
87
- readFile: inputs.readFile,
88
- });
89
- if (resolved.diagnostics.some((d) => d.severity === 'error')) {
90
- return [];
125
+ /**
126
+ * Stage a validated document once for a tool call: the render, the export,
127
+ * the insights and the routed include diagnostics all read this one result.
128
+ * `doc` is the document `diagnosticsErrorBlock` (or `validate`) already built
129
+ * from `source`, so nothing is parsed again.
130
+ */
131
+ export function stageMcpRoadmap(doc, source, inputs, host) {
132
+ return stageForExport(source, inputs, host, { document: doc, services: getMcpServices() });
133
+ }
134
+ /**
135
+ * The routed (wave-rule) include diagnostics a stage reports, as MCP
136
+ * diagnostics, errors included. An uncoded include error takes precedence and
137
+ * hides them, as does a validator error (specs/waves.md §6.1).
138
+ */
139
+ export function stageRoutedDiagnostics(stage) {
140
+ if (stage.kind === 'staged' || (stage.kind === 'include-error' && !stage.legacy)) {
141
+ return stage.routed.map(resolveDiagnosticToMcp);
91
142
  }
92
- const layout = layoutRoadmap(file, resolved, {
93
- today: inputs.today,
94
- theme: inputs.theme ?? 'light',
95
- width: inputs.width,
96
- locale: inputs.locale ?? 'en-US',
97
- });
98
- return collectLayoutInsights(layout, {
99
- today: inputs.today,
100
- locale: inputs.locale ?? 'en-US',
143
+ return [];
144
+ }
145
+ /**
146
+ * Layout insights read from a staged roadmap's model: the layout the render
147
+ * draws, logo included, so the insights describe the same header and chart.
148
+ */
149
+ export function layoutInsightsFromStage(stage) {
150
+ return collectLayoutInsights(stage.model, {
151
+ today: stage.layout.today,
152
+ locale: stage.layout.locale ?? 'en-US',
101
153
  }).map(layoutInsightToMcp);
102
154
  }
103
155
  export const LAYOUT_INSIGHT_HINT = 'These are layout consequences, not errors — the roadmap rendered. ' +
@@ -1 +1 @@
1
- {"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../src/diagnostics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../src/diagnostics.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../src/generated/resources.ts"],"names":[],"mappings":"AAOA,6FAA6F;AAC7F,eAAO,MAAM,kBAAkB,EAAE,MAAow3C,CAAC;AAEty3C,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,qFAAqF;AACrF,eAAO,MAAM,QAAQ,EAAE,WAAW,EA6DjC,CAAC;AAEF,qFAAqF;AACrF,eAAO,MAAM,iBAAiB,EAAE,MAAy4M,CAAC"}
1
+ {"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../src/generated/resources.ts"],"names":[],"mappings":"AAOA,6FAA6F;AAC7F,eAAO,MAAM,kBAAkB,EAAE,MAAsk8D,CAAC;AAExm8D,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,qFAAqF;AACrF,eAAO,MAAM,QAAQ,EAAE,WAAW,EAyEjC,CAAC;AAEF,qFAAqF;AACrF,eAAO,MAAM,iBAAiB,EAAE,MAAkpN,CAAC"}