@elliotding/ai-agent-mcp 0.1.31 → 0.2.1

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.
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Search Coordinator
3
+ * Orchestrates Tier 1 + Tier 2 search and merges results
4
+ */
5
+ import type { ResourceCandidate, ScoredResult } from './tier1-keyword-match';
6
+ export declare class SearchCoordinator {
7
+ private tier1;
8
+ private tier2;
9
+ constructor();
10
+ /**
11
+ * Merge results from multiple tiers (dedup + keep highest score)
12
+ */
13
+ private mergeResults;
14
+ /**
15
+ * Execute enhanced search (two-tier architecture)
16
+ *
17
+ * Strategy:
18
+ * 1. Tier 1: Precise keyword matching
19
+ * 2. If Tier 1 has enough high-quality results (≥3 and top score ≥70), return directly
20
+ * 3. Otherwise, run Tier 2 fuzzy search to supplement
21
+ * 4. Merge and deduplicate
22
+ * 5. Filter very low scores (< 20)
23
+ */
24
+ enhancedSearch(query: string, apiResults: ResourceCandidate[], maxResults?: number): ScoredResult[];
25
+ }
26
+ //# sourceMappingURL=coordinator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../src/search/coordinator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE7E,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,KAAK,CAAiB;IAC9B,OAAO,CAAC,KAAK,CAAgB;;IAO7B;;OAEG;IACH,OAAO,CAAC,YAAY;IA6BpB;;;;;;;;;OASG;IACH,cAAc,CACZ,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,iBAAiB,EAAE,EAC/B,UAAU,GAAE,MAAW,GACtB,YAAY,EAAE;CAwClB"}
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ /**
3
+ * Search Coordinator
4
+ * Orchestrates Tier 1 + Tier 2 search and merges results
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.SearchCoordinator = void 0;
8
+ const logger_1 = require("../utils/logger");
9
+ const tier1_keyword_match_1 = require("./tier1-keyword-match");
10
+ const tier2_fuzzy_search_1 = require("./tier2-fuzzy-search");
11
+ class SearchCoordinator {
12
+ tier1;
13
+ tier2;
14
+ constructor() {
15
+ this.tier1 = new tier1_keyword_match_1.KeywordMatcher();
16
+ this.tier2 = new tier2_fuzzy_search_1.FuzzySearcher();
17
+ }
18
+ /**
19
+ * Merge results from multiple tiers (dedup + keep highest score)
20
+ */
21
+ mergeResults(resultSets) {
22
+ const resultMap = new Map(); // key: resource.id
23
+ for (const results of resultSets) {
24
+ for (const result of results) {
25
+ const existing = resultMap.get(result.id);
26
+ if (existing) {
27
+ // Keep higher score, same score prefer lower tier (higher priority)
28
+ if (result.score > existing.score ||
29
+ (result.score === existing.score && result.match_tier < existing.match_tier)) {
30
+ resultMap.set(result.id, result);
31
+ }
32
+ }
33
+ else {
34
+ resultMap.set(result.id, result);
35
+ }
36
+ }
37
+ }
38
+ // Sort: score desc → tier asc → name alpha
39
+ return Array.from(resultMap.values()).sort((a, b) => {
40
+ if (a.score !== b.score)
41
+ return b.score - a.score;
42
+ if (a.match_tier !== b.match_tier)
43
+ return a.match_tier - b.match_tier;
44
+ return a.name.localeCompare(b.name);
45
+ });
46
+ }
47
+ /**
48
+ * Execute enhanced search (two-tier architecture)
49
+ *
50
+ * Strategy:
51
+ * 1. Tier 1: Precise keyword matching
52
+ * 2. If Tier 1 has enough high-quality results (≥3 and top score ≥70), return directly
53
+ * 3. Otherwise, run Tier 2 fuzzy search to supplement
54
+ * 4. Merge and deduplicate
55
+ * 5. Filter very low scores (< 20)
56
+ */
57
+ enhancedSearch(query, apiResults, maxResults = 10) {
58
+ logger_1.logger.info({ query, candidateCount: apiResults.length }, 'Enhanced search started');
59
+ // 1. Tier 1: Precise keyword matching
60
+ const tier1Results = this.tier1.search(query, apiResults);
61
+ // Filter low scores immediately
62
+ const tier1Filtered = tier1Results.filter((r) => r.score >= 20);
63
+ // If Tier 1 has enough high-quality results, return directly
64
+ if (tier1Filtered.length >= 3 && tier1Filtered[0] && tier1Filtered[0].score >= 70) {
65
+ logger_1.logger.info({ tier1Count: tier1Filtered.length, topScore: tier1Filtered[0].score }, 'Tier 1 sufficient, skipping Tier 2');
66
+ return tier1Filtered.slice(0, maxResults);
67
+ }
68
+ // 2. Tier 2: Fuzzy search to supplement
69
+ const tier2Results = this.tier2.search(query, apiResults);
70
+ // 3. Merge and deduplicate
71
+ const merged = this.mergeResults([tier1Filtered, tier2Results]);
72
+ // 4. Filter very low scores (< 20) and limit count
73
+ const filtered = merged.filter((r) => r.score >= 20).slice(0, maxResults);
74
+ logger_1.logger.info({
75
+ tier1Count: tier1Filtered.length,
76
+ tier2Count: tier2Results.length,
77
+ mergedCount: merged.length,
78
+ finalCount: filtered.length,
79
+ topScore: filtered.length > 0 && filtered[0] ? filtered[0].score : undefined,
80
+ }, 'Enhanced search completed');
81
+ return filtered;
82
+ }
83
+ }
84
+ exports.SearchCoordinator = SearchCoordinator;
85
+ //# sourceMappingURL=coordinator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coordinator.js","sourceRoot":"","sources":["../../src/search/coordinator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Search Module Exports
3
+ */
4
+ export { SearchCoordinator } from './coordinator';
5
+ export { KeywordMatcher } from './tier1-keyword-match';
6
+ export { FuzzySearcher } from './tier2-fuzzy-search';
7
+ export type { ResourceCandidate, ScoredResult } from './tier1-keyword-match';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/search/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,YAAY,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ /**
3
+ * Search Module Exports
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.FuzzySearcher = exports.KeywordMatcher = exports.SearchCoordinator = void 0;
7
+ var coordinator_1 = require("./coordinator");
8
+ Object.defineProperty(exports, "SearchCoordinator", { enumerable: true, get: function () { return coordinator_1.SearchCoordinator; } });
9
+ var tier1_keyword_match_1 = require("./tier1-keyword-match");
10
+ Object.defineProperty(exports, "KeywordMatcher", { enumerable: true, get: function () { return tier1_keyword_match_1.KeywordMatcher; } });
11
+ var tier2_fuzzy_search_1 = require("./tier2-fuzzy-search");
12
+ Object.defineProperty(exports, "FuzzySearcher", { enumerable: true, get: function () { return tier2_fuzzy_search_1.FuzzySearcher; } });
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/search/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,6CAAkD;AAAzC,gHAAA,iBAAiB,OAAA;AAC1B,6DAAuD;AAA9C,qHAAA,cAAc,OAAA;AACvB,2DAAqD;AAA5C,mHAAA,aAAa,OAAA"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Tier 1: Keyword Matcher
3
+ * Precise keyword matching with weighted scoring (name > description)
4
+ */
5
+ export interface ResourceCandidate {
6
+ id: string;
7
+ name: string;
8
+ description: string;
9
+ type: string;
10
+ team: string;
11
+ version: string;
12
+ is_subscribed: boolean;
13
+ download_url?: string;
14
+ metadata?: unknown;
15
+ }
16
+ export interface ScoredResult extends ResourceCandidate {
17
+ score: number;
18
+ match_tier: 1 | 2;
19
+ match_reason: string;
20
+ excerpt?: string;
21
+ }
22
+ export declare class KeywordMatcher {
23
+ private readonly STOP_WORDS;
24
+ /**
25
+ * Extract keywords from query (supports Chinese and English)
26
+ */
27
+ private extractKeywords;
28
+ /**
29
+ * Escape special regex characters
30
+ */
31
+ private escapeRegex;
32
+ /**
33
+ * Calculate match score with weighted fields
34
+ *
35
+ * Scoring rules:
36
+ * - name field weight: 3x
37
+ * - description field weight: 1x
38
+ * - Whole word match > partial match
39
+ * - If name doesn't match at all, force 70% penalty
40
+ */
41
+ private calculateScore;
42
+ /**
43
+ * Build human-readable match reason
44
+ */
45
+ private buildMatchReason;
46
+ /**
47
+ * Execute Tier 1 search
48
+ */
49
+ search(query: string, candidates: ResourceCandidate[]): ScoredResult[];
50
+ }
51
+ //# sourceMappingURL=tier1-keyword-match.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tier1-keyword-match.d.ts","sourceRoot":"","sources":["../../src/search/tier1-keyword-match.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,YAAa,SAAQ,iBAAiB;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAOxB;IAEH;;OAEG;IACH,OAAO,CAAC,eAAe;IAYvB;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;;;;;;;OAQG;IACH,OAAO,CAAC,cAAc;IA6CtB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmBxB;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,YAAY,EAAE;CAgCvE"}
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ /**
3
+ * Tier 1: Keyword Matcher
4
+ * Precise keyword matching with weighted scoring (name > description)
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.KeywordMatcher = void 0;
8
+ const logger_1 = require("../utils/logger");
9
+ class KeywordMatcher {
10
+ STOP_WORDS = new Set([
11
+ // English stop words
12
+ 'a', 'an', 'and', 'are', 'as', 'at', 'be', 'by', 'for', 'from',
13
+ 'has', 'he', 'in', 'is', 'it', 'its', 'of', 'on', 'that', 'the',
14
+ 'to', 'was', 'will', 'with',
15
+ // Chinese stop words
16
+ '的', '是', '在', '和', '了', '有', '与', '这', '个', '我',
17
+ ]);
18
+ /**
19
+ * Extract keywords from query (supports Chinese and English)
20
+ */
21
+ extractKeywords(query) {
22
+ // Split by spaces, underscores, hyphens, and Chinese characters
23
+ const words = query
24
+ .toLowerCase()
25
+ .split(/[\s_\-]+/)
26
+ .map((w) => w.trim())
27
+ .filter((w) => w.length > 0);
28
+ // Filter out stop words
29
+ return words.filter((w) => !this.STOP_WORDS.has(w));
30
+ }
31
+ /**
32
+ * Escape special regex characters
33
+ */
34
+ escapeRegex(str) {
35
+ return str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
36
+ }
37
+ /**
38
+ * Calculate match score with weighted fields
39
+ *
40
+ * Scoring rules:
41
+ * - name field weight: 3x
42
+ * - description field weight: 1x
43
+ * - Whole word match > partial match
44
+ * - If name doesn't match at all, force 70% penalty
45
+ */
46
+ calculateScore(keywords, resource) {
47
+ const lowerName = resource.name.toLowerCase();
48
+ const lowerDesc = resource.description.toLowerCase();
49
+ let nameMatchCount = 0;
50
+ let descMatchCount = 0;
51
+ for (const keyword of keywords) {
52
+ // Prefer whole word matching (using regex \b boundary)
53
+ const wordBoundaryRegex = new RegExp(`\\b${this.escapeRegex(keyword)}\\b`, 'i');
54
+ if (wordBoundaryRegex.test(resource.name)) {
55
+ nameMatchCount++;
56
+ }
57
+ else if (lowerName.includes(keyword)) {
58
+ nameMatchCount += 0.7; // Partial match penalty
59
+ }
60
+ if (wordBoundaryRegex.test(resource.description)) {
61
+ descMatchCount++;
62
+ }
63
+ else if (lowerDesc.includes(keyword)) {
64
+ descMatchCount += 0.5; // Description partial match penalty
65
+ }
66
+ }
67
+ // ✅ Critical rule: If name doesn't match at all, force penalty
68
+ if (nameMatchCount === 0 && descMatchCount > 0) {
69
+ // Description matches but name doesn't, only give 30% of base score
70
+ // This ensures resources like "release-log-review" (only mentions "build info" in description)
71
+ // don't get high scores (e.g., 25 → 7)
72
+ const baseScore = (descMatchCount * 1) / keywords.length * 25;
73
+ return Math.floor(baseScore * 0.3); // Force 70% penalty
74
+ }
75
+ // Name has matches, calculate normally
76
+ const weightedScore = (nameMatchCount * 3 + descMatchCount * 1) / keywords.length;
77
+ let score = Math.floor(weightedScore * 25); // Map to 0-100
78
+ // Bonus: All keywords match in name
79
+ if (nameMatchCount >= keywords.length && keywords.length > 1) {
80
+ score = Math.min(100, score + 20);
81
+ }
82
+ return score;
83
+ }
84
+ /**
85
+ * Build human-readable match reason
86
+ */
87
+ buildMatchReason(keywords, resource) {
88
+ const lowerName = resource.name.toLowerCase();
89
+ const lowerDesc = resource.description.toLowerCase();
90
+ const nameMatches = keywords.filter((k) => lowerName.includes(k));
91
+ const descMatches = keywords.filter((k) => lowerDesc.includes(k) && !lowerName.includes(k));
92
+ if (nameMatches.length === keywords.length) {
93
+ return `Name matches all keywords: ${nameMatches.join(', ')}`;
94
+ }
95
+ if (nameMatches.length > 0) {
96
+ return `Name matches: ${nameMatches.join(', ')}`;
97
+ }
98
+ if (descMatches.length > 0) {
99
+ return `Description matches: ${descMatches.join(', ')}`;
100
+ }
101
+ return 'No keyword match';
102
+ }
103
+ /**
104
+ * Execute Tier 1 search
105
+ */
106
+ search(query, candidates) {
107
+ const keywords = this.extractKeywords(query);
108
+ if (keywords.length === 0) {
109
+ logger_1.logger.debug({ query }, 'No valid keywords extracted');
110
+ return [];
111
+ }
112
+ logger_1.logger.debug({ query, keywords }, 'Tier 1 keyword search started');
113
+ const results = [];
114
+ for (const resource of candidates) {
115
+ const score = this.calculateScore(keywords, resource);
116
+ if (score > 0) {
117
+ results.push({
118
+ ...resource,
119
+ score,
120
+ match_tier: 1,
121
+ match_reason: this.buildMatchReason(keywords, resource),
122
+ });
123
+ }
124
+ }
125
+ // Sort by score descending
126
+ const sorted = results.sort((a, b) => b.score - a.score);
127
+ logger_1.logger.debug({ resultCount: sorted.length, topScore: sorted[0]?.score }, 'Tier 1 search completed');
128
+ return sorted;
129
+ }
130
+ }
131
+ exports.KeywordMatcher = KeywordMatcher;
132
+ //# sourceMappingURL=tier1-keyword-match.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tier1-keyword-match.js","sourceRoot":"","sources":["../../src/search/tier1-keyword-match.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Tier 2: Fuzzy Searcher
3
+ * Semantic fuzzy search powered by Fuse.js
4
+ */
5
+ import type { ResourceCandidate, ScoredResult } from './tier1-keyword-match';
6
+ export declare class FuzzySearcher {
7
+ private readonly fuseOptions;
8
+ /**
9
+ * Prepare searchable data structure
10
+ */
11
+ private prepareSearchableData;
12
+ /**
13
+ * Convert Fuse score (0=best) to normal score (100=best)
14
+ */
15
+ private convertFuseScore;
16
+ /**
17
+ * Extract excerpt (matched context)
18
+ */
19
+ private extractExcerpt;
20
+ /**
21
+ * Build match reason
22
+ */
23
+ private buildMatchReason;
24
+ /**
25
+ * Execute Tier 2 search
26
+ */
27
+ search(query: string, candidates: ResourceCandidate[]): ScoredResult[];
28
+ }
29
+ //# sourceMappingURL=tier2-fuzzy-search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tier2-fuzzy-search.d.ts","sourceRoot":"","sources":["../../src/search/tier2-fuzzy-search.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAM7E,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAY1B;IAEF;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAO7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAKxB;;OAEG;IACH,OAAO,CAAC,cAAc;IAqBtB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAcxB;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,YAAY,EAAE;CA8BvE"}
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ /**
3
+ * Tier 2: Fuzzy Searcher
4
+ * Semantic fuzzy search powered by Fuse.js
5
+ */
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.FuzzySearcher = void 0;
11
+ const fuse_js_1 = __importDefault(require("fuse.js"));
12
+ const logger_1 = require("../utils/logger");
13
+ class FuzzySearcher {
14
+ fuseOptions = {
15
+ keys: [
16
+ { name: 'name', weight: 0.5 }, // name has highest weight
17
+ { name: 'description', weight: 0.3 }, // description second
18
+ { name: 'searchableContent', weight: 0.2 }, // combined content lowest
19
+ ],
20
+ threshold: 0.35, // Balanced threshold (0.3 too strict for Chinese, 0.4 too loose)
21
+ includeScore: true, // Return match scores
22
+ minMatchCharLength: 2, // Keep 2 for Chinese (Chinese chars are 2-3 bytes)
23
+ ignoreLocation: true, // Don't restrict match position
24
+ useExtendedSearch: false, // Don't need advanced query syntax
25
+ distance: 100, // Slightly relaxed for Chinese (was 50)
26
+ };
27
+ /**
28
+ * Prepare searchable data structure
29
+ */
30
+ prepareSearchableData(candidates) {
31
+ return candidates.map((resource) => ({
32
+ ...resource,
33
+ searchableContent: `${resource.name} ${resource.description}`,
34
+ }));
35
+ }
36
+ /**
37
+ * Convert Fuse score (0=best) to normal score (100=best)
38
+ */
39
+ convertFuseScore(fuseScore) {
40
+ const score = fuseScore ?? 0;
41
+ return Math.max(0, Math.min(100, Math.floor((1 - score) * 100)));
42
+ }
43
+ /**
44
+ * Extract excerpt (matched context)
45
+ */
46
+ extractExcerpt(text, query, maxLength = 150) {
47
+ const lowerText = text.toLowerCase();
48
+ const lowerQuery = query.toLowerCase();
49
+ const index = lowerText.indexOf(lowerQuery);
50
+ if (index === -1) {
51
+ // No exact match, return first 150 chars
52
+ return text.length > maxLength ? text.substring(0, maxLength) + '...' : text;
53
+ }
54
+ // Extract 50 chars before and after match
55
+ const start = Math.max(0, index - 50);
56
+ const end = Math.min(text.length, index + query.length + 50);
57
+ let excerpt = text.substring(start, end);
58
+ if (start > 0)
59
+ excerpt = '...' + excerpt;
60
+ if (end < text.length)
61
+ excerpt = excerpt + '...';
62
+ return excerpt;
63
+ }
64
+ /**
65
+ * Build match reason
66
+ */
67
+ buildMatchReason(query, resource) {
68
+ const lowerName = resource.name.toLowerCase();
69
+ const lowerDesc = resource.description.toLowerCase();
70
+ const lowerQuery = query.toLowerCase();
71
+ if (lowerName.includes(lowerQuery)) {
72
+ return `Name contains: "${query}"`;
73
+ }
74
+ if (lowerDesc.includes(lowerQuery)) {
75
+ return `Description mentions: "${query}"`;
76
+ }
77
+ return `Content semantically matches: "${query}"`;
78
+ }
79
+ /**
80
+ * Execute Tier 2 search
81
+ */
82
+ search(query, candidates) {
83
+ logger_1.logger.debug({ query, candidateCount: candidates.length }, 'Tier 2 fuzzy search started');
84
+ const searchableData = this.prepareSearchableData(candidates);
85
+ const fuse = new fuse_js_1.default(searchableData, this.fuseOptions);
86
+ const fuseResults = fuse.search(query);
87
+ const results = fuseResults.map((result) => {
88
+ const score = this.convertFuseScore(result.score);
89
+ const resource = result.item;
90
+ return {
91
+ ...resource,
92
+ score,
93
+ match_tier: 2,
94
+ match_reason: this.buildMatchReason(query, resource),
95
+ excerpt: this.extractExcerpt(resource.description, query),
96
+ };
97
+ });
98
+ // Filter low scores (< 40 for Tier 2, stricter than Tier 1)
99
+ const filtered = results.filter((r) => r.score >= 40);
100
+ logger_1.logger.debug({ resultCount: filtered.length, topScore: filtered[0]?.score }, 'Tier 2 search completed');
101
+ return filtered;
102
+ }
103
+ }
104
+ exports.FuzzySearcher = FuzzySearcher;
105
+ //# sourceMappingURL=tier2-fuzzy-search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tier2-fuzzy-search.js","sourceRoot":"","sources":["../../src/search/tier2-fuzzy-search.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"search-resources.d.ts","sourceRoot":"","sources":["../../src/tools/search-resources.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,KAAK,EAAyB,qBAAqB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AA8C/F,wBAAsB,eAAe,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC,CAgGjG;AAGD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6B/B,CAAC"}
1
+ {"version":3,"file":"search-resources.d.ts","sourceRoot":"","sources":["../../src/tools/search-resources.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,KAAK,EAAyB,qBAAqB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAmD/F,wBAAsB,eAAe,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC,CAkHjG;AAGD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6B/B,CAAC"}
@@ -11,6 +11,9 @@ const client_1 = require("../api/client");
11
11
  const manager_1 = require("../filesystem/manager");
12
12
  const cursor_paths_js_1 = require("../utils/cursor-paths.js");
13
13
  const errors_1 = require("../types/errors");
14
+ const search_1 = require("../search");
15
+ // Search coordinator singleton
16
+ const searchCoordinator = new search_1.SearchCoordinator();
14
17
  // Simple in-memory cache
15
18
  const searchCache = new Map();
16
19
  const CACHE_TTL = 5 * 60 * 1000; // 5 minutes
@@ -76,8 +79,17 @@ async function searchResources(params) {
76
79
  type: typedParams.type,
77
80
  keyword: typedParams.keyword,
78
81
  }, typedParams.user_token);
82
+ // ✅ MCP Server-side enhanced search (Tier 1 + Tier 2)
83
+ logger_1.logger.debug({ apiResultCount: searchResults.results.length }, 'Applying MCP-side search enhancement...');
84
+ const enhancedResults = searchCoordinator.enhancedSearch(typedParams.keyword || '', searchResults.results, 20 // maxResults
85
+ );
86
+ logger_1.logger.info({
87
+ apiResults: searchResults.results.length,
88
+ enhancedResults: enhancedResults.length,
89
+ topScore: enhancedResults[0]?.score
90
+ }, 'Search enhancement applied');
79
91
  // Check subscription and installation status for each result
80
- const enhancedResults = await Promise.all(searchResults.results.map(async (resource) => {
92
+ const finalResults = await Promise.all(enhancedResults.map(async (resource) => {
81
93
  // Check if installed locally in the Cursor directory for this resource type
82
94
  let isInstalled = false;
83
95
  try {
@@ -95,8 +107,8 @@ async function searchResources(params) {
95
107
  }));
96
108
  // Build final result
97
109
  const result = {
98
- total: searchResults.total,
99
- results: enhancedResults,
110
+ total: finalResults.length,
111
+ results: finalResults,
100
112
  };
101
113
  // Cache the results
102
114
  cacheResults(cacheKey, result);
@@ -1 +1 @@
1
- {"version":3,"file":"search-resources.js","sourceRoot":"","sources":["../../src/tools/search-resources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search-resources.js","sourceRoot":"","sources":["../../src/tools/search-resources.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sync-resources.d.ts","sourceRoot":"","sources":["../../src/tools/sync-resources.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAcH,OAAO,KAAK,EAEV,mBAAmB,EAEnB,UAAU,EACX,MAAM,gBAAgB,CAAC;AAmDxB,wBAAsB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,CA8vB7F;AAGD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4F7B,CAAC"}
1
+ {"version":3,"file":"sync-resources.d.ts","sourceRoot":"","sources":["../../src/tools/sync-resources.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAcH,OAAO,KAAK,EAEV,mBAAmB,EAEnB,UAAU,EACX,MAAM,gBAAgB,CAAC;AAmDxB,wBAAsB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAmxB7F;AAGD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyG7B,CAAC"}
@@ -614,35 +614,55 @@ async function syncResources(params) {
614
614
  // identical — avoiding unnecessary disk I/O. If the local file is missing
615
615
  // or has different content, the AI writes it unconditionally, which also
616
616
  // recovers files that were accidentally deleted by the user.
617
+ //
618
+ // DUAL-LAYER STRATEGY (v1.6):
619
+ // - scope='global' → write to ~/.cursor/rules/ only (macOS support)
620
+ // - scope='workspace' → write to ${WORKSPACE}/.cursor/rules/ only (Windows support)
621
+ // - scope='all' → write to BOTH locations (maximum compatibility)
617
622
  if (sub.type === 'rule') {
618
- const typeDir = (0, cursor_paths_1.getCursorTypeDirForClient)(sub.type);
619
623
  const writeActions = [];
620
- for (const file of resourceFiles) {
621
- const normalised = path.normalize(file.path);
622
- if (normalised.startsWith('..')) {
623
- logger_1.logger.warn({ resourceId: sub.id, filePath: file.path }, 'Skipping suspicious file path');
624
- continue;
624
+ // Determine target directories based on scope parameter
625
+ const targetDirs = [];
626
+ if (scope === 'global' || scope === 'all') {
627
+ targetDirs.push((0, cursor_paths_1.getCursorTypeDirForClient)(sub.type)); // ~/.cursor/rules/
628
+ }
629
+ if (scope === 'workspace' || scope === 'all') {
630
+ targetDirs.push('.cursor/rules'); // relative to workspace root
631
+ }
632
+ for (const targetDir of targetDirs) {
633
+ for (const file of resourceFiles) {
634
+ const normalised = path.normalize(file.path);
635
+ if (normalised.startsWith('..')) {
636
+ logger_1.logger.warn({ resourceId: sub.id, filePath: file.path }, 'Skipping suspicious file path');
637
+ continue;
638
+ }
639
+ const destPath = `${targetDir}/${normalised}`;
640
+ localActions.push({
641
+ action: 'write_file',
642
+ path: destPath,
643
+ content: file.content,
644
+ });
645
+ writeActions.push({ destPath, contentLength: file.content.length });
625
646
  }
626
- const destPath = `${typeDir}/${normalised}`;
627
- localActions.push({
628
- action: 'write_file',
629
- path: destPath,
630
- content: file.content,
631
- });
632
- writeActions.push({ destPath, contentLength: file.content.length });
633
647
  }
634
648
  logger_1.logger.info({
635
649
  resourceId: sub.id,
636
650
  resourceName: sub.name,
637
- typeDir,
651
+ scope,
652
+ targetDirs,
638
653
  fileCount: writeActions.length,
639
654
  files: writeActions,
640
- clientSideNote: 'AI will compare file content directly; write is skipped if content is identical',
641
- }, 'sync_resources: Rule write_file actions queued for AI (client-side content comparison)');
655
+ dualLayerNote: scope === 'all'
656
+ ? 'DUAL-LAYER: Each file generates TWO independent write_file actions (global + workspace). AI must process BOTH actions separately — skipping one does NOT skip the other.'
657
+ : 'Single-layer sync',
658
+ clientSideNote: 'AI will compare file content directly; write is skipped if content is identical FOR EACH ACTION INDEPENDENTLY',
659
+ }, 'sync_resources: Rule — write_file actions queued for AI (dual-layer strategy)');
642
660
  tally.synced++;
643
661
  details.push({ id: sub.id, name: sub.name, action: 'synced', version: resourceVersion });
644
- (0, logger_1.logToolStep)('sync_resources', 'Rule: write_file actions queued for AI', {
662
+ (0, logger_1.logToolStep)('sync_resources', 'Rule: write_file actions queued for AI (dual-layer)', {
645
663
  resourceId: sub.id,
664
+ scope,
665
+ targetCount: targetDirs.length,
646
666
  fileCount: resourceFiles.length,
647
667
  });
648
668
  continue;
@@ -795,6 +815,14 @@ exports.syncResourcesTool = {
795
815
  ' (3) SKIP the write if they are EXACTLY equal — the file is already up-to-date. ' +
796
816
  ' (4) Otherwise, create any missing parent directories and write the file. ' +
797
817
  ' (5) If `mode` field is present (e.g. "0755"), set file permissions using fs.chmod() on Unix systems. ' +
818
+ ' CRITICAL — DUAL-LAYER RULE SYNC (when scope=all): ' +
819
+ ' When syncing Rule resources with scope=all, the server generates TWO INDEPENDENT write_file actions: ' +
820
+ ' one for global (~/.cursor/rules/) and one for workspace (<workspace>/.cursor/rules/). ' +
821
+ ' The AI MUST process EACH action independently with its own content comparison: ' +
822
+ ' - Action #1: Compare ~/.cursor/rules/xxx.mdc content → skip if identical, write if different. ' +
823
+ ' - Action #2: Compare .cursor/rules/xxx.mdc content → skip if identical, write if different. ' +
824
+ ' NEVER assume both locations have the same content. NEVER skip action #2 just because action #1 was skipped. ' +
825
+ ' Example: global is v2.0 (skip), workspace is v1.0 (must update) — both actions must be checked separately. ' +
798
826
  'For merge_mcp_json actions: ' +
799
827
  ' (1) If the action has `skip_if_exists: true` AND `mcpServers[server_name]` already exists ' +
800
828
  ' in ~/.cursor/mcp.json, SKIP this action entirely — the server is already configured ' +
@@ -812,7 +840,11 @@ exports.syncResourcesTool = {
812
840
  },
813
841
  scope: {
814
842
  type: 'string',
815
- description: 'Installation scope: global (~/.cursor/), workspace (.cursor/), or all',
843
+ description: 'Installation scope for Rule resources: ' +
844
+ 'global (~/.cursor/rules/ - works on macOS), ' +
845
+ 'workspace (<workspace>/.cursor/rules/ - works on Windows + macOS), ' +
846
+ 'all (both locations - maximum compatibility). ' +
847
+ 'Command/Skill/MCP resources ignore this parameter (always registered as MCP Prompts or global).',
816
848
  enum: ['global', 'workspace', 'all'],
817
849
  default: 'global',
818
850
  },
@@ -1 +1 @@
1
- {"version":3,"file":"sync-resources.js","sourceRoot":"","sources":["../../src/tools/sync-resources.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsEH,sCA8vBC;AAl0BD,gDAAkC;AAClC,2CAA6B;AAC7B,4CAAkF;AAClF,0CAA0C;AAC1C,sEAAoE;AACpE,wDAK+B;AAC/B,4CAAiD;AAOjD,oDAAkD;AAClD,kDAAoD;AAyBpD,MAAM,aAAa,GAAG,IAAI,GAAG,EAA0B,CAAC;AAExD,SAAS,YAAY,CAAC,SAAiB,EAAE,UAAkB;IACzD,OAAO,GAAG,SAAS,KAAK,UAAU,EAAE,CAAC;AACvC,CAAC;AAED;;;;GAIG;AACH,SAAS,6BAA6B,CAAC,OAAe;IACpD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACjD,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACxC,IAAI,GAAG,KAAK,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACjC,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1C,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACxD,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAGM,KAAK,UAAU,aAAa,CAAC,MAAe;IACjD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,MAAM,WAAW,GAAG,MAA6B,CAAC;IAElD,eAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE,WAAW;QACnB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,EAAE,6BAA6B,CAAC,CAAC;IAElC,IAAA,oBAAW,EAAC,gBAAgB,EAAE,yBAAyB,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;IAElF,IAAI,CAAC;QACH,MAAM,IAAI,GAAQ,WAAW,CAAC,IAAI,IAAK,aAAa,CAAC;QACrD,MAAM,KAAK,GAAO,WAAW,CAAC,KAAK,IAAI,QAAQ,CAAC;QAChD,MAAM,KAAK,GAAO,WAAW,CAAC,KAAK,CAAC;QACpC,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC;QACzC,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;QAE/E,IAAA,oBAAW,EAAC,gBAAgB,EAAE,sBAAsB,EAAE;YACpD,IAAI;YACJ,KAAK;YACL,KAAK;YACL,kBAAkB,EAAE,oBAAoB,CAAC,IAAI;SAC9C,CAAC,CAAC;QAEH,0EAA0E;QAC1E,IAAA,oBAAW,EAAC,gBAAgB,EAAE,yCAAyC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3F,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEtB,MAAM,aAAa,GAAG,MAAM,kBAAS,CAAC,gBAAgB,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;QAE7E,IAAA,oBAAW,EAAC,gBAAgB,EAAE,uBAAuB,EAAE;YACrD,KAAK,EAAE,aAAa,CAAC,KAAK;YAC1B,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;YACzB,GAAG,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChD,CAAC,CAAC;QAEH,0EAA0E;QAC1E,IAAA,oBAAW,EAAC,gBAAgB,EAAE,8BAA8B,CAAC,CAAC;QAE9D,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,MAAM,QAAQ,GAAG,MAAM,4CAAqB,CAAC,eAAe,EAAE,CAAC;YAC/D,IAAA,oBAAW,EAAC,gBAAgB,EAAE,mCAAmC,EAAE;gBACjE,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;aAC3F,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACtB,MAAM,UAAU,GAAG,MAAM,4CAAqB,CAAC,cAAc,EAAE,CAAC;YAChE,IAAA,oBAAW,EAAC,gBAAgB,EAAE,gCAAgC,EAAE;gBAC9D,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;gBACzB,OAAO,EAAE;oBACP,MAAM,EAAK,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM;oBAC/D,MAAM,EAAK,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM;oBAC/D,QAAQ,EAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,YAAY,CAAC,CAAC,MAAM;oBACnE,OAAO,EAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM;iBACjE;aACF,CAAC,CAAC;QACL,CAAC;QAED,0EAA0E;QAC1E,4EAA4E;QAC5E,0EAA0E;QAC1E,4EAA4E;QAC5E,4EAA4E;QAC5E,IAAA,oBAAW,EAAC,gBAAgB,EAAE,yCAAyC,EAAE;YACvE,KAAK,EAAE,aAAa,CAAC,KAAK;SAC3B,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAE1F,MAAM,OAAO,GAKR,EAAE,CAAC;QAER,MAAM,gBAAgB,GAGjB,EAAE,CAAC;QAER,mFAAmF;QACnF,MAAM,YAAY,GAAkB,EAAE,CAAC;QAEvC,4EAA4E;QAC5E,6EAA6E;QAC7E,kFAAkF;QAClF,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;QAE9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5D,MAAM,GAAG,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YAC3C,IAAI,CAAC,GAAG;gBAAE,SAAS;YAEnB,oFAAoF;YACpF,MAAM,eAAe,GAAG,GAAG,CAAC,QAAQ,EAAE,OAAO,IAAI,SAAS,CAAC;YAE3D,IAAA,oBAAW,EAAC,gBAAgB,EAAE,cAAc,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,EAAE;gBAClE,UAAU,EAAE,GAAG,CAAC,EAAE;gBAClB,YAAY,EAAE,GAAG,CAAC,IAAI;gBACtB,YAAY,EAAE,GAAG,CAAC,IAAI;aACvB,CAAC,CAAC;YAEH,IAAI,CAAC;gBACH,4DAA4D;gBAC5D,qEAAqE;gBACrE,MAAM,QAAQ,GAAG,IAAA,oCAAqB,EAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;gBAE3D,mEAAmE;gBACnE,uEAAuE;gBACvE,kEAAkE;gBAClE,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;oBACrB,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;wBACnD,MAAM,IAAI,GAAG;4BACX,WAAW,EAAE,GAAG,CAAC,EAAE;4BACnB,4EAA4E;4BAC5E,aAAa,EAAE,GAAG,CAAC,IAA2B;4BAC9C,aAAa,EAAE,GAAG,CAAC,IAAI;4BACvB,IAAI,EAAI,GAA+B,CAAC,IAA2B,IAAI,SAAS;yBACjF,CAAC;wBACF,MAAM,YAAY,GAAG,wBAAa,CAAC,GAAG,CAAC,wBAAa,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;wBAC7F,IAAI,YAAY,EAAE,CAAC;4BACjB,KAAK,CAAC,MAAM,EAAE,CAAC;4BACf,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;wBAC3F,CAAC;6BAAM,CAAC;4BACN,KAAK,CAAC,MAAM,EAAE,CAAC;4BACf,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;wBAC3F,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC;4BACH,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;4BAC1B,KAAK,CAAC,MAAM,EAAE,CAAC;4BACf,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;4BACzF,IAAA,oBAAW,EAAC,gBAAgB,EAAE,uCAAuC,EAAE;gCACrE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,QAAQ;6BAC7B,CAAC,CAAC;wBACL,CAAC;wBAAC,MAAM,CAAC;4BACP,KAAK,CAAC,MAAM,EAAE,CAAC;4BACf,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;4BACzF,IAAA,oBAAW,EAAC,gBAAgB,EAAE,+BAA+B,EAAE;gCAC7D,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,QAAQ;6BAC7B,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;oBACD,SAAS;gBACX,CAAC;gBAED,uEAAuE;gBACvE,2EAA2E;gBAC3E,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBACnD,IAAA,oBAAW,EAAC,gBAAgB,EAAE,eAAe,GAAG,CAAC,IAAI,gBAAgB,EAAE;wBACrE,UAAU,EAAE,GAAG,CAAC,EAAE;wBAClB,YAAY,EAAE,GAAG,CAAC,IAAI;qBACvB,CAAC,CAAC;oBACH,IAAI,CAAC;wBACH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;wBACvB,MAAM,cAAc,GAAG,MAAM,kBAAS,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;wBAC3E,IAAA,oBAAW,EAAC,gBAAgB,EAAE,iCAAiC,EAAE;4BAC/D,UAAU,EAAE,GAAG,CAAC,EAAE;4BAClB,SAAS,EAAE,cAAc,CAAC,KAAK,CAAC,MAAM;4BACtC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG;yBAC3B,CAAC,CAAC;wBAEH,0EAA0E;wBAC1E,4EAA4E;wBAC5E,6DAA6D;wBAC7D,IAAI,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC;wBACvC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;4BAC7B,WAAW,GAAG,MAAM,4CAAqB,CAAC,iBAAiB,CACzD,GAAG,CAAC,IAAI,EACR,GAAG,CAAC,IAAI,CACT,CAAC;4BACF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gCAC3B,IAAA,oBAAW,EAAC,gBAAgB,EAAE,+CAA+C,EAAE;oCAC7E,UAAU,EAAE,GAAG,CAAC,EAAE;oCAClB,SAAS,EAAE,WAAW,CAAC,MAAM;iCAC9B,CAAC,CAAC;4BACL,CAAC;iCAAM,CAAC;gCACN,eAAM,CAAC,IAAI,CACT,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,CAAC,IAAI,EAAE,EAC9C,sEAAsE,CACvE,CAAC;4BACJ,CAAC;wBACH,CAAC;wBAED,sCAAsC;wBACtC,0EAA0E;wBAC1E,oEAAoE;wBACpE,4DAA4D;wBAC5D,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC;wBACrC,MAAM,WAAW,GAAG,OAAO;4BACzB,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC;gCAC7D,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gCAC/C,WAAW,CAAC,CAAC,CAAC,CAAC;4BAClB,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC;gCAChF,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gCAC/C,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;wBAErB,MAAM,UAAU,GAAG,WAAW,EAAE,OAAO,IAAI,EAAE,CAAC;wBAE9C,oEAAoE;wBACpE,yEAAyE;wBACzE,MAAM,eAAe,GAAG,6BAA6B,CAAC,UAAU,CAAC,CAAC;wBAClE,MAAM,WAAW,GAAG,GAA8B,CAAC;wBACnD,MAAM,WAAW,GACf,eAAe;4BACd,WAAW,CAAC,WAAkC;4BAC/C,GAAG,CAAC,IAAI,CAAC;wBAEX,MAAM,IAAI,GAAG;4BACX,WAAW,EAAE,GAAG,CAAC,EAAE;4BACnB,4EAA4E;4BAC5E,aAAa,EAAE,GAAG,CAAC,IAA2B;4BAC9C,aAAa,EAAE,GAAG,CAAC,IAAI;4BACvB,IAAI,EAAG,WAAW,CAAC,IAA2B,IAAI,SAAS;4BAC3D,WAAW;4BACX,UAAU;yBACX,CAAC;wBACF,0EAA0E;wBAC1E,MAAM,cAAc,GAAG,SAAS,IAAI,EAAE,CAAC;wBACvC,MAAM,wBAAa,CAAC,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;wBAEzD,wEAAwE;wBACxE,mBAAmB,CAAC,GAAG,CAAC,wBAAa,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;wBAE7D,sEAAsE;wBACtE,0DAA0D;wBAC1D,kEAAkE;wBAClE,IAAI,CAAC;4BACH,MAAM,QAAQ,GAAG,MAAM,4CAAqB,CAAC,oBAAoB,CAC/D,GAAG,CAAC,IAAI,EACR,GAAG,CAAC,IAAI,CACT,CAAC;4BAEF,IAAI,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;gCAClD,IAAA,oBAAW,EAAC,gBAAgB,EAAE,mDAAmD,EAAE;oCACjF,UAAU,EAAE,GAAG,CAAC,EAAE;oCAClB,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,MAAM;iCAC1C,CAAC,CAAC;gCAEH,oEAAoE;gCACpE,+DAA+D;gCAC/D,uFAAuF;gCACvF,MAAM,QAAQ,GAAG,GAAG,IAAA,sCAAuB,EAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;gCAEpE,uEAAuE;gCACvE,6EAA6E;gCAE7E,IAAI,QAAQ,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oCACrC,oDAAoD;oCACpD,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;oCAC7C,IAAI,CAAC,WAAW,EAAE,CAAC;wCACjB,eAAM,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,iDAAiD,CAAC,CAAC;oCACzF,CAAC;yCAAM,CAAC;wCACN,YAAY,CAAC,IAAI,CAAC;4CAChB,MAAM,EAAE,YAAY;4CACpB,IAAI,EAAE,GAAG,QAAQ,IAAI,WAAW,CAAC,aAAa,EAAE;4CAChD,OAAO,EAAE,WAAW,CAAC,OAAO;4CAC5B,QAAQ,EAAE,WAAW,CAAC,QAAQ,IAAI,MAAM;4CACxC,IAAI,EAAE,WAAW,CAAC,IAAI;4CACtB,qDAAqD;4CACrD,iBAAiB,EAAE,IAAI;4CACvB,6EAA6E;4CAC7E,sBAAsB,EAAE,UAAU;yCACnC,CAAC,CAAC;oCACL,CAAC;oCAED,2EAA2E;oCAC3E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;wCACtD,MAAM,UAAU,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;wCAC5C,IAAI,CAAC,UAAU;4CAAE,SAAS;wCAE1B,YAAY,CAAC,IAAI,CAAC;4CAChB,MAAM,EAAE,YAAY;4CACpB,IAAI,EAAE,GAAG,QAAQ,IAAI,UAAU,CAAC,aAAa,EAAE;4CAC/C,OAAO,EAAE,UAAU,CAAC,OAAO;4CAC3B,QAAQ,EAAE,UAAU,CAAC,QAAQ,IAAI,MAAM;4CACvC,IAAI,EAAE,UAAU,CAAC,IAAI;yCACtB,CAAC,CAAC;oCACL,CAAC;gCACH,CAAC;gCAED,IAAA,oBAAW,EAAC,gBAAgB,EAAE,kEAAkE,EAAE;oCAChG,UAAU,EAAE,GAAG,CAAC,EAAE;oCAClB,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,MAAM;iCAC1C,CAAC,CAAC;4BACL,CAAC;iCAAM,CAAC;gCACN,IAAA,oBAAW,EAAC,gBAAgB,EAAE,sCAAsC,EAAE;oCACpE,UAAU,EAAE,GAAG,CAAC,EAAE;iCACnB,CAAC,CAAC;4BACL,CAAC;wBACH,CAAC;wBAAC,OAAO,WAAW,EAAE,CAAC;4BACrB,eAAM,CAAC,IAAI,CACT,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,KAAK,EAAG,WAAqB,CAAC,OAAO,EAAE,EAC7D,oFAAoF,CACrF,CAAC;wBACJ,CAAC;wBAED,mEAAmE;wBACnE,oEAAoE;wBACpE,mEAAmE;wBACnE,oEAAoE;wBACpE,IAAI,CAAC;4BACH,MAAM,UAAU,GAAG,IAAA,oCAAqB,EAAC,GAAG,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC;4BACrE,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;4BAC5B,eAAM,CAAC,IAAI,CACT,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,UAAU,EAAE,EAClC,sDAAsD,CACvD,CAAC;wBACJ,CAAC;wBAAC,MAAM,CAAC;4BACP,2CAA2C;wBAC7C,CAAC;wBAED,KAAK,CAAC,MAAM,EAAE,CAAC;wBACf,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;wBACzF,IAAA,oBAAW,EAAC,gBAAgB,EAAE,GAAG,GAAG,CAAC,IAAI,2BAA2B,EAAE;4BACpE,UAAU,EAAE,GAAG,CAAC,EAAE;4BAClB,WAAW,EAAE,wBAAa,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;yBACpD,CAAC,CAAC;oBACL,CAAC;oBAAC,OAAO,SAAS,EAAE,CAAC;wBACnB,eAAM,CAAC,KAAK,CACV,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,KAAK,EAAG,SAAmB,CAAC,OAAO,EAAE,EAC3D,gDAAgD,CACjD,CAAC;wBACF,KAAK,CAAC,MAAM,EAAE,CAAC;wBACf,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;oBAC3F,CAAC;oBACD,SAAS;gBACX,CAAC;gBAED,wEAAwE;gBACxE,uEAAuE;gBACvE,yEAAyE;gBACzE,uEAAuE;gBACvE,mEAAmE;gBACnE,iEAAiE;gBACjE,MAAM,QAAQ,GAAG,YAAY,CAAC,SAAS,IAAI,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBACvD,IAAI,cAAiF,CAAC;gBAEtF,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAC3C,IAAI,IAAI,KAAK,aAAa,IAAI,MAAM,EAAE,CAAC;oBACrC,mEAAmE;oBACnE,uEAAuE;oBACvE,cAAc,GAAG,MAAM,CAAC;oBACxB,IAAA,oBAAW,EAAC,gBAAgB,EAAE,qCAAqC,EAAE;wBACnE,UAAU,EAAE,GAAG,CAAC,EAAE;wBAClB,UAAU,EAAE,MAAM,CAAC,IAAI;qBACxB,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,IAAA,oBAAW,EAAC,gBAAgB,EAAE,sBAAsB,EAAE;wBACpD,UAAU,EAAE,GAAG,CAAC,EAAE;wBAClB,YAAY,EAAE,GAAG,CAAC,IAAI;qBACvB,CAAC,CAAC;oBACH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBACvB,MAAM,SAAS,GAAG,MAAM,kBAAS,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;oBACtE,IAAA,oBAAW,EAAC,gBAAgB,EAAE,mBAAmB,EAAE;wBACjD,UAAU,EAAE,GAAG,CAAC,EAAE;wBAClB,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM;wBACjC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG;qBAC3B,CAAC,CAAC;oBACH,cAAc,GAAG,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC;oBAClE,0CAA0C;oBAC1C,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;gBAC9C,CAAC;gBAED,0EAA0E;gBAC1E,wEAAwE;gBACxE,0DAA0D;gBAC1D,IAAI,aAAa,GAAG,cAAc,CAAC,KAAK,CAAC;gBACzC,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC/B,eAAM,CAAC,IAAI,CACT,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,EAC9D,0EAA0E,CAC3E,CAAC;oBACF,MAAM,OAAO,GAAG,GAAG,CAAC,IAA4C,CAAC;oBACjE,MAAM,QAAQ,GAAG,MAAM,4CAAqB,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;oBAClF,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACxB,aAAa,GAAG,QAAQ,CAAC;wBACzB,eAAM,CAAC,IAAI,CACT;4BACE,UAAU,EAAE,GAAG,CAAC,EAAE;4BAClB,YAAY,EAAE,GAAG,CAAC,IAAI;4BACtB,IAAI,EAAE,GAAG,CAAC,IAAI;4BACd,SAAS,EAAE,aAAa,CAAC,MAAM;4BAC/B,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;yBACxC,EACD,iDAAiD,CAClD,CAAC;wBACF,IAAA,oBAAW,EAAC,gBAAgB,EAAE,+CAA+C,EAAE;4BAC7E,UAAU,EAAE,GAAG,CAAC,EAAE;4BAClB,SAAS,EAAE,aAAa,CAAC,MAAM;yBAChC,CAAC,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACN,eAAM,CAAC,IAAI,CACT,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,EAC9D,gFAAgF,CACjF,CAAC;wBACF,KAAK,CAAC,MAAM,EAAE,CAAC;wBACf,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;wBACzF,SAAS;oBACX,CAAC;gBACH,CAAC;gBAED,yEAAyE;gBACzE,oEAAoE;gBACpE,qEAAqE;gBACrE,EAAE;gBACF,4EAA4E;gBAC5E,wEAAwE;gBACxE,8CAA8C;gBAC9C,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;oBACvB,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,iBAAiB,CACnD,CAAC;oBACF,2CAA2C;oBAC3C,MAAM,WAAW,GAAG,GAAG,IAAA,wCAAyB,GAAE,WAAW,CAAC;oBAE9D,2EAA2E;oBAC3E,0EAA0E;oBAC1E,6EAA6E;oBAC7E,4EAA4E;oBAC5E,uDAAuD;oBACvD,IAAI,IAAI,KAAK,aAAa,IAAI,aAAa,EAAE,CAAC;wBAC5C,IAAI,GAAG,GAA4B,EAAE,CAAC;wBACtC,IAAI,CAAC;4BAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAA4B,CAAC;wBAAC,CAAC;wBAC3E,MAAM,CAAC,CAAC,8CAA8C,CAAC,CAAC;wBAExD,qDAAqD;wBACrD,IAAI,OAAO,GAAG,CAAC,SAAS,CAAC,KAAK,QAAQ,EAAE,CAAC;4BACvC,MAAM,UAAU,GAAI,GAAG,CAAC,MAAM,CAAwB,IAAI,GAAG,CAAC,IAAI,CAAC;4BACnE,IAAI,oBAAoB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gCACzC,eAAM,CAAC,IAAI,CACT,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,EAC1D,mEAAmE,CACpE,CAAC;gCACF,KAAK,CAAC,MAAM,EAAE,CAAC;gCACf,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;gCACzF,SAAS;4BACX,CAAC;wBACH,CAAC;wBACD,2DAA2D;6BACtD,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACrC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;4BACjF,IAAI,aAAa,EAAE,CAAC;gCAClB,eAAM,CAAC,IAAI,CACT,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAC5E,wEAAwE,CACzE,CAAC;gCACF,KAAK,CAAC,MAAM,EAAE,CAAC;gCACf,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;gCACzF,SAAS;4BACX,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,eAAM,CAAC,IAAI,CACT;wBACE,UAAU,EAAE,GAAG,CAAC,EAAE;wBAClB,YAAY,EAAE,GAAG,CAAC,IAAI;wBACtB,WAAW;wBACX,gBAAgB,EAAE,CAAC,CAAC,aAAa;wBACjC,cAAc,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;qBACjD,EACD,yCAAyC,CAC1C,CAAC;oBAEF,IAAI,aAAa,EAAE,CAAC;wBAClB,IAAI,GAAG,GAA4B,EAAE,CAAC;wBACtC,IAAI,CAAC;4BAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAA4B,CAAC;wBAAC,CAAC;wBAC3E,MAAM,CAAC;4BACL,eAAM,CAAC,IAAI,CACT,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,CAAC,IAAI,EAAE,EAC9C,4EAA4E,CAC7E,CAAC;wBACJ,CAAC;wBAED,IAAI,OAAO,GAAG,CAAC,SAAS,CAAC,KAAK,QAAQ,EAAE,CAAC;4BACvC,mEAAmE;4BACnE,MAAM,UAAU,GAAG,GAAG,IAAA,wCAAyB,EAAC,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;4BACrE,MAAM,YAAY,GAAa,EAAE,CAAC;4BAClC,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;gCACjC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gCAC7C,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC;oCAAE,SAAS;gCAC1C,MAAM,QAAQ,GAAG,GAAG,UAAU,IAAI,UAAU,EAAE,CAAC;gCAC/C,YAAY,CAAC,IAAI,CAAC;oCAChB,MAAM,EAAE,YAAY;oCACpB,IAAI,EAAE,QAAQ;oCACd,OAAO,EAAE,IAAI,CAAC,OAAO;iCACtB,CAAC,CAAC;gCACH,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;4BAC9B,CAAC;4BACD,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAA2B,CAAC;4BACzD,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;4BACnF,MAAM,aAAa,GAAG,CAAC,CAAS,EAAE,EAAE,CAClC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;4BACnF,MAAM,IAAI,GAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACvD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CACxF,CAAC;4BACF,MAAM,UAAU,GAAI,GAAG,CAAC,MAAM,CAAwB,IAAI,GAAG,CAAC,IAAI,CAAC;4BACnE,YAAY,CAAC,IAAI,CAAC;gCAChB,MAAM,EAAE,gBAAgB;gCACxB,aAAa,EAAE,WAAW;gCAC1B,WAAW,EAAE,UAAU;gCACvB,KAAK,EAAE,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE;gCACvB,6DAA6D;gCAC7D,uDAAuD;gCACvD,cAAc,EAAE,IAAI;gCACpB,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;oCAC1B,WAAW,EAAE,UAAU;oCACvB,UAAU,EAAE,uBAAuB,WAAW,sBAAsB,GAAG,CAAC,IAAI,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;iCAC5G,CAAC,CAAC,CAAC,EAAE,CAAC;6BACR,CAAC,CAAC;4BACH,eAAM,CAAC,IAAI,CACT;gCACE,UAAU,EAAE,GAAG,CAAC,EAAE;gCAClB,YAAY,EAAE,GAAG,CAAC,IAAI;gCACtB,MAAM,EAAE,GAAG;gCACX,UAAU;gCACV,WAAW;gCACX,UAAU;gCACV,UAAU,EAAE,YAAY;gCACxB,UAAU;6BACX,EACD,2EAA2E,CAC5E,CAAC;4BACF,IAAA,oBAAW,EAAC,gBAAgB,EAAE,0DAA0D,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;wBACpH,CAAC;6BAAM,CAAC;4BACN,mEAAmE;4BACnE,MAAM,aAAa,GAAa,EAAE,CAAC;4BACnC,KAAK,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gCACtD,MAAM,CAAC,GAAG,KAAgC,CAAC;gCAC3C,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAA2B,CAAC;gCACvD,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;gCACnF,YAAY,CAAC,IAAI,CAAC;oCAChB,MAAM,EAAE,gBAAgB;oCACxB,aAAa,EAAE,WAAW;oCAC1B,WAAW,EAAE,UAAU;oCACvB,KAAK,EAAE,CAAC;oCACR,0DAA0D;oCAC1D,6DAA6D;oCAC7D,cAAc,EAAE,IAAI;oCACpB,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;wCAC1B,WAAW,EAAE,UAAU;wCACvB,UAAU,EAAE,uBAAuB,WAAW,sBAAsB,UAAU,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;qCAC9G,CAAC,CAAC,CAAC,EAAE,CAAC;iCACR,CAAC,CAAC;gCACH,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;4BACjC,CAAC;4BACD,eAAM,CAAC,IAAI,CACT;gCACE,UAAU,EAAE,GAAG,CAAC,EAAE;gCAClB,YAAY,EAAE,GAAG,CAAC,IAAI;gCACtB,MAAM,EAAE,GAAG;gCACX,WAAW;gCACX,UAAU,EAAE,aAAa;6BAC1B,EACD,8DAA8D,CAC/D,CAAC;4BACF,IAAA,oBAAW,EAAC,gBAAgB,EAAE,uCAAuC,EAAE;gCACrE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;6BACjD,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,yCAAyC;wBACzC,MAAM,UAAU,GAAG,GAAG,IAAA,wCAAyB,EAAC,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;wBACrE,MAAM,YAAY,GAAa,EAAE,CAAC;wBAClC,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;4BACjC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BAC7C,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC;gCAAE,SAAS;4BAC1C,MAAM,QAAQ,GAAG,GAAG,UAAU,IAAI,UAAU,EAAE,CAAC;4BAC/C,YAAY,CAAC,IAAI,CAAC;gCAChB,MAAM,EAAE,YAAY;gCACpB,IAAI,EAAE,QAAQ;gCACd,OAAO,EAAE,IAAI,CAAC,OAAO;6BACtB,CAAC,CAAC;4BACH,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;wBAC9B,CAAC;wBACD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;wBAClE,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;wBAClE,MAAM,SAAS,GAAG,OAAO,IAAI,OAAO,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;wBACzD,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;wBACzC,MAAM,SAAS,GAAG,GAAG,UAAU,IAAI,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;wBAC3D,YAAY,CAAC,IAAI,CAAC;4BAChB,MAAM,EAAE,gBAAgB;4BACxB,aAAa,EAAE,WAAW;4BAC1B,WAAW,EAAE,GAAG,CAAC,IAAI;4BACrB,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE;4BAC1C,cAAc,EAAE,IAAI;yBACrB,CAAC,CAAC;wBACH,eAAM,CAAC,IAAI,CACT;4BACE,UAAU,EAAE,GAAG,CAAC,EAAE;4BAClB,YAAY,EAAE,GAAG,CAAC,IAAI;4BACtB,MAAM,EAAE,WAAW;4BACnB,UAAU;4BACV,WAAW;4BACX,GAAG;4BACH,SAAS;4BACT,UAAU,EAAE,YAAY;yBACzB,EACD,qFAAqF,CACtF,CAAC;wBACF,IAAA,oBAAW,EAAC,gBAAgB,EAAE,4DAA4D,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;oBACtH,CAAC;oBAED,KAAK,CAAC,MAAM,EAAE,CAAC;oBACf,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;oBACzF,SAAS;gBACX,CAAC;gBAED,yEAAyE;gBACzE,sEAAsE;gBACtE,yEAAyE;gBACzE,sEAAsE;gBACtE,0EAA0E;gBAC1E,yEAAyE;gBACzE,6DAA6D;gBAC7D,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBACxB,MAAM,OAAO,GAAG,IAAA,wCAAyB,EAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACpD,MAAM,YAAY,GAAuD,EAAE,CAAC;oBAE5E,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;wBACjC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC7C,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;4BAChC,eAAM,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,+BAA+B,CAAC,CAAC;4BAC1F,SAAS;wBACX,CAAC;wBACD,MAAM,QAAQ,GAAG,GAAG,OAAO,IAAI,UAAU,EAAE,CAAC;wBAC5C,YAAY,CAAC,IAAI,CAAC;4BAChB,MAAM,EAAE,YAAY;4BACpB,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,IAAI,CAAC,OAAO;yBACtB,CAAC,CAAC;wBACH,YAAY,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;oBACtE,CAAC;oBAED,eAAM,CAAC,IAAI,CACT;wBACE,UAAU,EAAE,GAAG,CAAC,EAAE;wBAClB,YAAY,EAAE,GAAG,CAAC,IAAI;wBACtB,OAAO;wBACP,SAAS,EAAE,YAAY,CAAC,MAAM;wBAC9B,KAAK,EAAE,YAAY;wBACnB,cAAc,EAAE,iFAAiF;qBAClG,EACD,0FAA0F,CAC3F,CAAC;oBAEF,KAAK,CAAC,MAAM,EAAE,CAAC;oBACf,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;oBACzF,IAAA,oBAAW,EAAC,gBAAgB,EAAE,wCAAwC,EAAE;wBACtE,UAAU,EAAE,GAAG,CAAC,EAAE;wBAClB,SAAS,EAAE,aAAa,CAAC,MAAM;qBAChC,CAAC,CAAC;oBACH,SAAS;gBACX,CAAC;gBAED,uEAAuE;gBACvE,eAAM,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,uCAAuC,CAAC,CAAC;gBAC7F,KAAK,CAAC,MAAM,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;YAE3F,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,eAAM,CAAC,KAAK,CAAC;oBACX,UAAU,EAAE,GAAG,CAAC,EAAE;oBAClB,YAAY,EAAE,GAAG,CAAC,IAAI;oBACtB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBAC9D,EAAE,yBAAyB,CAAC,CAAC;gBAE9B,KAAK,CAAC,MAAM,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE,OAAO,IAAI,SAAS,EAAE,CAAC,CAAC;YAC9G,CAAC;QACH,CAAC;QAED,0EAA0E;QAC1E,0EAA0E;QAC1E,0EAA0E;QAC1E,oCAAoC;QACpC,2EAA2E;QAC3E,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,wBAAa,CAAC,iBAAiB,CAAC,mBAAmB,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;QACxE,CAAC;QAED,0EAA0E;QAC1E,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC;YACjC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC;YACjF,CAAC,CAAC,GAAG,CAAC;QAER,MAAM,MAAM,GAAwB;YAClC,IAAI;YACJ,YAAY,EAAE,WAAW;YACzB,OAAO,EAAE,KAAK;YACd,OAAO;YACP,GAAG,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/E,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7E,CAAC;QAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACxC,IAAA,oBAAW,EAAC,gBAAgB,EAAE,SAAS,EAAE,MAAiC,EAAE,QAAQ,CAAC,CAAC;QACtF,IAAA,sBAAa,EAAC,gBAAgB,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAE9C,eAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,gBAAgB;YACtB,IAAI;YACJ,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,WAAW;YACX,QAAQ;YACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,EAAE,uCAAuC,CAAC,CAAC;QAE5C,qDAAqD;QACrD,6EAA6E;QAC7E,MAAM,eAAe,GAAG,aAAa,CAAC,aAAa;aAChD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;aAChC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,MAAM,WAAW,GAAG,CAA4B,CAAC;YACjD,OAAO;gBACL,WAAW,EAAE,CAAC,CAAC,EAAE;gBACjB,aAAa,EAAE,CAAC,CAAC,IAAI;gBACrB,aAAa,EAAG,WAAW,CAAC,aAAoC,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aAC7F,CAAC;QACJ,CAAC,CAAC,CAAC;QACL,IAAI,SAAS;YAAE,oBAAS,CAAC,qBAAqB,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAE3F,gFAAgF;QAChF,MAAM,cAAc,GAAG,aAAa,CAAC,aAAa;aAC/C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC;aAC/B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,MAAM,WAAW,GAAG,CAA4B,CAAC;YACjD,OAAO;gBACL,WAAW,EAAE,CAAC,CAAC,EAAE;gBACjB,aAAa,EAAE,CAAC,CAAC,IAAI;gBACrB,aAAa,EAAG,WAAW,CAAC,aAAoC,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aAC7F,CAAC;QACJ,CAAC,CAAC,CAAC;QACL,IAAI,SAAS;YAAE,oBAAS,CAAC,oBAAoB,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAEzF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAEzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAExC,eAAM,CAAC,KAAK,CAAC;YACX,IAAI,EAAE,gBAAgB;YACtB,KAAK,EAAE,KAAK,YAAY,KAAK;gBAC3B,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE;gBAClE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;YACjB,QAAQ;YACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,EAAE,kCAAkC,CAAC,CAAC;QAEvC,IAAA,sBAAa,EAAC,gBAAgB,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE7G,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE;gBACL,IAAI,EAAE,KAAK,YAAY,uBAAc,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe;gBACpE,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAChE;SACF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,+BAA+B;AAClB,QAAA,iBAAiB,GAAG;IAC/B,IAAI,EAAE,gBAAgB;IACtB,WAAW,EACT,iEAAiE;QACjE,oGAAoG;QACpG,uGAAuG;QACvG,gFAAgF;QAChF,6FAA6F;QAC7F,mFAAmF;QACnF,oFAAoF;QACpF,oJAAoJ;QACpJ,uIAAuI;QACvI,MAAM;QACN,iFAAiF;QACjF,wGAAwG;QACxG,qFAAqF;QACrF,oFAAoF;QACpF,uDAAuD;QACvD,+DAA+D;QAC/D,iFAAiF;QACjF,uDAAuD;QACvD,6FAA6F;QAC7F,iFAAiF;QACjF,IAAI;QACJ,uFAAuF;QACvF,qFAAqF;QACrF,sDAAsD;QACtD,kFAAkF;QAClF,sFAAsF;QACtF,gFAAgF;QAChF,wFAAwF;QACxF,gFAAgF;QAChF,IAAI;QACJ,0BAA0B;QAC1B,qFAAqF;QACrF,2FAA2F;QAC3F,yFAAyF;QACzF,wFAAwF;QACxF,+FAA+F;QAC/F,+FAA+F;QAC/F,4CAA4C;QAC5C,2FAA2F;QAC3F,+HAA+H;QAC/H,0HAA0H;QAC1H,sEAAsE;QACtE,6FAA6F;QAC7F,2FAA2F;QAC3F,qFAAqF;QACrF,+EAA+E;QAC/E,2GAA2G;QAC3G,8BAA8B;QAC9B,8FAA8F;QAC9F,4FAA4F;QAC5F,gEAAgE;QAChE,uFAAuF;QACvF,sEAAsE;IACxE,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,sFAAsF;gBACnG,IAAI,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC;gBACtC,OAAO,EAAE,aAAa;aACvB;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uEAAuE;gBACpF,IAAI,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,CAAC;gBACpC,OAAO,EAAE,QAAQ;aAClB;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,8CAA8C;aAC5D;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,8EAA8E;oBAC9E,iFAAiF;aACpF;YACD,sBAAsB,EAAE;gBACtB,IAAI,EAAE,OAAO;gBACb,WAAW,EACT,qEAAqE;oBACrE,4FAA4F;oBAC5F,uFAAuF;oBACvF,qFAAqF;aACxF;SACF;KACF;IACD,OAAO,EAAE,aAAa;CACvB,CAAC"}
1
+ {"version":3,"file":"sync-resources.js","sourceRoot":"","sources":["../../src/tools/sync-resources.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"uninstall-resource.d.ts","sourceRoot":"","sources":["../../src/tools/uninstall-resource.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,EAA2B,uBAAuB,EAAe,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAIhH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC,CAkLrG;AAGD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;CA2BjC,CAAC"}
1
+ {"version":3,"file":"uninstall-resource.d.ts","sourceRoot":"","sources":["../../src/tools/uninstall-resource.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,EAA2B,uBAAuB,EAAe,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAIhH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC,CA4LrG;AAGD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;CA8BjC,CAAC"}
@@ -106,13 +106,18 @@ async function uninstallResource(params) {
106
106
  const isRule = !knownType || knownType === 'rule';
107
107
  const isMcp = !knownType || knownType === 'mcp';
108
108
  if (isRule) {
109
- // Rule: delete ~/.cursor/rules/<pattern>.mdc and .md variants.
110
- const rulesDir = (0, cursor_paths_js_1.getCursorTypeDirForClient)('rule');
111
- for (const ext of ['.mdc', '.md']) {
112
- const filePath = `${rulesDir}/${pattern}${ext}`;
113
- localActions.push({ action: 'delete_file', path: filePath });
114
- removedResources.push({ id: pattern, name: pattern, path: filePath });
109
+ // Rule: delete from BOTH global and workspace locations (dual-layer cleanup).
110
+ // Even if one location doesn't exist, the AI will skip gracefully (delete_file is idempotent).
111
+ const globalRulesDir = (0, cursor_paths_js_1.getCursorTypeDirForClient)('rule'); // ~/.cursor/rules/
112
+ const workspaceRulesDir = '.cursor/rules'; // relative to workspace root
113
+ for (const rulesDir of [globalRulesDir, workspaceRulesDir]) {
114
+ for (const ext of ['.mdc', '.md']) {
115
+ const filePath = `${rulesDir}/${pattern}${ext}`;
116
+ localActions.push({ action: 'delete_file', path: filePath });
117
+ removedResources.push({ id: pattern, name: pattern, path: filePath });
118
+ }
115
119
  }
120
+ logger_1.logger.info({ pattern, locations: [globalRulesDir, workspaceRulesDir] }, 'Rule uninstall: queued delete_file actions for BOTH global and workspace locations');
116
121
  }
117
122
  if (isMcp) {
118
123
  // MCP: delete install directory (Format A — may not exist for remote-URL MCPs)
@@ -168,8 +173,11 @@ exports.uninstallResourceTool = {
168
173
  name: 'uninstall_resource',
169
174
  description: 'Uninstall a resource from the user\'s local machine. ' +
170
175
  'Command/Skill resources: unregisters MCP Prompt from memory and queues local script directory deletion. ' +
171
- 'Rule/MCP resources: returns `local_actions_required` with delete_file and remove_mcp_json_entry actions. ' +
176
+ 'Rule resources: returns `local_actions_required` with delete_file actions for BOTH global (~/.cursor/rules/) ' +
177
+ 'and workspace (<workspace>/.cursor/rules/) locations to ensure complete cleanup across all platforms. ' +
178
+ 'MCP resources: returns delete_file and remove_mcp_json_entry actions. ' +
172
179
  'For delete_file actions: delete the file or directory at the given path (recursive if flag set). ' +
180
+ 'File not existing is NOT an error — skip silently. ' +
173
181
  'For remove_mcp_json_entry actions: read ~/.cursor/mcp.json, delete the matching ' +
174
182
  'mcpServers key, then write the file back. ' +
175
183
  'Set remove_from_account: true to also cancel the server-side subscription. ' +
@@ -1 +1 @@
1
- {"version":3,"file":"uninstall-resource.js","sourceRoot":"","sources":["../../src/tools/uninstall-resource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uninstall-resource.js","sourceRoot":"","sources":["../../src/tools/uninstall-resource.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliotding/ai-agent-mcp",
3
- "version": "0.1.31",
3
+ "version": "0.2.1",
4
4
  "description": "CSP AI Agent MCP Server - Centralized AI tools distribution and management",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -43,6 +43,7 @@
43
43
  "axios": "^1.6.0",
44
44
  "dotenv": "^16.4.0",
45
45
  "fastify": "^5.8.2",
46
+ "fuse.js": "^7.1.0",
46
47
  "ioredis": "^5.10.0",
47
48
  "lru-cache": "^11.2.6",
48
49
  "pino": "^8.19.0",