@achieveai/azuredevops-mcp 1.3.16 → 1.3.17
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/dist/Services/AzureDevOpsService.js +4 -3
- package/dist/Services/AzureDevOpsService.js.map +1 -1
- package/dist/Services/WorkItemService.js +105 -25
- package/dist/Services/WorkItemService.js.map +1 -1
- package/dist/Tools/WorkItemTools.js +1 -1
- package/dist/Tools/WorkItemTools.js.map +1 -1
- package/dist/index.js +5 -3
- package/dist/index.js.map +1 -1
- package/dist/package.json +59 -0
- package/dist/src/Interfaces/AIAssisted.js +3 -0
- package/dist/src/Interfaces/AIAssisted.js.map +1 -0
- package/dist/src/Interfaces/ArtifactManagement.js +3 -0
- package/dist/src/Interfaces/ArtifactManagement.js.map +1 -0
- package/dist/src/Interfaces/AzureDevOps.js +3 -0
- package/dist/src/Interfaces/AzureDevOps.js.map +1 -0
- package/dist/src/Interfaces/BoardsAndSprints.js +3 -0
- package/dist/src/Interfaces/BoardsAndSprints.js.map +1 -0
- package/dist/src/Interfaces/CodeAndRepositories.js +3 -0
- package/dist/src/Interfaces/CodeAndRepositories.js.map +1 -0
- package/dist/src/Interfaces/Common.js +134 -0
- package/dist/src/Interfaces/Common.js.map +1 -0
- package/dist/src/Interfaces/CostResourceManagement.js +3 -0
- package/dist/src/Interfaces/CostResourceManagement.js.map +1 -0
- package/dist/src/Interfaces/DevSecOps.js +3 -0
- package/dist/src/Interfaces/DevSecOps.js.map +1 -0
- package/dist/src/Interfaces/ExternalIntegrations.js +3 -0
- package/dist/src/Interfaces/ExternalIntegrations.js.map +1 -0
- package/dist/src/Interfaces/HybridCrossPlatform.js +3 -0
- package/dist/src/Interfaces/HybridCrossPlatform.js.map +1 -0
- package/dist/src/Interfaces/Pipelines.js +3 -0
- package/dist/src/Interfaces/Pipelines.js.map +1 -0
- package/dist/src/Interfaces/ProjectManagement.js +3 -0
- package/dist/src/Interfaces/ProjectManagement.js.map +1 -0
- package/dist/src/Interfaces/TestingCapabilities.js +3 -0
- package/dist/src/Interfaces/TestingCapabilities.js.map +1 -0
- package/dist/src/Interfaces/Wiki.js +3 -0
- package/dist/src/Interfaces/Wiki.js.map +1 -0
- package/dist/src/Interfaces/WorkItems.js +3 -0
- package/dist/src/Interfaces/WorkItems.js.map +1 -0
- package/dist/src/Services/AIAssistedDevelopmentService.js +195 -0
- package/dist/src/Services/AIAssistedDevelopmentService.js.map +1 -0
- package/dist/src/Services/ArtifactManagementService.js +346 -0
- package/dist/src/Services/ArtifactManagementService.js.map +1 -0
- package/dist/src/Services/AzureDevOpsService.js +385 -0
- package/dist/src/Services/AzureDevOpsService.js.map +1 -0
- package/dist/src/Services/BoardsSprintsService.js +339 -0
- package/dist/src/Services/BoardsSprintsService.js.map +1 -0
- package/dist/src/Services/BuildService.js +405 -0
- package/dist/src/Services/BuildService.js.map +1 -0
- package/dist/src/Services/DevSecOpsService.js +307 -0
- package/dist/src/Services/DevSecOpsService.js.map +1 -0
- package/dist/src/Services/EntraAuthHandler.js +337 -0
- package/dist/src/Services/EntraAuthHandler.js.map +1 -0
- package/dist/src/Services/GitService.js +1595 -0
- package/dist/src/Services/GitService.js.map +1 -0
- package/dist/src/Services/ProjectService.js +257 -0
- package/dist/src/Services/ProjectService.js.map +1 -0
- package/dist/src/Services/TestingCapabilitiesService.js +149 -0
- package/dist/src/Services/TestingCapabilitiesService.js.map +1 -0
- package/dist/src/Services/WikiService.js +90 -0
- package/dist/src/Services/WikiService.js.map +1 -0
- package/dist/src/Services/WorkItemService.js +885 -0
- package/dist/src/Services/WorkItemService.js.map +1 -0
- package/dist/src/Tools/AIAssistedDevelopmentTools.js +137 -0
- package/dist/src/Tools/AIAssistedDevelopmentTools.js.map +1 -0
- package/dist/src/Tools/ArtifactManagementTools.js +140 -0
- package/dist/src/Tools/ArtifactManagementTools.js.map +1 -0
- package/dist/src/Tools/BoardsSprintsTools.js +338 -0
- package/dist/src/Tools/BoardsSprintsTools.js.map +1 -0
- package/dist/src/Tools/BuildTools.js +468 -0
- package/dist/src/Tools/BuildTools.js.map +1 -0
- package/dist/src/Tools/DevSecOpsTools.js +147 -0
- package/dist/src/Tools/DevSecOpsTools.js.map +1 -0
- package/dist/src/Tools/GitTools.js +1475 -0
- package/dist/src/Tools/GitTools.js.map +1 -0
- package/dist/src/Tools/ProjectTools.js +360 -0
- package/dist/src/Tools/ProjectTools.js.map +1 -0
- package/dist/src/Tools/TestingCapabilitiesTools.js +157 -0
- package/dist/src/Tools/TestingCapabilitiesTools.js.map +1 -0
- package/dist/src/Tools/WikiTools.js +137 -0
- package/dist/src/Tools/WikiTools.js.map +1 -0
- package/dist/src/Tools/WorkItemTools.js +862 -0
- package/dist/src/Tools/WorkItemTools.js.map +1 -0
- package/dist/src/config.js +176 -0
- package/dist/src/config.js.map +1 -0
- package/dist/src/index.js +1716 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/utils/formatHelpers.js +257 -0
- package/dist/src/utils/formatHelpers.js.map +1 -0
- package/dist/src/utils/getClassMethods.js +8 -0
- package/dist/src/utils/getClassMethods.js.map +1 -0
- package/dist/src/utils/repositoryResolver.js +40 -0
- package/dist/src/utils/repositoryResolver.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.TestingCapabilitiesToolMethods = exports.TestingCapabilitiesTools = void 0;
|
|
7
|
+
const TestingCapabilitiesService_1 = require("../Services/TestingCapabilitiesService");
|
|
8
|
+
const Common_1 = require("../Interfaces/Common");
|
|
9
|
+
const getClassMethods_1 = __importDefault(require("../utils/getClassMethods"));
|
|
10
|
+
class TestingCapabilitiesTools {
|
|
11
|
+
constructor(config) {
|
|
12
|
+
this.service = new TestingCapabilitiesService_1.TestingCapabilitiesService(config);
|
|
13
|
+
}
|
|
14
|
+
async runAutomatedTests(params) {
|
|
15
|
+
try {
|
|
16
|
+
const result = await this.service.runAutomatedTests(params);
|
|
17
|
+
return (0, Common_1.formatMcpResponse)(result, "Automated tests started");
|
|
18
|
+
}
|
|
19
|
+
catch (error) {
|
|
20
|
+
console.error('Error running automated tests:', error);
|
|
21
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
async getTestAutomationStatus(params) {
|
|
25
|
+
try {
|
|
26
|
+
const result = await this.service.getTestAutomationStatus(params);
|
|
27
|
+
return (0, Common_1.formatMcpResponse)(result, `Test run ${params.testRunId} status`);
|
|
28
|
+
}
|
|
29
|
+
catch (error) {
|
|
30
|
+
console.error('Error getting test status:', error);
|
|
31
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
async configureTestAgents(params) {
|
|
35
|
+
try {
|
|
36
|
+
const result = await this.service.configureTestAgents(params);
|
|
37
|
+
return (0, Common_1.formatMcpResponse)(result, `Test agent ${params.agentName} configured`);
|
|
38
|
+
}
|
|
39
|
+
catch (error) {
|
|
40
|
+
console.error('Error configuring test agent:', error);
|
|
41
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
async createTestDataGenerator(params) {
|
|
45
|
+
try {
|
|
46
|
+
const result = await this.service.createTestDataGenerator(params);
|
|
47
|
+
return (0, Common_1.formatMcpResponse)(result, `Test data generator created: ${params.name}`);
|
|
48
|
+
}
|
|
49
|
+
catch (error) {
|
|
50
|
+
console.error('Error creating test data generator:', error);
|
|
51
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
async manageTestEnvironments(params) {
|
|
55
|
+
try {
|
|
56
|
+
const result = await this.service.manageTestEnvironments(params);
|
|
57
|
+
return (0, Common_1.formatMcpResponse)(result, `Test environment ${params.environmentName} ${params.action}d`);
|
|
58
|
+
}
|
|
59
|
+
catch (error) {
|
|
60
|
+
console.error('Error managing test environment:', error);
|
|
61
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
async getTestFlakiness(params) {
|
|
65
|
+
try {
|
|
66
|
+
const result = await this.service.getTestFlakiness(params);
|
|
67
|
+
return (0, Common_1.formatMcpResponse)(result, "Test flakiness analysis");
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
console.error('Error analyzing test flakiness:', error);
|
|
71
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
async getTestGapAnalysis(params) {
|
|
75
|
+
try {
|
|
76
|
+
const result = await this.service.getTestGapAnalysis(params);
|
|
77
|
+
return (0, Common_1.formatMcpResponse)(result, "Test gap analysis");
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
console.error('Error performing test gap analysis:', error);
|
|
81
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
async runTestImpactAnalysis(params) {
|
|
85
|
+
try {
|
|
86
|
+
const result = await this.service.runTestImpactAnalysis(params);
|
|
87
|
+
return (0, Common_1.formatMcpResponse)(result, `Test impact analysis for build ${params.buildId}`);
|
|
88
|
+
}
|
|
89
|
+
catch (error) {
|
|
90
|
+
console.error('Error running test impact analysis:', error);
|
|
91
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
async getTestHealthDashboard(params) {
|
|
95
|
+
try {
|
|
96
|
+
const result = await this.service.getTestHealthDashboard(params);
|
|
97
|
+
return (0, Common_1.formatMcpResponse)(result, "Test health dashboard");
|
|
98
|
+
}
|
|
99
|
+
catch (error) {
|
|
100
|
+
console.error('Error getting test health dashboard:', error);
|
|
101
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
async runTestOptimization(params) {
|
|
105
|
+
try {
|
|
106
|
+
const result = await this.service.runTestOptimization(params);
|
|
107
|
+
return (0, Common_1.formatMcpResponse)(result, `Test optimization for test plan ${params.testPlanId}`);
|
|
108
|
+
}
|
|
109
|
+
catch (error) {
|
|
110
|
+
console.error('Error running test optimization:', error);
|
|
111
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
async createExploratorySessions(params) {
|
|
115
|
+
try {
|
|
116
|
+
const result = await this.service.createExploratorySessions(params);
|
|
117
|
+
return (0, Common_1.formatMcpResponse)(result, `Created exploratory session: ${params.title}`);
|
|
118
|
+
}
|
|
119
|
+
catch (error) {
|
|
120
|
+
console.error('Error creating exploratory session:', error);
|
|
121
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
async recordExploratoryTestResults(params) {
|
|
125
|
+
try {
|
|
126
|
+
const result = await this.service.recordExploratoryTestResults(params);
|
|
127
|
+
return (0, Common_1.formatMcpResponse)(result, `Recorded ${params.findings.length} findings for session ${params.sessionId}`);
|
|
128
|
+
}
|
|
129
|
+
catch (error) {
|
|
130
|
+
console.error('Error recording exploratory test results:', error);
|
|
131
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
async convertFindingsToWorkItems(params) {
|
|
135
|
+
try {
|
|
136
|
+
const result = await this.service.convertFindingsToWorkItems(params);
|
|
137
|
+
return (0, Common_1.formatMcpResponse)(result, `Converted findings to work items for session ${params.sessionId}`);
|
|
138
|
+
}
|
|
139
|
+
catch (error) {
|
|
140
|
+
console.error('Error converting findings to work items:', error);
|
|
141
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
async getExploratoryTestStatistics(params) {
|
|
145
|
+
try {
|
|
146
|
+
const result = await this.service.getExploratoryTestStatistics(params);
|
|
147
|
+
return (0, Common_1.formatMcpResponse)(result, "Exploratory testing statistics");
|
|
148
|
+
}
|
|
149
|
+
catch (error) {
|
|
150
|
+
console.error('Error getting exploratory test statistics:', error);
|
|
151
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
exports.TestingCapabilitiesTools = TestingCapabilitiesTools;
|
|
156
|
+
exports.TestingCapabilitiesToolMethods = (0, getClassMethods_1.default)(TestingCapabilitiesTools.prototype);
|
|
157
|
+
//# sourceMappingURL=TestingCapabilitiesTools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TestingCapabilitiesTools.js","sourceRoot":"","sources":["../../../src/Tools/TestingCapabilitiesTools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.WikiToolMethods = exports.WikiTools = void 0;
|
|
7
|
+
const WikiService_1 = require("../Services/WikiService");
|
|
8
|
+
const Common_1 = require("../Interfaces/Common");
|
|
9
|
+
const getClassMethods_1 = __importDefault(require("../utils/getClassMethods"));
|
|
10
|
+
const formatHelpers_1 = require("../utils/formatHelpers");
|
|
11
|
+
class WikiTools {
|
|
12
|
+
constructor(config) {
|
|
13
|
+
this.wikiService = new WikiService_1.WikiService(config);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* List all wikis in the project
|
|
17
|
+
*/
|
|
18
|
+
async listWikis(params) {
|
|
19
|
+
try {
|
|
20
|
+
const wikis = await this.wikiService.listWikis(params);
|
|
21
|
+
if (wikis.length === 0) {
|
|
22
|
+
return (0, Common_1.formatMcpResponse)(wikis, `## Wikis\n\nNo wikis found in the project.`);
|
|
23
|
+
}
|
|
24
|
+
let md = `## Wikis\n\n**${wikis.length} wiki${wikis.length !== 1 ? 's' : ''}** found\n\n`;
|
|
25
|
+
const rows = wikis.map((w) => [
|
|
26
|
+
w.name || 'Unknown',
|
|
27
|
+
w.id || '-',
|
|
28
|
+
w.type === 0 ? 'Project Wiki' : w.type === 1 ? 'Code Wiki' : `${w.type ?? '-'}`,
|
|
29
|
+
w.versions?.[0]?.version || '-',
|
|
30
|
+
]);
|
|
31
|
+
md += (0, formatHelpers_1.markdownTable)(['Name', 'ID', 'Type', 'Version'], rows);
|
|
32
|
+
return (0, Common_1.formatMcpResponse)(wikis, md, false, true);
|
|
33
|
+
}
|
|
34
|
+
catch (error) {
|
|
35
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Get details about a specific wiki
|
|
40
|
+
*/
|
|
41
|
+
async getWiki(params) {
|
|
42
|
+
try {
|
|
43
|
+
const wiki = await this.wikiService.getWiki(params);
|
|
44
|
+
let md = `## Wiki: ${wiki.name || 'Unknown'}\n\n`;
|
|
45
|
+
md += `| Property | Value |\n|---|---|\n`;
|
|
46
|
+
md += `| **ID** | ${wiki.id || '-'} |\n`;
|
|
47
|
+
md += `| **Name** | ${wiki.name || '-'} |\n`;
|
|
48
|
+
md += `| **Type** | ${wiki.type === 0 ? 'Project Wiki' : wiki.type === 1 ? 'Code Wiki' : `${wiki.type ?? '-'}`} |\n`;
|
|
49
|
+
md += `| **URL** | ${wiki.url || '-'} |\n`;
|
|
50
|
+
if (wiki.versions && wiki.versions.length > 0) {
|
|
51
|
+
md += `| **Version** | ${wiki.versions[0].version || '-'} |\n`;
|
|
52
|
+
}
|
|
53
|
+
if (wiki.mappedPath) {
|
|
54
|
+
md += `| **Mapped Path** | \`${wiki.mappedPath}\` |\n`;
|
|
55
|
+
}
|
|
56
|
+
return (0, Common_1.formatMcpResponse)(wiki, md, false, true);
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* List wiki pages under a path
|
|
64
|
+
*/
|
|
65
|
+
async listWikiPages(params) {
|
|
66
|
+
try {
|
|
67
|
+
const content = await this.wikiService.listWikiPages(params);
|
|
68
|
+
let md = `## Wiki Pages: ${params.wikiIdentifier}\n\n`;
|
|
69
|
+
md += `**Path:** \`${params.path || '/'}\`\n\n`;
|
|
70
|
+
// The content is typically JSON with page structure
|
|
71
|
+
try {
|
|
72
|
+
const parsed = JSON.parse(content);
|
|
73
|
+
if (parsed.subPages && Array.isArray(parsed.subPages)) {
|
|
74
|
+
md += `**${parsed.subPages.length} page(s)**\n\n`;
|
|
75
|
+
const rows = parsed.subPages.map((p) => [
|
|
76
|
+
p.path || '-',
|
|
77
|
+
`${p.id || '-'}`,
|
|
78
|
+
p.isNonConformant ? 'Non-conformant' : 'OK',
|
|
79
|
+
]);
|
|
80
|
+
md += (0, formatHelpers_1.markdownTable)(['Path', 'ID', 'Status'], rows);
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
md += `**Page:** ${parsed.path || '/'}\n`;
|
|
84
|
+
if (parsed.id)
|
|
85
|
+
md += `**ID:** ${parsed.id}\n`;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
// If not JSON, show as-is
|
|
90
|
+
md += content;
|
|
91
|
+
}
|
|
92
|
+
return (0, Common_1.formatMcpResponse)({ content, path: params.path }, md, false, true);
|
|
93
|
+
}
|
|
94
|
+
catch (error) {
|
|
95
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Get wiki page content
|
|
100
|
+
*/
|
|
101
|
+
async getWikiPageContent(params) {
|
|
102
|
+
try {
|
|
103
|
+
const content = await this.wikiService.getWikiPageContent(params);
|
|
104
|
+
let md = `## Wiki Page: ${params.path || '/'}\n\n`;
|
|
105
|
+
md += `**Wiki:** ${params.wikiIdentifier}\n\n`;
|
|
106
|
+
md += `---\n\n`;
|
|
107
|
+
md += content;
|
|
108
|
+
return (0, Common_1.formatMcpResponse)({ content, path: params.path, wikiIdentifier: params.wikiIdentifier }, md, false, true);
|
|
109
|
+
}
|
|
110
|
+
catch (error) {
|
|
111
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Create or update a wiki page
|
|
116
|
+
*/
|
|
117
|
+
async createOrUpdateWikiPage(params) {
|
|
118
|
+
try {
|
|
119
|
+
const result = await this.wikiService.createOrUpdateWikiPage(params);
|
|
120
|
+
let md = `## Wiki Page Updated\n\n`;
|
|
121
|
+
md += `| Property | Value |\n|---|---|\n`;
|
|
122
|
+
md += `| **Wiki** | ${params.wikiIdentifier} |\n`;
|
|
123
|
+
md += `| **Path** | \`${params.path}\` |\n`;
|
|
124
|
+
md += `| **Content Length** | ${params.content.length} chars |\n`;
|
|
125
|
+
if (params.comment) {
|
|
126
|
+
md += `| **Comment** | ${params.comment} |\n`;
|
|
127
|
+
}
|
|
128
|
+
return (0, Common_1.formatMcpResponse)(result, md, false, true);
|
|
129
|
+
}
|
|
130
|
+
catch (error) {
|
|
131
|
+
return (0, Common_1.formatErrorResponse)(error);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
exports.WikiTools = WikiTools;
|
|
136
|
+
exports.WikiToolMethods = (0, getClassMethods_1.default)(WikiTools.prototype);
|
|
137
|
+
//# sourceMappingURL=WikiTools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WikiTools.js","sourceRoot":"","sources":["../../../src/Tools/WikiTools.ts"],"names":[],"mappings":"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"}
|