@lagoon-protocol/lagoon-mcp 0.1.0 → 0.1.2

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 (56) hide show
  1. package/dist/graphql/fragments/vault.fragment.d.ts +4 -1
  2. package/dist/graphql/fragments/vault.fragment.d.ts.map +1 -1
  3. package/dist/graphql/fragments/vault.fragment.js +3 -0
  4. package/dist/graphql/fragments/vault.fragment.js.map +1 -1
  5. package/dist/graphql/queries/export.queries.d.ts +1 -1
  6. package/dist/graphql/queries/export.queries.d.ts.map +1 -1
  7. package/dist/graphql/queries/portfolio.queries.d.ts +2 -2
  8. package/dist/graphql/queries/portfolio.queries.d.ts.map +1 -1
  9. package/dist/graphql/queries/risk.queries.d.ts +1 -1
  10. package/dist/graphql/queries/risk.queries.d.ts.map +1 -1
  11. package/dist/graphql/queries/vault.queries.d.ts +3 -3
  12. package/dist/graphql/queries/vault.queries.d.ts.map +1 -1
  13. package/dist/sdk/apr-service.d.ts +1 -2
  14. package/dist/sdk/apr-service.d.ts.map +1 -1
  15. package/dist/sdk/apr-service.js.map +1 -1
  16. package/dist/tools/optimize-portfolio.js +2 -2
  17. package/dist/tools/optimize-portfolio.js.map +1 -1
  18. package/dist/types/generated.d.ts +60 -40
  19. package/dist/types/generated.d.ts.map +1 -1
  20. package/dist/utils/validators.d.ts +3 -3
  21. package/dist/utils/validators.d.ts.map +1 -1
  22. package/dist/utils/validators.js +1 -0
  23. package/dist/utils/validators.js.map +1 -1
  24. package/package.json +1 -1
  25. package/dist/graphql/fragments.d.ts +0 -183
  26. package/dist/graphql/fragments.d.ts.map +0 -1
  27. package/dist/graphql/fragments.js +0 -297
  28. package/dist/graphql/fragments.js.map +0 -1
  29. package/dist/graphql/queries/period-summaries.d.ts +0 -15
  30. package/dist/graphql/queries/period-summaries.d.ts.map +0 -1
  31. package/dist/graphql/queries/period-summaries.js +0 -24
  32. package/dist/graphql/queries/period-summaries.js.map +0 -1
  33. package/dist/sdk/__tests__/apr-service.test.d.ts +0 -7
  34. package/dist/sdk/__tests__/apr-service.test.d.ts.map +0 -1
  35. package/dist/sdk/__tests__/apr-service.test.js +0 -385
  36. package/dist/sdk/__tests__/apr-service.test.js.map +0 -1
  37. package/dist/sdk/__tests__/math-utils.test.d.ts +0 -7
  38. package/dist/sdk/__tests__/math-utils.test.d.ts.map +0 -1
  39. package/dist/sdk/__tests__/math-utils.test.js +0 -185
  40. package/dist/sdk/__tests__/math-utils.test.js.map +0 -1
  41. package/dist/sdk/__tests__/simulation-service.test.d.ts +0 -5
  42. package/dist/sdk/__tests__/simulation-service.test.d.ts.map +0 -1
  43. package/dist/sdk/__tests__/simulation-service.test.js +0 -397
  44. package/dist/sdk/__tests__/simulation-service.test.js.map +0 -1
  45. package/dist/sdk/__tests__/vault-utils.test.d.ts +0 -7
  46. package/dist/sdk/__tests__/vault-utils.test.d.ts.map +0 -1
  47. package/dist/sdk/__tests__/vault-utils.test.js +0 -189
  48. package/dist/sdk/__tests__/vault-utils.test.js.map +0 -1
  49. package/dist/tools/__tests__/simulate-vault.test.d.ts +0 -5
  50. package/dist/tools/__tests__/simulate-vault.test.d.ts.map +0 -1
  51. package/dist/tools/__tests__/simulate-vault.test.js +0 -363
  52. package/dist/tools/__tests__/simulate-vault.test.js.map +0 -1
  53. package/dist/tools/index.d.ts +0 -26
  54. package/dist/tools/index.d.ts.map +0 -1
  55. package/dist/tools/index.js +0 -32
  56. package/dist/tools/index.js.map +0 -1
@@ -1,363 +0,0 @@
1
- /**
2
- * Tests for simulate-vault tool
3
- */
4
- import { describe, it, expect, vi, beforeEach } from 'vitest';
5
- import { executeSimulateVault, simulateVaultInputSchema, } from '../simulate-vault.js';
6
- // Mock dependencies
7
- vi.mock('../../graphql/client.js', () => ({
8
- graphqlClient: {
9
- request: vi.fn(),
10
- },
11
- }));
12
- vi.mock('../../sdk/simulation-service.js', () => ({
13
- simulateVaultManagement: vi.fn(),
14
- }));
15
- vi.mock('../../sdk/apr-service.js', () => ({
16
- transformPeriodSummariesToAPRData: vi.fn(),
17
- }));
18
- import { graphqlClient } from '../../graphql/client.js';
19
- import { simulateVaultManagement } from '../../sdk/simulation-service.js';
20
- import { transformPeriodSummariesToAPRData } from '../../sdk/apr-service.js';
21
- describe('simulateVaultInputSchema', () => {
22
- it('should validate correct input', () => {
23
- const input = {
24
- vaultAddress: '0x1234567890123456789012345678901234567890',
25
- chainId: 42161,
26
- newTotalAssets: '2000000000',
27
- settleDeposit: true,
28
- includeAPRCalculations: true,
29
- };
30
- const result = simulateVaultInputSchema.safeParse(input);
31
- expect(result.success).toBe(true);
32
- });
33
- it('should apply default values for optional fields', () => {
34
- const input = {
35
- vaultAddress: '0x1234567890123456789012345678901234567890',
36
- chainId: 42161,
37
- newTotalAssets: '2000000000',
38
- };
39
- const result = simulateVaultInputSchema.parse(input);
40
- expect(result.settleDeposit).toBe(true);
41
- expect(result.includeAPRCalculations).toBe(true);
42
- });
43
- it('should reject invalid vault address', () => {
44
- const input = {
45
- vaultAddress: 'invalid-address',
46
- chainId: 42161,
47
- newTotalAssets: '2000000000',
48
- };
49
- const result = simulateVaultInputSchema.safeParse(input);
50
- expect(result.success).toBe(false);
51
- });
52
- it('should reject negative chainId', () => {
53
- const input = {
54
- vaultAddress: '0x1234567890123456789012345678901234567890',
55
- chainId: -1,
56
- newTotalAssets: '2000000000',
57
- };
58
- const result = simulateVaultInputSchema.safeParse(input);
59
- expect(result.success).toBe(false);
60
- });
61
- it('should reject invalid newTotalAssets format', () => {
62
- const input = {
63
- vaultAddress: '0x1234567890123456789012345678901234567890',
64
- chainId: 42161,
65
- newTotalAssets: 'invalid',
66
- };
67
- const result = simulateVaultInputSchema.safeParse(input);
68
- expect(result.success).toBe(false);
69
- });
70
- it('should reject negative newTotalAssets', () => {
71
- const input = {
72
- vaultAddress: '0x1234567890123456789012345678901234567890',
73
- chainId: 42161,
74
- newTotalAssets: '-1000000000',
75
- };
76
- const result = simulateVaultInputSchema.safeParse(input);
77
- expect(result.success).toBe(false);
78
- });
79
- });
80
- describe('executeSimulateVault', () => {
81
- const mockVault = {
82
- address: '0x1234567890123456789012345678901234567890',
83
- name: 'Test Vault',
84
- symbol: 'TEST',
85
- decimals: 18,
86
- asset: {
87
- address: '0xabcdef1234567890abcdef1234567890abcdef12',
88
- symbol: 'USDC',
89
- name: 'USD Coin',
90
- decimals: 6,
91
- },
92
- state: {
93
- totalSupply: '1000000000000000000',
94
- totalAssets: '1000000000',
95
- highWaterMark: '1000000000',
96
- lastFeeTime: '1700000000',
97
- managementFee: '200',
98
- performanceFee: '1000',
99
- version: 'v1',
100
- safeAssetBalance: '500000000',
101
- pendingSiloBalances: {
102
- assets: '100000000',
103
- shares: '100000000000000000',
104
- },
105
- pendingSettlement: {
106
- assets: '50000000',
107
- shares: '50000000000000000',
108
- },
109
- },
110
- chainId: 42161,
111
- tvl: 1000,
112
- };
113
- const mockSimulationResult = {
114
- totalSupply: BigInt('2000000000000000000'),
115
- totalAssets: BigInt('2000000000'),
116
- feesAccrued: BigInt('10000000'),
117
- pricePerShare: BigInt('1000000'),
118
- };
119
- beforeEach(() => {
120
- vi.clearAllMocks();
121
- });
122
- it('should successfully simulate deposit scenario', async () => {
123
- vi.mocked(graphqlClient.request).mockResolvedValueOnce({ vault: mockVault });
124
- vi.mocked(simulateVaultManagement).mockResolvedValue(mockSimulationResult);
125
- const input = {
126
- vaultAddress: '0x1234567890123456789012345678901234567890',
127
- chainId: 42161,
128
- newTotalAssets: '2000000000',
129
- settleDeposit: true,
130
- includeAPRCalculations: false,
131
- };
132
- const result = await executeSimulateVault(input);
133
- expect(result.content).toBeDefined();
134
- expect(result.content[0].type).toBe('text');
135
- const content = JSON.parse(result.content[0].text);
136
- expect(content.simulation.vaultAddress).toBe(input.vaultAddress);
137
- expect(content.currentState.totalAssets).toBe(mockVault.state.totalAssets);
138
- expect(content.simulatedState.totalAssets).toBe('2000000000');
139
- });
140
- it('should include APR analysis when requested', async () => {
141
- const mockPeriodSummaries = [
142
- {
143
- timestamp: '1700000000',
144
- totalAssetsAtStart: '1000000000',
145
- totalSupplyAtStart: '1000000000000000000',
146
- },
147
- ];
148
- const mockAPRData = {
149
- thirtyDay: {
150
- timestamp: 1700000000,
151
- pricePerShare: BigInt('1050000'),
152
- },
153
- inception: {
154
- timestamp: 1690000000,
155
- pricePerShare: BigInt('1000000'),
156
- },
157
- };
158
- vi.mocked(graphqlClient.request)
159
- .mockResolvedValueOnce({ vault: mockVault })
160
- .mockResolvedValueOnce({ periodSummaries: mockPeriodSummaries });
161
- vi.mocked(simulateVaultManagement).mockResolvedValue(mockSimulationResult);
162
- vi.mocked(transformPeriodSummariesToAPRData).mockReturnValue(mockAPRData);
163
- const input = {
164
- vaultAddress: '0x1234567890123456789012345678901234567890',
165
- chainId: 42161,
166
- newTotalAssets: '2000000000',
167
- settleDeposit: true,
168
- includeAPRCalculations: true,
169
- };
170
- const result = await executeSimulateVault(input);
171
- const content = JSON.parse(result.content[0].text);
172
- expect(content.aprAnalysis).toBeDefined();
173
- expect(content.aprAnalysis.method).toContain('Lagoon SDK');
174
- expect(content.aprAnalysis.thirtyDay).toBeDefined();
175
- expect(content.aprAnalysis.inception).toBeDefined();
176
- });
177
- it('should handle withdrawal scenario', async () => {
178
- const withdrawalResult = {
179
- totalSupply: BigInt('500000000000000000'),
180
- totalAssets: BigInt('500000000'),
181
- feesAccrued: BigInt('5000000'),
182
- pricePerShare: BigInt('1000000'),
183
- };
184
- vi.mocked(graphqlClient.request).mockResolvedValueOnce({ vault: mockVault });
185
- vi.mocked(simulateVaultManagement).mockResolvedValue(withdrawalResult);
186
- const input = {
187
- vaultAddress: '0x1234567890123456789012345678901234567890',
188
- chainId: 42161,
189
- newTotalAssets: '500000000',
190
- settleDeposit: false,
191
- includeAPRCalculations: false,
192
- };
193
- const result = await executeSimulateVault(input);
194
- const content = JSON.parse(result.content[0].text);
195
- expect(content.simulatedState.totalAssets).toBe('500000000');
196
- expect(content.settlementAnalysis.settleDeposit).toBe(false);
197
- });
198
- it('should handle vault not found error', async () => {
199
- vi.mocked(graphqlClient.request).mockResolvedValueOnce({ vault: null });
200
- const input = {
201
- vaultAddress: '0x1234567890123456789012345678901234567890',
202
- chainId: 42161,
203
- newTotalAssets: '2000000000',
204
- settleDeposit: true,
205
- includeAPRCalculations: false,
206
- };
207
- const result = await executeSimulateVault(input);
208
- // Error responses are plain text, not JSON
209
- expect(result.content[0].type).toBe('text');
210
- expect(result.content[0].text).toContain('Vault not found');
211
- });
212
- it('should handle simulation failure gracefully', async () => {
213
- vi.mocked(graphqlClient.request).mockResolvedValueOnce({ vault: mockVault });
214
- vi.mocked(simulateVaultManagement).mockRejectedValue(new Error('SDK internal error'));
215
- const input = {
216
- vaultAddress: '0x1234567890123456789012345678901234567890',
217
- chainId: 42161,
218
- newTotalAssets: '2000000000',
219
- settleDeposit: true,
220
- includeAPRCalculations: false,
221
- };
222
- const result = await executeSimulateVault(input);
223
- // Error responses are plain text, not JSON
224
- expect(result.content[0].type).toBe('text');
225
- expect(result.content[0].text).toContain('SDK internal error');
226
- });
227
- it('should continue without APR data on fetch failure', async () => {
228
- vi.mocked(graphqlClient.request)
229
- .mockResolvedValueOnce({ vault: mockVault })
230
- .mockRejectedValueOnce(new Error('Period summaries not available'));
231
- vi.mocked(simulateVaultManagement).mockResolvedValue(mockSimulationResult);
232
- const input = {
233
- vaultAddress: '0x1234567890123456789012345678901234567890',
234
- chainId: 42161,
235
- newTotalAssets: '2000000000',
236
- settleDeposit: true,
237
- includeAPRCalculations: true,
238
- };
239
- const result = await executeSimulateVault(input);
240
- const content = JSON.parse(result.content[0].text);
241
- expect(content.simulatedState).toBeDefined();
242
- expect(content.aprAnalysis).toBeUndefined();
243
- });
244
- it('should calculate share price impact correctly', async () => {
245
- // For this test, we need simulation returns different price
246
- // To get price per share = 1.00, we need totalAssets = totalSupply (adjusting for decimals)
247
- // Current: 1000000000 assets (1000 USDC, 6 decimals) / 1e18 shares = price = 0.001 per share
248
- // This creates a 1:1 ratio in "real" value terms
249
- //
250
- // For appreciation test:
251
- // New: 2100000000 assets (2100 USDC) / 2e18 shares
252
- // New price per share = (2100000000 * 10^6) / 2000000000000000000 = 1050 (comparing in normalized units)
253
- // Old price per share = (1000000000 * 10^6) / 1000000000000000000 = 1000
254
- // Impact = (1050 - 1000) / 1000 * 100 = 5% increase
255
- const appreciatedResult = {
256
- totalSupply: BigInt('1000000000000000000'), // Keep same supply
257
- totalAssets: BigInt('1050000000'), // Increase assets by 5%
258
- feesAccrued: BigInt('10000000'),
259
- pricePerShare: BigInt('1050000'), // 1.05 in 6 decimals (not used, but for reference)
260
- };
261
- vi.mocked(graphqlClient.request).mockResolvedValueOnce({ vault: mockVault });
262
- vi.mocked(simulateVaultManagement).mockResolvedValue(appreciatedResult);
263
- const input = {
264
- vaultAddress: '0x1234567890123456789012345678901234567890',
265
- chainId: 42161,
266
- newTotalAssets: '2100000000',
267
- settleDeposit: true,
268
- includeAPRCalculations: false,
269
- };
270
- const result = await executeSimulateVault(input);
271
- const content = JSON.parse(result.content[0].text);
272
- // Current price per share: (1000000000 * 10^6) / 1000000000000000000 = 1000 (normalized units)
273
- // New price per share: (1050000000 * 10^6) / 1000000000000000000 = 1050 (normalized units)
274
- // Impact: (1050 - 1000) / 1000 * 100 = 5% increase
275
- expect(content.simulatedState.sharePriceImpact.percentage).toBeGreaterThan(0);
276
- expect(content.simulatedState.sharePriceImpact.direction).toBe('increase');
277
- });
278
- it('should handle zero supply vault (new vault)', async () => {
279
- const newVault = {
280
- ...mockVault,
281
- state: {
282
- ...mockVault.state,
283
- totalSupply: '0',
284
- totalAssets: '0',
285
- },
286
- };
287
- const newVaultResult = {
288
- totalSupply: BigInt('1000000000000000000'),
289
- totalAssets: BigInt('1000000000'),
290
- feesAccrued: BigInt('0'),
291
- pricePerShare: BigInt('1000000'),
292
- };
293
- vi.mocked(graphqlClient.request).mockResolvedValueOnce({ vault: newVault });
294
- vi.mocked(simulateVaultManagement).mockResolvedValue(newVaultResult);
295
- const input = {
296
- vaultAddress: '0x1234567890123456789012345678901234567890',
297
- chainId: 42161,
298
- newTotalAssets: '1000000000',
299
- settleDeposit: true,
300
- includeAPRCalculations: false,
301
- };
302
- const result = await executeSimulateVault(input);
303
- const content = JSON.parse(result.content[0].text);
304
- expect(content.currentState.totalSupply).toBe('0');
305
- expect(content.simulatedState.totalSupply).toBe('1000000000000000000');
306
- });
307
- it('should include settlement analysis with all fields', async () => {
308
- vi.mocked(graphqlClient.request).mockResolvedValueOnce({ vault: mockVault });
309
- vi.mocked(simulateVaultManagement).mockResolvedValue(mockSimulationResult);
310
- const input = {
311
- vaultAddress: '0x1234567890123456789012345678901234567890',
312
- chainId: 42161,
313
- newTotalAssets: '2000000000',
314
- settleDeposit: true,
315
- includeAPRCalculations: false,
316
- };
317
- const result = await executeSimulateVault(input);
318
- const content = JSON.parse(result.content[0].text);
319
- expect(content.settlementAnalysis).toBeDefined();
320
- expect(content.settlementAnalysis.assetsInSafe).toBe('500000000');
321
- expect(content.settlementAnalysis.pendingSiloBalances.assets).toBe('100000000');
322
- expect(content.settlementAnalysis.pendingSettlement.assets).toBe('50000000');
323
- });
324
- it('should format all BigInt values correctly', async () => {
325
- vi.mocked(graphqlClient.request).mockResolvedValueOnce({ vault: mockVault });
326
- vi.mocked(simulateVaultManagement).mockResolvedValue(mockSimulationResult);
327
- const input = {
328
- vaultAddress: '0x1234567890123456789012345678901234567890',
329
- chainId: 42161,
330
- newTotalAssets: '2000000000',
331
- settleDeposit: true,
332
- includeAPRCalculations: false,
333
- };
334
- const result = await executeSimulateVault(input);
335
- const content = JSON.parse(result.content[0].text);
336
- // All BigInt values should be strings
337
- expect(typeof content.currentState.totalAssets).toBe('string');
338
- expect(typeof content.simulatedState.totalAssets).toBe('string');
339
- expect(typeof content.simulatedState.feesAccrued.total).toBe('string');
340
- // Formatted versions should be decimal strings
341
- expect(content.currentState.totalAssetsFormatted).toContain('.');
342
- expect(content.simulatedState.totalAssetsFormatted).toContain('.');
343
- });
344
- it('should include metadata in response', async () => {
345
- vi.mocked(graphqlClient.request).mockResolvedValueOnce({ vault: mockVault });
346
- vi.mocked(simulateVaultManagement).mockResolvedValue(mockSimulationResult);
347
- const input = {
348
- vaultAddress: '0x1234567890123456789012345678901234567890',
349
- chainId: 42161,
350
- newTotalAssets: '2000000000',
351
- settleDeposit: true,
352
- includeAPRCalculations: false,
353
- };
354
- const result = await executeSimulateVault(input);
355
- const content = JSON.parse(result.content[0].text);
356
- expect(content.simulation).toBeDefined();
357
- expect(content.simulation.vaultAddress).toBe(input.vaultAddress);
358
- expect(content.simulation.chainId).toBe(input.chainId);
359
- expect(content.simulation.timestamp).toBeGreaterThan(0);
360
- expect(content.simulation.sdkVersion).toContain('@lagoon-protocol');
361
- });
362
- });
363
- //# sourceMappingURL=simulate-vault.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"simulate-vault.test.js","sourceRoot":"","sources":["../../../src/tools/__tests__/simulate-vault.test.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- /**
2
- * Tool Registry (DEPRECATED)
3
- *
4
- * This file is deprecated. Use src/tools/registry.ts instead.
5
- * Kept for backward compatibility only.
6
- */
7
- import { CallToolRequest, CallToolResult } from '@modelcontextprotocol/sdk/types.js';
8
- /**
9
- * @deprecated Use ToolDefinition from './registry.js' instead
10
- */
11
- export type { ToolDefinition as Tool } from './registry.js';
12
- /**
13
- * @deprecated Use TOOL_REGISTRY from './registry.js' instead
14
- * Tool array kept for backward compatibility only
15
- */
16
- export { TOOL_REGISTRY as tools } from './registry.js';
17
- /**
18
- * @deprecated Tool handlers are now managed by the registry
19
- * Use registerTools() from './registry.js' instead
20
- */
21
- /**
22
- * @deprecated Use registerTools() from './registry.js' instead
23
- * This function is kept for backward compatibility only
24
- */
25
- export declare function handleToolCall(request: CallToolRequest): CallToolResult;
26
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAErF;;GAEG;AACH,YAAY,EAAE,cAAc,IAAI,IAAI,EAAE,MAAM,eAAe,CAAC;AAE5D;;;GAGG;AACH,OAAO,EAAE,aAAa,IAAI,KAAK,EAAE,MAAM,eAAe,CAAC;AAEvD;;;GAGG;AAEH;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,cAAc,CAYvE"}
@@ -1,32 +0,0 @@
1
- /**
2
- * Tool Registry (DEPRECATED)
3
- *
4
- * This file is deprecated. Use src/tools/registry.ts instead.
5
- * Kept for backward compatibility only.
6
- */
7
- /**
8
- * @deprecated Use TOOL_REGISTRY from './registry.js' instead
9
- * Tool array kept for backward compatibility only
10
- */
11
- export { TOOL_REGISTRY as tools } from './registry.js';
12
- /**
13
- * @deprecated Tool handlers are now managed by the registry
14
- * Use registerTools() from './registry.js' instead
15
- */
16
- /**
17
- * @deprecated Use registerTools() from './registry.js' instead
18
- * This function is kept for backward compatibility only
19
- */
20
- export function handleToolCall(request) {
21
- const toolName = request.params.name;
22
- return {
23
- content: [
24
- {
25
- type: 'text',
26
- text: `Tool "${toolName}" should be called via the MCP server. Use registerTools() from './registry.js'.`,
27
- },
28
- ],
29
- isError: true,
30
- };
31
- }
32
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH;;;GAGG;AACH,OAAO,EAAE,aAAa,IAAI,KAAK,EAAE,MAAM,eAAe,CAAC;AAEvD;;;GAGG;AAEH;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,OAAwB;IACrD,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IAErC,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS,QAAQ,kFAAkF;aAC1G;SACF;QACD,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC"}