@veracity/codeguardian-mcp 0.1.2 → 0.1.4
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/README.md +26 -4
- package/dist/index.js +1 -1
- package/dist/tools/ado.d.ts.map +1 -1
- package/dist/tools/ado.js +228 -0
- package/dist/tools/ado.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -8,13 +8,35 @@ This MCP server provides the following tools:
|
|
|
8
8
|
|
|
9
9
|
### Azure DevOps Tools
|
|
10
10
|
|
|
11
|
-
1. **
|
|
11
|
+
1. **repo_get_repo_by_name_or_id** - Get repository information by project and repository name or ID
|
|
12
12
|
- Parameters:
|
|
13
13
|
- `organization` (required): Azure DevOps organization name (e.g., "myorg")
|
|
14
|
-
- `project` (required):
|
|
15
|
-
- `
|
|
14
|
+
- `project` (required): Project name or ID where the repository is located
|
|
15
|
+
- `repositoryNameOrId` (required): Repository name or ID
|
|
16
|
+
- Returns: Repository information including ID, name, URL, and project details
|
|
17
|
+
|
|
18
|
+
2. **repo_get_pullrequest_changes_by_id** - Retrieve all file changes and diffs from a pull request
|
|
19
|
+
- Parameters:
|
|
20
|
+
- `organization` (required): Azure DevOps organization name (e.g., "myorg")
|
|
21
|
+
- `project` (required): Azure DevOps project name or ID
|
|
22
|
+
- `repositoryId` (required): Repository ID where the pull request is located
|
|
23
|
+
- `pullRequestId` (required): Pull request ID number
|
|
24
|
+
- Returns: Detailed pull request information including file changes, diffs, and source content for all files modified in the PR
|
|
25
|
+
|
|
26
|
+
3. **repo_create_pull_request_thread** - Create a new comment thread on a pull request
|
|
27
|
+
- Parameters:
|
|
28
|
+
- `organization` (required): Azure DevOps organization name (e.g., "myorg")
|
|
29
|
+
- `project` (required): Project ID or project name
|
|
30
|
+
- `repositoryId` (required): Repository ID where the pull request is located
|
|
16
31
|
- `pullRequestId` (required): Pull request ID number
|
|
17
|
-
|
|
32
|
+
- `content` (required): Comment content to add
|
|
33
|
+
- `filePath` (optional): File path where the comment should be added
|
|
34
|
+
- `status` (optional): Comment thread status - "Unknown", "Active", "Fixed", "WontFix", "Closed", "ByDesign", or "Pending" (defaults to "Active")
|
|
35
|
+
- `rightFileStartLine` (optional): Starting line number for the comment (starts at 1)
|
|
36
|
+
- `rightFileStartOffset` (optional): Character offset on the starting line (starts at 1)
|
|
37
|
+
- `rightFileEndLine` (optional): Ending line number for the comment (requires rightFileStartLine)
|
|
38
|
+
- `rightFileEndOffset` (optional): Character offset on the ending line
|
|
39
|
+
- Returns: Created thread information including thread ID, comments, and status
|
|
18
40
|
|
|
19
41
|
## Prerequisites
|
|
20
42
|
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
|
3
3
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
4
4
|
import { createAuthenticator } from "./auth.js";
|
|
5
5
|
import { configureAllTools } from "./tools.js";
|
|
6
|
-
const packageVersion = "0.1.
|
|
6
|
+
const packageVersion = "0.1.4";
|
|
7
7
|
try {
|
|
8
8
|
const server = new McpServer({
|
|
9
9
|
name: "CodeGuardian MCP Server",
|
package/dist/tools/ado.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ado.d.ts","sourceRoot":"","sources":["../../src/tools/ado.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ado.d.ts","sourceRoot":"","sources":["../../src/tools/ado.ts"],"names":[],"mappings":"AA+bA,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,QA2QlF"}
|
package/dist/tools/ado.js
CHANGED
|
@@ -208,8 +208,236 @@ async function getPullRequestFileChanges(gitApi, project, repositoryId, targetBr
|
|
|
208
208
|
throw new Error(`Failed to get pull request file changes: ${error instanceof Error ? error.message : String(error)}`);
|
|
209
209
|
}
|
|
210
210
|
}
|
|
211
|
+
// Helper function to validate thread position parameters
|
|
212
|
+
function validateThreadPosition(rightFileStartLine, rightFileStartOffset, rightFileEndLine, rightFileEndOffset) {
|
|
213
|
+
if (rightFileStartLine !== undefined && rightFileStartLine < 1) {
|
|
214
|
+
throw new Error("rightFileStartLine must be greater than or equal to 1.");
|
|
215
|
+
}
|
|
216
|
+
if (rightFileStartOffset !== undefined && rightFileStartOffset < 1) {
|
|
217
|
+
throw new Error("rightFileStartOffset must be greater than or equal to 1.");
|
|
218
|
+
}
|
|
219
|
+
if (rightFileEndLine !== undefined) {
|
|
220
|
+
if (rightFileStartLine === undefined) {
|
|
221
|
+
throw new Error("rightFileEndLine must only be specified if rightFileStartLine is also specified.");
|
|
222
|
+
}
|
|
223
|
+
if (rightFileEndLine < 1) {
|
|
224
|
+
throw new Error("rightFileEndLine must be greater than or equal to 1.");
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
if (rightFileEndOffset !== undefined && rightFileEndOffset < 1) {
|
|
228
|
+
throw new Error("rightFileEndOffset must be greater than or equal to 1.");
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
// Helper function to build thread context
|
|
232
|
+
function buildThreadContext(filePath, rightFileStartLine, rightFileStartOffset, rightFileEndLine, rightFileEndOffset) {
|
|
233
|
+
const normalizedFilePath = filePath && !filePath.startsWith("/") ? `/${filePath}` : filePath;
|
|
234
|
+
const threadContext = { filePath: normalizedFilePath };
|
|
235
|
+
if (rightFileStartLine !== undefined) {
|
|
236
|
+
threadContext.rightFileStart = { line: rightFileStartLine };
|
|
237
|
+
if (rightFileStartOffset !== undefined) {
|
|
238
|
+
threadContext.rightFileStart.offset = rightFileStartOffset;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
if (rightFileEndLine !== undefined) {
|
|
242
|
+
threadContext.rightFileEnd = { line: rightFileEndLine };
|
|
243
|
+
if (rightFileEndOffset !== undefined) {
|
|
244
|
+
threadContext.rightFileEnd.offset = rightFileEndOffset;
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
return threadContext;
|
|
248
|
+
}
|
|
249
|
+
// Helper function to trim pull request thread
|
|
250
|
+
function trimPullRequestThread(thread) {
|
|
251
|
+
return {
|
|
252
|
+
id: thread.id,
|
|
253
|
+
publishedDate: thread.publishedDate,
|
|
254
|
+
lastUpdatedDate: thread.lastUpdatedDate,
|
|
255
|
+
status: thread.status,
|
|
256
|
+
comments: thread.comments?.filter((comment) => !comment.isDeleted)?.map((comment) => ({
|
|
257
|
+
id: comment.id,
|
|
258
|
+
content: comment.content,
|
|
259
|
+
publishedDate: comment.publishedDate,
|
|
260
|
+
lastUpdatedDate: comment.lastUpdatedDate,
|
|
261
|
+
author: {
|
|
262
|
+
displayName: comment.author?.displayName,
|
|
263
|
+
uniqueName: comment.author?.uniqueName,
|
|
264
|
+
},
|
|
265
|
+
})),
|
|
266
|
+
};
|
|
267
|
+
}
|
|
268
|
+
// Helper function to get status value
|
|
269
|
+
function getThreadStatusValue(status) {
|
|
270
|
+
const statusMap = {
|
|
271
|
+
"Unknown": 0,
|
|
272
|
+
"Active": 1,
|
|
273
|
+
"Fixed": 2,
|
|
274
|
+
"WontFix": 3,
|
|
275
|
+
"Closed": 4,
|
|
276
|
+
"ByDesign": 5,
|
|
277
|
+
"Pending": 6
|
|
278
|
+
};
|
|
279
|
+
return statusMap[status] || 1; // Default to Active
|
|
280
|
+
}
|
|
281
|
+
/**
|
|
282
|
+
* Find the position of a fenced code block within source file content
|
|
283
|
+
* @param sourceFileContent The full content of the source file
|
|
284
|
+
* @param fencedCodeBlock The code block content to find
|
|
285
|
+
* @returns Object with startLine, endLine, startOffset, and endOffset (1-indexed) or null if not found
|
|
286
|
+
*/
|
|
287
|
+
function findCodeBlockInSource(sourceFileContent, fencedCodeBlock) {
|
|
288
|
+
if (!sourceFileContent || !fencedCodeBlock) {
|
|
289
|
+
return null;
|
|
290
|
+
}
|
|
291
|
+
// Split both contents into lines
|
|
292
|
+
const sourceLines = sourceFileContent.split(/\r?\n/);
|
|
293
|
+
const codeBlockLines = fencedCodeBlock.split(/\r?\n/);
|
|
294
|
+
// Remove empty lines from the start and end of code block for matching
|
|
295
|
+
let codeBlockStart = 0;
|
|
296
|
+
let codeBlockEnd = codeBlockLines.length - 1;
|
|
297
|
+
while (codeBlockStart <= codeBlockEnd && codeBlockLines[codeBlockStart].trim() === '') {
|
|
298
|
+
codeBlockStart++;
|
|
299
|
+
}
|
|
300
|
+
while (codeBlockEnd >= codeBlockStart && codeBlockLines[codeBlockEnd].trim() === '') {
|
|
301
|
+
codeBlockEnd--;
|
|
302
|
+
}
|
|
303
|
+
if (codeBlockStart > codeBlockEnd) {
|
|
304
|
+
return null; // Code block is empty or only whitespace
|
|
305
|
+
}
|
|
306
|
+
const trimmedCodeBlockLines = codeBlockLines.slice(codeBlockStart, codeBlockEnd + 1);
|
|
307
|
+
// Search for the code block in the source file
|
|
308
|
+
for (let i = 0; i <= sourceLines.length - trimmedCodeBlockLines.length; i++) {
|
|
309
|
+
let match = true;
|
|
310
|
+
for (let j = 0; j < trimmedCodeBlockLines.length; j++) {
|
|
311
|
+
// Compare lines with trimmed whitespace for more flexible matching
|
|
312
|
+
if (sourceLines[i + j].trim() !== trimmedCodeBlockLines[j].trim()) {
|
|
313
|
+
match = false;
|
|
314
|
+
break;
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
if (match) {
|
|
318
|
+
const startLineIndex = i;
|
|
319
|
+
const endLineIndex = i + trimmedCodeBlockLines.length - 1;
|
|
320
|
+
// Calculate start offset: find the first non-whitespace character position
|
|
321
|
+
const startLine = sourceLines[startLineIndex];
|
|
322
|
+
const startOffset = startLine.search(/\S/) + 1; // +1 for 1-indexed, search returns 0-indexed position
|
|
323
|
+
// Calculate end offset: position after the last character on the end line
|
|
324
|
+
const endLine = sourceLines[endLineIndex];
|
|
325
|
+
const endOffset = endLine.length + 1; // +1 for 1-indexed
|
|
326
|
+
// Return 1-indexed line numbers and offsets
|
|
327
|
+
return {
|
|
328
|
+
startLine: startLineIndex + 1,
|
|
329
|
+
endLine: endLineIndex + 1,
|
|
330
|
+
startOffset: startOffset > 0 ? startOffset : 1, // Default to 1 if line is empty
|
|
331
|
+
endOffset: endOffset
|
|
332
|
+
};
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
return null; // Code block not found
|
|
336
|
+
}
|
|
211
337
|
// MCP server tool configuration
|
|
212
338
|
export function configureAdoTools(server, tokenProvider) {
|
|
339
|
+
server.tool("repo_get_repo_by_name_or_id", "Get the repository by project and repository name or ID.", {
|
|
340
|
+
organization: z.string().describe("Azure DevOps organization name (e.g., 'myorg')"),
|
|
341
|
+
project: z.string().describe("Project name or ID where the repository is located."),
|
|
342
|
+
repositoryNameOrId: z.string().describe("Repository name or ID."),
|
|
343
|
+
}, async (args) => {
|
|
344
|
+
try {
|
|
345
|
+
const { organization, project, repositoryNameOrId } = args;
|
|
346
|
+
// Validate required parameters
|
|
347
|
+
if (!organization || !project || !repositoryNameOrId) {
|
|
348
|
+
throw new Error('Missing required parameters. Please provide organization, project, and repositoryNameOrId.');
|
|
349
|
+
}
|
|
350
|
+
// Get Azure DevOps connection
|
|
351
|
+
const connection = await getAzureDevOpsConnection(organization, tokenProvider);
|
|
352
|
+
const gitApi = await connection.getGitApi();
|
|
353
|
+
const repositories = await gitApi.getRepositories(project);
|
|
354
|
+
const repository = repositories?.find((repo) => repo.name === repositoryNameOrId || repo.id === repositoryNameOrId);
|
|
355
|
+
if (!repository) {
|
|
356
|
+
throw new Error(`Repository ${repositoryNameOrId} not found in project ${project}`);
|
|
357
|
+
}
|
|
358
|
+
return {
|
|
359
|
+
content: [{ type: "text", text: JSON.stringify(repository, null, 2) }],
|
|
360
|
+
};
|
|
361
|
+
}
|
|
362
|
+
catch (error) {
|
|
363
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
364
|
+
return {
|
|
365
|
+
content: [{
|
|
366
|
+
type: "text",
|
|
367
|
+
text: `Error getting repository: ${errorMessage}`
|
|
368
|
+
}],
|
|
369
|
+
isError: true,
|
|
370
|
+
};
|
|
371
|
+
}
|
|
372
|
+
});
|
|
373
|
+
server.tool("repo_create_pull_request_thread", "Creates a new comment thread on a pull request.", {
|
|
374
|
+
organization: z.string().describe("Azure DevOps organization name (e.g., 'myorg')"),
|
|
375
|
+
project: z.string().describe("Project ID or project name"),
|
|
376
|
+
repositoryId: z.string().describe("The ID of the repository where the pull request is located."),
|
|
377
|
+
pullRequestId: z.number().describe("The ID of the pull request where the comment thread exists."),
|
|
378
|
+
content: z.string().describe("The content of the comment to be added."),
|
|
379
|
+
filePath: z.string().optional().describe("The path of the file where the comment thread will be created. If not provided, the comment will be at the PR level."),
|
|
380
|
+
status: z.enum(["Unknown", "Active", "Fixed", "WontFix", "Closed", "ByDesign", "Pending"])
|
|
381
|
+
.optional()
|
|
382
|
+
.default("Active")
|
|
383
|
+
.describe("The status of the comment thread. Defaults to 'Active'."),
|
|
384
|
+
sourceFileContent: z.string().describe("The content of the source file (not diff file). Used to automatically calculate line positions when fencedCodeBlock is provided."),
|
|
385
|
+
fencedCodeBlock: z.string().describe("The content of a fenced code block to locate within the source file. When provided with sourceFileContent, rightFileStartLine and rightFileEndLine will be automatically calculated."),
|
|
386
|
+
rightFileStartLine: z.number().describe("Position of first character of the thread's span in right file. The line number of a thread's position. Starts at 1. "),
|
|
387
|
+
rightFileStartOffset: z.number().optional().default(1).describe("Position of first character of the thread's span in right file. The character offset of a thread's position inside of a line. Starts at 1. Must only be set if rightFileStartLine is also specified."),
|
|
388
|
+
rightFileEndLine: z.number().describe("Position of last character of the thread's span in right file. The line number of a thread's position. Starts at 1. Must only be set if rightFileStartLine is also specified. "),
|
|
389
|
+
rightFileEndOffset: z.number().optional().default(1).describe("Position of last character of the thread's span in right file. The character offset of a thread's position inside of a line. Must only be set if rightFileEndLine is also specified. "),
|
|
390
|
+
}, async (args) => {
|
|
391
|
+
try {
|
|
392
|
+
const { organization, project, repositoryId, pullRequestId, content, filePath, status = "Active", sourceFileContent, fencedCodeBlock, rightFileStartLine, rightFileStartOffset, rightFileEndLine, rightFileEndOffset } = args;
|
|
393
|
+
// Validate required parameters
|
|
394
|
+
if (!organization || !project || !repositoryId || !pullRequestId || !content) {
|
|
395
|
+
throw new Error('Missing required parameters. Please provide organization, project, repositoryId, pullRequestId, and content.');
|
|
396
|
+
}
|
|
397
|
+
// Calculate line positions if sourceFileContent and fencedCodeBlock are provided
|
|
398
|
+
let calculatedStartLine = rightFileStartLine;
|
|
399
|
+
let calculatedEndLine = rightFileEndLine;
|
|
400
|
+
let calculatedStartOffset = rightFileStartOffset;
|
|
401
|
+
let calculatedEndOffset = rightFileEndOffset;
|
|
402
|
+
if (sourceFileContent && fencedCodeBlock) {
|
|
403
|
+
const linePositions = findCodeBlockInSource(sourceFileContent, fencedCodeBlock);
|
|
404
|
+
if (linePositions) {
|
|
405
|
+
calculatedStartLine = linePositions.startLine;
|
|
406
|
+
calculatedEndLine = linePositions.endLine;
|
|
407
|
+
calculatedStartOffset = linePositions.startOffset;
|
|
408
|
+
calculatedEndOffset = linePositions.endOffset;
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
// Validate thread position parameters
|
|
412
|
+
validateThreadPosition(calculatedStartLine, calculatedStartOffset, calculatedEndLine, calculatedEndOffset);
|
|
413
|
+
// Get Azure DevOps connection
|
|
414
|
+
const connection = await getAzureDevOpsConnection(organization, tokenProvider);
|
|
415
|
+
const gitApi = await connection.getGitApi();
|
|
416
|
+
// Build thread context
|
|
417
|
+
const threadContext = buildThreadContext(filePath, calculatedStartLine, calculatedStartOffset, calculatedEndLine, calculatedEndOffset);
|
|
418
|
+
// Create thread
|
|
419
|
+
const thread = await gitApi.createThread({
|
|
420
|
+
comments: [{ content: content }],
|
|
421
|
+
threadContext: threadContext,
|
|
422
|
+
status: getThreadStatusValue(status)
|
|
423
|
+
}, repositoryId, pullRequestId, project);
|
|
424
|
+
// Return trimmed thread
|
|
425
|
+
const trimmedThread = trimPullRequestThread(thread);
|
|
426
|
+
return {
|
|
427
|
+
content: [{ type: "text", text: JSON.stringify(trimmedThread, null, 2) }],
|
|
428
|
+
};
|
|
429
|
+
}
|
|
430
|
+
catch (error) {
|
|
431
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
432
|
+
return {
|
|
433
|
+
content: [{
|
|
434
|
+
type: "text",
|
|
435
|
+
text: `Error creating pull request thread: ${errorMessage}`
|
|
436
|
+
}],
|
|
437
|
+
isError: true,
|
|
438
|
+
};
|
|
439
|
+
}
|
|
440
|
+
});
|
|
213
441
|
server.tool("repo_get_pullrequest_changes_by_id", "Retrieve all file changes and diffs from a pull request by iterating through all commits in the PR", {
|
|
214
442
|
organization: z.string().describe("Azure DevOps organization name (e.g., 'myorg')"),
|
|
215
443
|
project: z.string().describe("The name or ID of the Azure DevOps project."),
|
package/dist/tools/ado.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ado.js","sourceRoot":"","sources":["../../src/tools/ado.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ado.js","sourceRoot":"","sources":["../../src/tools/ado.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,uBAAuB,CAAC;AAC/C,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,oDAAoD;AACpD,KAAK,UAAU,wBAAwB,CAAC,YAAoB,EAAE,aAAoC;IAC9F,MAAM,WAAW,GAAG,MAAM,aAAa,EAAE,CAAC;IAC1C,MAAM,WAAW,GAAG,KAAK,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,yBAAyB,YAAY,EAAE,CAAC;IAEvD,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AACjD,CAAC;AAED,2BAA2B;AAC3B,SAAS,eAAe,CAAC,QAAgB;IACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,uDAAuD;IACvD,MAAM,aAAa,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IAE7C,oBAAoB;IACpB,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM;QAClF,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9E,IAAI,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAC5D,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,4CAA4C;IAC5C,IAAI,QAAQ,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,6DAA6D;IAC7D,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,eAAe,CAC1B,MAAe,EACf,OAAe,EACf,YAAoB,EACpB,QAAgB,EAChB,iBAAsB;IAEtB,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAC/B,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,SAAS,EAAE,YAAY;QACvB,SAAS,EAAE,iBAAiB;QAC5B,KAAK,EAAE,yBAAyB;QAChC,KAAK,EAAE,wBAAwB;QAC/B,KAAK,EAAE,WAAW;QAClB,iBAAiB,CACpB,CAAC;QACF,mEAAmE;QACnE,OAAO,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC;IAC1B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,MAAM,YAAY,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,KAAK,CAAC,yBAAyB,QAAQ,KAAK,YAAY,EAAE,CAAC,CAAC;QACpE,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,MAA6B;IACvD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACnC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9D,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACvE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,OAAe;IACrC,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;IACd,CAAC;IAED,OAAO,OAAO;QACV,+CAA+C;SAC9C,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;QACvB,uBAAuB;SACtB,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;QACvB,qEAAqE;SACpE,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AACjC,CAAC;AAED,KAAK,UAAU,sBAAsB,CACjC,MAAe,EACf,OAAe,EACf,YAAoB,EACpB,QAAgB,EAChB,QAAgB;IAEhB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO,EAAE,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACD,MAAM,iBAAiB,GAAG;YACtB,OAAO,EAAE,QAAQ;YACjB,WAAW,EAAE,CAAC,CAAC,wBAAwB;SAC1C,CAAC;QAEF,6BAA6B;QAC7B,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC;QACrG,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,CAAC,QAAQ,QAAQ,6BAA6B,QAAQ,EAAE,CAAC,CAAC;YACtE,OAAO,EAAE,CAAC;QACd,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,cAAc,CACtC,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,SAAS,EAAE,YAAY;QACvB,SAAS,EAAE,iBAAiB;QAC5B,KAAK,EAAE,yBAAyB;QAChC,KAAK,EAAE,wBAAwB;QAC/B,KAAK,EAAE,WAAW;QAClB,iBAAiB,CACpB,CAAC;QACF,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;YAC7C,0EAA0E;YAC1E,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,2CAA2C;QAC3C,MAAM,YAAY,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAEhE,IAAI,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,yCAAyC,CAAC,EAAE,CAAC;YACxG,OAAO,CAAC,IAAI,CAAC,QAAQ,QAAQ,6BAA6B,QAAQ,mBAAmB,CAAC,CAAC;YACvF,OAAO,EAAE,CAAC;QACd,CAAC;aAAM,IAAI,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACjF,OAAO,CAAC,IAAI,CAAC,QAAQ,QAAQ,wBAAwB,QAAQ,EAAE,CAAC,CAAC;YACjE,OAAO,EAAE,CAAC;QACd,CAAC;aAAM,IAAI,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YACpF,OAAO,CAAC,IAAI,CAAC,+BAA+B,QAAQ,cAAc,QAAQ,EAAE,CAAC,CAAC;YAC9E,OAAO,EAAE,CAAC;QACd,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,IAAI,CAAC,6BAA6B,QAAQ,cAAc,QAAQ,GAAG,EAAE,YAAY,CAAC,CAAC;YAC3F,OAAO,EAAE,CAAC;QACd,CAAC;IACL,CAAC;AACL,CAAC;AAGD,KAAK,UAAU,oBAAoB,CAC/B,MAAe,EACf,YAAoB,EACpB,OAAe,EACf,MAAW,EACX,eAA4B;IAE5B,IAAI,CAAC;QACD,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QAC1F,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,CAAC;YAC1B,OAAO;QACX,CAAC;QAED,KAAK,MAAM,MAAM,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YACzC,iBAAiB,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QAC/C,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,oCAAoC,MAAM,CAAC,QAAQ,GAAG,EAAE,KAAK,CAAC,CAAC;IAChF,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAW,EAAE,eAA4B;IAChE,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI;QAClB,MAAM,CAAC,IAAI,EAAE,aAAa,KAAK,MAAM;QACrC,MAAM,CAAC,UAAU,KAAK,GAAG;QACzB,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAErD,IAAI,CAAC,WAAW,EAAE,CAAC;QACf,OAAO;IACX,CAAC;IAED,IAAI,MAAM,CAAC,UAAU,KAAK,EAAE,EAAE,CAAC;QAC3B,4CAA4C;QAC5C,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;SAAM,CAAC;QACJ,wBAAwB;QACxB,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;AACL,CAAC;AAED,KAAK,UAAU,mBAAmB,CAC9B,MAAe,EACf,OAAe,EACf,YAAoB,EACpB,OAAc;IAEd,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,CAAC,MAAM,8BAA8B,CAAC,CAAC;IAExE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,oBAAoB,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;IACvF,CAAC;IAED,OAAO,eAAe,CAAC;AAC3B,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC7B,MAAe,EACf,OAAe,EACf,YAAoB,EACpB,QAAgB,EAChB,kBAA0B,EAC1B,kBAA0B;IAE1B,IAAI,CAAC;QACD,MAAM,mBAAmB,GAAG,MAAM,sBAAsB,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QACtH,MAAM,mBAAmB,GAAG,MAAM,sBAAsB,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QACtH,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,mBAAmB,IAAI,EAAE,EAAE,mBAAmB,IAAI,EAAE,EAAE,IAAI,GAAG,QAAQ,EAAE,IAAI,GAAG,QAAQ,CAAC,CAAC;QAEvI,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,mBAAmB;YAC3B,IAAI,EAAE,WAAW;SACpB,CAAC;IACN,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,OAAO,CAAC,IAAI,CAAC,yBAAyB,QAAQ,GAAG,EAAE,YAAY,CAAC,CAAC;QAEjE,OAAO;YACH,QAAQ,EAAE,QAAQ;YAClB,KAAK,EAAE,0BAA0B,YAAY,EAAE;YAC/C,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;gBACrC,qEAAqE,CAAC,CAAC;gBACvE,sDAAsD;SAC7D,CAAC;IACN,CAAC;AACL,CAAC;AAED,KAAK,UAAU,yBAAyB,CACpC,MAAe,EACf,OAAe,EACf,YAAoB,EACpB,kBAA0B,EAC1B,kBAA0B,EAC1B,OAAc;IAEd,IAAI,CAAC;QACD,MAAM,eAAe,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;QAE1F,IAAI,eAAe,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO;gBACH,YAAY,EAAE,CAAC;gBACf,KAAK,EAAE,EAAE;gBACT,OAAO,EAAE,iEAAiE;aAC7E,CAAC;QACN,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,SAAS,eAAe,CAAC,IAAI,0CAA0C,CAAC,CAAC;QACrF,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAE7D,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,GAAG,CACtC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CACrB,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CACtG,CACJ,CAAC;QAEF,OAAO;YACH,YAAY,EAAE,SAAS,CAAC,MAAM;YAC9B,eAAe,EAAE,eAAe,CAAC,IAAI;YACrC,gBAAgB,EAAE,OAAO,CAAC,MAAM;YAChC,KAAK,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;SAClD,CAAC;IAEN,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,4CAA4C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC1H,CAAC;AACL,CAAC;AAED,yDAAyD;AACzD,SAAS,sBAAsB,CAC3B,kBAA2B,EAC3B,oBAA6B,EAC7B,gBAAyB,EACzB,kBAA2B;IAE3B,IAAI,kBAAkB,KAAK,SAAS,IAAI,kBAAkB,GAAG,CAAC,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,oBAAoB,KAAK,SAAS,IAAI,oBAAoB,GAAG,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAChF,CAAC;IACD,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACjC,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,kFAAkF,CAAC,CAAC;QACxG,CAAC;QACD,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC5E,CAAC;IACL,CAAC;IACD,IAAI,kBAAkB,KAAK,SAAS,IAAI,kBAAkB,GAAG,CAAC,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC9E,CAAC;AACL,CAAC;AAED,0CAA0C;AAC1C,SAAS,kBAAkB,CACvB,QAAiB,EACjB,kBAA2B,EAC3B,oBAA6B,EAC7B,gBAAyB,EACzB,kBAA2B;IAE3B,MAAM,kBAAkB,GAAG,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC7F,MAAM,aAAa,GAAQ,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IAE5D,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;QACnC,aAAa,CAAC,cAAc,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;QAC5D,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACrC,aAAa,CAAC,cAAc,CAAC,MAAM,GAAG,oBAAoB,CAAC;QAC/D,CAAC;IACL,CAAC;IAED,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACjC,aAAa,CAAC,YAAY,GAAG,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;QACxD,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACnC,aAAa,CAAC,YAAY,CAAC,MAAM,GAAG,kBAAkB,CAAC;QAC3D,CAAC;IACL,CAAC;IAED,OAAO,aAAa,CAAC;AACzB,CAAC;AAED,8CAA8C;AAC9C,SAAS,qBAAqB,CAAC,MAAW;IACtC,OAAO;QACH,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,OAAY,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,CAAC,OAAY,EAAE,EAAE,CAAC,CAAC;YAC5F,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,MAAM,EAAE;gBACJ,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,WAAW;gBACxC,UAAU,EAAE,OAAO,CAAC,MAAM,EAAE,UAAU;aACzC;SACJ,CAAC,CAAC;KACN,CAAC;AACN,CAAC;AAED,sCAAsC;AACtC,SAAS,oBAAoB,CAAC,MAAc;IACxC,MAAM,SAAS,GAA2B;QACtC,SAAS,EAAE,CAAC;QACZ,QAAQ,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;QACV,SAAS,EAAE,CAAC;QACZ,QAAQ,EAAE,CAAC;QACX,UAAU,EAAE,CAAC;QACb,SAAS,EAAE,CAAC;KACf,CAAC;IACF,OAAO,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,oBAAoB;AACvD,CAAC;AAED;;;;;GAKG;AACH,SAAS,qBAAqB,CAAC,iBAAyB,EAAE,eAAuB;IAC7E,IAAI,CAAC,iBAAiB,IAAI,CAAC,eAAe,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,iCAAiC;IACjC,MAAM,WAAW,GAAG,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAEtD,uEAAuE;IACvE,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,YAAY,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;IAE7C,OAAO,cAAc,IAAI,YAAY,IAAI,cAAc,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACpF,cAAc,EAAE,CAAC;IACrB,CAAC;IACD,OAAO,YAAY,IAAI,cAAc,IAAI,cAAc,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAClF,YAAY,EAAE,CAAC;IACnB,CAAC;IAED,IAAI,cAAc,GAAG,YAAY,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,CAAC,yCAAyC;IAC1D,CAAC;IAED,MAAM,qBAAqB,GAAG,cAAc,CAAC,KAAK,CAAC,cAAc,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC;IAErF,+CAA+C;IAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,WAAW,CAAC,MAAM,GAAG,qBAAqB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1E,IAAI,KAAK,GAAG,IAAI,CAAC;QAEjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,qBAAqB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpD,mEAAmE;YACnE,IAAI,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,qBAAqB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBAChE,KAAK,GAAG,KAAK,CAAC;gBACd,MAAM;YACV,CAAC;QACL,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACR,MAAM,cAAc,GAAG,CAAC,CAAC;YACzB,MAAM,YAAY,GAAG,CAAC,GAAG,qBAAqB,CAAC,MAAM,GAAG,CAAC,CAAC;YAE1D,2EAA2E;YAC3E,MAAM,SAAS,GAAG,WAAW,CAAC,cAAc,CAAC,CAAC;YAC9C,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,sDAAsD;YAEtG,0EAA0E;YAC1E,MAAM,OAAO,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC;YAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,mBAAmB;YAEzD,4CAA4C;YAC5C,OAAO;gBACH,SAAS,EAAE,cAAc,GAAG,CAAC;gBAC7B,OAAO,EAAE,YAAY,GAAG,CAAC;gBACzB,WAAW,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,gCAAgC;gBAChF,SAAS,EAAE,SAAS;aACvB,CAAC;QACN,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC,CAAC,uBAAuB;AACxC,CAAC;AAED,gCAAgC;AAChC,MAAM,UAAU,iBAAiB,CAAC,MAAW,EAAE,aAAoC;IAC/E,MAAM,CAAC,IAAI,CACP,6BAA6B,EAC7B,0DAA0D,EAC1D;QACI,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;QACnF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;QACnF,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;KACpE,EACD,KAAK,EAAE,IAIN,EAAE,EAAE;QACD,IAAI,CAAC;YACD,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC;YAE3D,+BAA+B;YAC/B,IAAI,CAAC,YAAY,IAAI,CAAC,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACnD,MAAM,IAAI,KAAK,CAAC,4FAA4F,CAAC,CAAC;YAClH,CAAC;YAED,8BAA8B;YAC9B,MAAM,UAAU,GAAG,MAAM,wBAAwB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;YAC/E,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,EAAE,CAAC;YAE5C,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAC3D,MAAM,UAAU,GAAG,YAAY,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,kBAAkB,IAAI,IAAI,CAAC,EAAE,KAAK,kBAAkB,CAAC,CAAC;YAEpH,IAAI,CAAC,UAAU,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,cAAc,kBAAkB,yBAAyB,OAAO,EAAE,CAAC,CAAC;YACxF,CAAC;YAED,OAAO;gBACH,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;aACzE,CAAC;QACN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,OAAO;gBACH,OAAO,EAAE,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,6BAA6B,YAAY,EAAE;qBACpD,CAAC;gBACF,OAAO,EAAE,IAAI;aAChB,CAAC;QACN,CAAC;IACL,CAAC,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACP,iCAAiC,EACjC,iDAAiD,EACjD;QACI,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;QACnF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;QAC1D,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6DAA6D,CAAC;QAChG,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6DAA6D,CAAC;QACjG,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;QACvE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sHAAsH,CAAC;QAChK,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;aACrF,QAAQ,EAAE;aACV,OAAO,CAAC,QAAQ,CAAC;aACjB,QAAQ,CAAC,yDAAyD,CAAC;QACxE,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kIAAkI,CAAC;QAC1K,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sLAAsL,CAAC;QAC5N,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uHAAuH,CAAC;QAChK,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,sMAAsM,CAAC;QACvQ,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gLAAgL,CAAC;QACvN,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,uLAAuL,CAAC;KACzP,EACD,KAAK,EAAE,IAcN,EAAE,EAAE;QACD,IAAI,CAAC;YACD,MAAM,EACF,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,aAAa,EACb,OAAO,EACP,QAAQ,EACR,MAAM,GAAG,QAAQ,EACjB,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EACrB,GAAG,IAAI,CAAC;YAET,+BAA+B;YAC/B,IAAI,CAAC,YAAY,IAAI,CAAC,OAAO,IAAI,CAAC,YAAY,IAAI,CAAC,aAAa,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC3E,MAAM,IAAI,KAAK,CAAC,8GAA8G,CAAC,CAAC;YACpI,CAAC;YAED,iFAAiF;YACjF,IAAI,mBAAmB,GAAG,kBAAkB,CAAC;YAC7C,IAAI,iBAAiB,GAAG,gBAAgB,CAAC;YACzC,IAAI,qBAAqB,GAAG,oBAAoB,CAAC;YACjD,IAAI,mBAAmB,GAAG,kBAAkB,CAAC;YAE7C,IAAI,iBAAiB,IAAI,eAAe,EAAE,CAAC;gBACvC,MAAM,aAAa,GAAG,qBAAqB,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC;gBAChF,IAAI,aAAa,EAAE,CAAC;oBAChB,mBAAmB,GAAG,aAAa,CAAC,SAAS,CAAC;oBAC9C,iBAAiB,GAAG,aAAa,CAAC,OAAO,CAAC;oBAC1C,qBAAqB,GAAG,aAAa,CAAC,WAAW,CAAC;oBAClD,mBAAmB,GAAG,aAAa,CAAC,SAAS,CAAC;gBAClD,CAAC;YACL,CAAC;YAED,sCAAsC;YACtC,sBAAsB,CAAC,mBAAmB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,mBAAmB,CAAC,CAAC;YAE3G,8BAA8B;YAC9B,MAAM,UAAU,GAAG,MAAM,wBAAwB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;YAC/E,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,EAAE,CAAC;YAE5C,uBAAuB;YACvB,MAAM,aAAa,GAAG,kBAAkB,CAAC,QAAQ,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,mBAAmB,CAAC,CAAC;YAEvI,gBAAgB;YAChB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,YAAY,CACpC;gBACI,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;gBAChC,aAAa,EAAE,aAAa;gBAC5B,MAAM,EAAE,oBAAoB,CAAC,MAAM,CAAC;aACvC,EACD,YAAY,EACZ,aAAa,EACb,OAAO,CACV,CAAC;YAEF,wBAAwB;YACxB,MAAM,aAAa,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;YACpD,OAAO;gBACH,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;aAC5E,CAAC;QACN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,OAAO;gBACH,OAAO,EAAE,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,uCAAuC,YAAY,EAAE;qBAC9D,CAAC;gBACF,OAAO,EAAE,IAAI;aAChB,CAAC;QACN,CAAC;IACL,CAAC,CACJ,CAAC;IAEF,MAAM,CAAC,IAAI,CACP,oCAAoC,EACpC,oGAAoG,EACpG;QACI,YAAY,EAAC,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;QAClF,OAAO,EAAC,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;QAC1E,YAAY,EAAC,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+DAA+D,CAAC;QACjG,aAAa,EAAC,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;KAC9D,EACD,KAAK,EAAE,IAKN,EAAE,EAAE;QACD,IAAI,CAAC;YACD,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;YAEpE,+BAA+B;YAC/B,IAAI,CAAC,YAAY,IAAI,CAAC,OAAO,IAAI,CAAC,YAAY,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC/D,MAAM,IAAI,KAAK,CAAC,qGAAqG,CAAC,CAAC;YAC3H,CAAC;YAED,8BAA8B;YAC9B,MAAM,UAAU,GAAG,MAAM,wBAAwB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;YAC/E,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,EAAE,CAAC;YAE5C,2BAA2B;YAC3B,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;YAEtF,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,gBAAgB,aAAa,4BAA4B,YAAY,EAAE,CAAC,CAAC;YAC7F,CAAC;YAED,sCAAsC;YACtC,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,YAAY,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;YAEzF,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACnC,OAAO;oBACH,OAAO,EAAE,CAAC;4BACN,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,oCAAoC,aAAa,EAAE;yBAC5D,CAAC;iBACL,CAAC;YACN,CAAC;YAED,mEAAmE;YACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAClB,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;gBACjE,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;gBACjE,OAAO,KAAK,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;YAC7C,CAAC,CAAC,CAAC;YAEH,8CAA8C;YAC9C,MAAM,kBAAkB,GAAG,WAAW,CAAC,qBAAqB,EAAE,QAAQ,CAAC;YACvE,MAAM,kBAAkB,GAAG,WAAW,CAAC,qBAAqB,EAAE,QAAQ,CAAC;YAEvE,IAAI,CAAC,kBAAkB,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC7C,MAAM,IAAI,KAAK,CAAC,gEAAgE,aAAa,EAAE,CAAC,CAAC;YACrG,CAAC;YAED,sDAAsD;YACtD,MAAM,WAAW,GAAG,MAAM,yBAAyB,CAC/C,MAAM,EACN,OAAO,EACP,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,OAAO,CACV,CAAC;YAEF,MAAM,QAAQ,GAAG;gBACb,IAAI,EAAE,oBAAoB;gBAC1B,aAAa,EAAE,WAAW,CAAC,aAAa;gBACxC,YAAY,EAAE,YAAY;gBAC1B,OAAO,EAAE,OAAO;gBAChB,YAAY,EAAE,YAAY;gBAC1B,OAAO,EAAE;oBACL,YAAY,EAAE,WAAW,CAAC,YAAY;oBACtC,eAAe,EAAE,WAAW,CAAC,eAAe;oBAC5C,gBAAgB,EAAE,WAAW,CAAC,gBAAgB;iBACjD;gBACD,KAAK,EAAE,WAAW,CAAC,KAAK;aAC3B,CAAC;YAEF,OAAO;gBACH,OAAO,EAAE,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;qBAC1C,CAAC;aACL,CAAC;QAEN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,OAAO;gBACH,OAAO,EAAE,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,uCAAuC,YAAY,EAAE;qBAC9D,CAAC;gBACF,OAAO,EAAC,IAAI;aACf,CAAC;QACN,CAAC;IACL,CAAC,CACJ,CAAC;AACN,CAAC"}
|