faf-cli 2.3.4 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/README.md +17 -4
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +128 -5
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/about.d.ts +10 -0
  6. package/dist/commands/about.d.ts.map +1 -0
  7. package/dist/commands/about.js +249 -0
  8. package/dist/commands/about.js.map +1 -0
  9. package/dist/commands/art.d.ts +10 -0
  10. package/dist/commands/art.d.ts.map +1 -0
  11. package/dist/commands/art.js +129 -0
  12. package/dist/commands/art.js.map +1 -0
  13. package/dist/commands/chat.d.ts +1 -0
  14. package/dist/commands/chat.d.ts.map +1 -1
  15. package/dist/commands/chat.js +177 -6
  16. package/dist/commands/chat.js.map +1 -1
  17. package/dist/commands/license-config.d.ts +10 -0
  18. package/dist/commands/license-config.d.ts.map +1 -0
  19. package/dist/commands/license-config.js +140 -0
  20. package/dist/commands/license-config.js.map +1 -0
  21. package/dist/commands/license.d.ts +7 -0
  22. package/dist/commands/license.d.ts.map +1 -0
  23. package/dist/commands/license.js +60 -0
  24. package/dist/commands/license.js.map +1 -0
  25. package/dist/commands/quick.d.ts.map +1 -1
  26. package/dist/commands/quick.js +30 -5
  27. package/dist/commands/quick.js.map +1 -1
  28. package/dist/commands/score-v3.d.ts.map +1 -1
  29. package/dist/commands/score-v3.js +14 -7
  30. package/dist/commands/score-v3.js.map +1 -1
  31. package/dist/commands/score.d.ts.map +1 -1
  32. package/dist/commands/score.js +30 -10
  33. package/dist/commands/score.js.map +1 -1
  34. package/dist/commands/submit-art.d.ts +25 -0
  35. package/dist/commands/submit-art.d.ts.map +1 -0
  36. package/dist/commands/submit-art.js +348 -0
  37. package/dist/commands/submit-art.js.map +1 -0
  38. package/dist/compiler/faf-compiler.d.ts.map +1 -1
  39. package/dist/compiler/faf-compiler.js +41 -4
  40. package/dist/compiler/faf-compiler.js.map +1 -1
  41. package/dist/engine/engine-loader.d.ts +24 -0
  42. package/dist/engine/engine-loader.d.ts.map +1 -0
  43. package/dist/engine/engine-loader.js +156 -0
  44. package/dist/engine/engine-loader.js.map +1 -0
  45. package/dist/engine-bridge.d.ts +5 -5
  46. package/dist/engine-bridge.d.ts.map +1 -1
  47. package/dist/engine-bridge.js +20 -7
  48. package/dist/engine-bridge.js.map +1 -1
  49. package/dist/engine-mk2/mk2-core.d.ts +38 -0
  50. package/dist/engine-mk2/mk2-core.d.ts.map +1 -0
  51. package/dist/engine-mk2/mk2-core.js +217 -0
  52. package/dist/engine-mk2/mk2-core.js.map +1 -0
  53. package/dist/generators/faf-generator-championship.d.ts +6 -0
  54. package/dist/generators/faf-generator-championship.d.ts.map +1 -1
  55. package/dist/generators/faf-generator-championship.js +19 -3
  56. package/dist/generators/faf-generator-championship.js.map +1 -1
  57. package/dist/license/license-config.d.ts +59 -0
  58. package/dist/license/license-config.d.ts.map +1 -0
  59. package/dist/license/license-config.js +263 -0
  60. package/dist/license/license-config.js.map +1 -0
  61. package/dist/license/license-controller.d.ts +41 -0
  62. package/dist/license/license-controller.d.ts.map +1 -0
  63. package/dist/license/license-controller.js +243 -0
  64. package/dist/license/license-controller.js.map +1 -0
  65. package/dist/tests/test-chrome-fuzzy.d.ts +5 -0
  66. package/dist/tests/test-chrome-fuzzy.d.ts.map +1 -0
  67. package/dist/tests/test-chrome-fuzzy.js +71 -0
  68. package/dist/tests/test-chrome-fuzzy.js.map +1 -0
  69. package/dist/utils/art-gallery.d.ts +58 -0
  70. package/dist/utils/art-gallery.d.ts.map +1 -0
  71. package/dist/utils/art-gallery.js +275 -0
  72. package/dist/utils/art-gallery.js.map +1 -0
  73. package/dist/utils/championship-style.d.ts +1 -1
  74. package/dist/utils/championship-style.d.ts.map +1 -1
  75. package/dist/utils/championship-style.js +17 -13
  76. package/dist/utils/championship-style.js.map +1 -1
  77. package/dist/utils/chrome-extension-confirmer.d.ts +41 -0
  78. package/dist/utils/chrome-extension-confirmer.d.ts.map +1 -0
  79. package/dist/utils/chrome-extension-confirmer.js +188 -0
  80. package/dist/utils/chrome-extension-confirmer.js.map +1 -0
  81. package/dist/utils/chrome-extension-detector.d.ts +74 -0
  82. package/dist/utils/chrome-extension-detector.d.ts.map +1 -0
  83. package/dist/utils/chrome-extension-detector.js +268 -0
  84. package/dist/utils/chrome-extension-detector.js.map +1 -0
  85. package/dist/utils/score-header.d.ts +22 -0
  86. package/dist/utils/score-header.d.ts.map +1 -0
  87. package/dist/utils/score-header.js +85 -0
  88. package/dist/utils/score-header.js.map +1 -0
  89. package/dist/utils/score-indicators.d.ts +47 -0
  90. package/dist/utils/score-indicators.d.ts.map +1 -0
  91. package/dist/utils/score-indicators.js +197 -0
  92. package/dist/utils/score-indicators.js.map +1 -0
  93. package/dist/utils/universal-fuzzy-detector.d.ts +64 -0
  94. package/dist/utils/universal-fuzzy-detector.d.ts.map +1 -0
  95. package/dist/utils/universal-fuzzy-detector.js +381 -0
  96. package/dist/utils/universal-fuzzy-detector.js.map +1 -0
  97. package/dist/utils/yaml-generator.js +1 -1
  98. package/package.json +9 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"score-header.js","sourceRoot":"","sources":["../../src/utils/score-header.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * 🎯 FAF Score Indicators - Flag-based visual achievement system
3
+ * Different flags = Different achievement levels
4
+ * NO VERTICAL LINES = NO MISALIGNMENT
5
+ */
6
+ export interface ScoreIndicator {
7
+ min: number;
8
+ max: number;
9
+ leftFlag: string;
10
+ rightFlag: string;
11
+ color: (text: string) => string;
12
+ title: string;
13
+ description: string;
14
+ }
15
+ /**
16
+ * Achievement level indicators using flags
17
+ */
18
+ export declare const SCORE_INDICATORS: ScoreIndicator[];
19
+ /**
20
+ * Get indicator for a specific score
21
+ */
22
+ export declare function getScoreIndicator(score: number): ScoreIndicator;
23
+ /**
24
+ * Format score with appropriate flags (open-ended design)
25
+ */
26
+ export declare function formatScoreHeader(score: number, title?: string): string;
27
+ /**
28
+ * Create a minimal score badge
29
+ */
30
+ export declare function formatScoreBadge(score: number): string;
31
+ /**
32
+ * Format score card with birth score tracking
33
+ */
34
+ export declare function formatScoreCard(currentScore: number, birthScore: number, improvements?: string[]): string;
35
+ /**
36
+ * Racing theme score card
37
+ */
38
+ export declare function formatRacingScoreCard(score: number, sectors?: {
39
+ s1?: number;
40
+ s2?: number;
41
+ s3?: number;
42
+ }): string;
43
+ /**
44
+ * List all available indicators
45
+ */
46
+ export declare function listScoreIndicators(): string;
47
+ //# sourceMappingURL=score-indicators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"score-indicators.d.ts","sourceRoot":"","sources":["../../src/utils/score-indicators.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,cAAc,EAgE5C,CAAC;AAEF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAE/D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,MAAM,CAsB3E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGtD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,GAAE,MAAM,EAAO,GAAG,MAAM,CAkC7G;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAM,GAAG,MAAM,CAiClH;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAc5C"}
@@ -0,0 +1,197 @@
1
+ "use strict";
2
+ /**
3
+ * 🎯 FAF Score Indicators - Flag-based visual achievement system
4
+ * Different flags = Different achievement levels
5
+ * NO VERTICAL LINES = NO MISALIGNMENT
6
+ */
7
+ var __importDefault = (this && this.__importDefault) || function (mod) {
8
+ return (mod && mod.__esModule) ? mod : { "default": mod };
9
+ };
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.SCORE_INDICATORS = void 0;
12
+ exports.getScoreIndicator = getScoreIndicator;
13
+ exports.formatScoreHeader = formatScoreHeader;
14
+ exports.formatScoreBadge = formatScoreBadge;
15
+ exports.formatScoreCard = formatScoreCard;
16
+ exports.formatRacingScoreCard = formatRacingScoreCard;
17
+ exports.listScoreIndicators = listScoreIndicators;
18
+ const chalk_1 = __importDefault(require("chalk"));
19
+ const championship_style_1 = require("./championship-style");
20
+ /**
21
+ * Achievement level indicators using flags
22
+ */
23
+ exports.SCORE_INDICATORS = [
24
+ {
25
+ min: 105,
26
+ max: 999,
27
+ leftFlag: '🍊',
28
+ rightFlag: '🍊',
29
+ color: championship_style_1.FAF_COLORS.fafOrange,
30
+ title: 'BIG ORANGE',
31
+ description: 'Maximum overdrive! Beyond perfection!'
32
+ },
33
+ {
34
+ min: 99,
35
+ max: 104,
36
+ leftFlag: '🏁',
37
+ rightFlag: '🏁',
38
+ color: championship_style_1.FAF_COLORS.fafGreen,
39
+ title: 'CHAMPIONSHIP',
40
+ description: 'Pole position achieved!'
41
+ },
42
+ {
43
+ min: 90,
44
+ max: 98,
45
+ leftFlag: '🏎️',
46
+ rightFlag: '🏎️',
47
+ color: championship_style_1.FAF_COLORS.fafCyan,
48
+ title: 'RACING MODE',
49
+ description: 'High performance activated!'
50
+ },
51
+ {
52
+ min: 85,
53
+ max: 89,
54
+ leftFlag: '✨',
55
+ rightFlag: '✨',
56
+ color: championship_style_1.FAF_COLORS.fafWhite,
57
+ title: 'TRUST ACHIEVED',
58
+ description: 'AI is genuinely happy!'
59
+ },
60
+ {
61
+ min: 70,
62
+ max: 84,
63
+ leftFlag: '☑️',
64
+ rightFlag: '☑️',
65
+ color: chalk_1.default.cyan,
66
+ title: 'GOOD PROGRESS',
67
+ description: 'On the right track!'
68
+ },
69
+ {
70
+ min: 50,
71
+ max: 69,
72
+ leftFlag: '📈',
73
+ rightFlag: '📈',
74
+ color: chalk_1.default.yellow,
75
+ title: 'BUILDING',
76
+ description: 'Keep pushing forward!'
77
+ },
78
+ {
79
+ min: 0,
80
+ max: 49,
81
+ leftFlag: '🚀',
82
+ rightFlag: '🚀',
83
+ color: chalk_1.default.gray,
84
+ title: 'STARTING',
85
+ description: 'Ready for launch!'
86
+ }
87
+ ];
88
+ /**
89
+ * Get indicator for a specific score
90
+ */
91
+ function getScoreIndicator(score) {
92
+ return exports.SCORE_INDICATORS.find(i => score >= i.min && score <= i.max) || exports.SCORE_INDICATORS[exports.SCORE_INDICATORS.length - 1];
93
+ }
94
+ /**
95
+ * Format score with appropriate flags (open-ended design)
96
+ */
97
+ function formatScoreHeader(score, title = '') {
98
+ const indicator = getScoreIndicator(score);
99
+ const scoreText = `${score}%`;
100
+ // Open-ended design - no vertical lines!
101
+ const lines = [];
102
+ // Top line
103
+ lines.push(indicator.color(`${indicator.leftFlag}${'═'.repeat(60)}${indicator.rightFlag}`));
104
+ // Score line
105
+ const scoreLine = ` ${indicator.title} ${scoreText} ${title}`.padEnd(58);
106
+ lines.push(indicator.color(` ${scoreLine} `));
107
+ // Description line
108
+ const descLine = ` ${indicator.description}`.padEnd(58);
109
+ lines.push(chalk_1.default.gray(` ${descLine} `));
110
+ // Bottom line
111
+ lines.push(indicator.color(`${indicator.leftFlag}${'═'.repeat(60)}${indicator.rightFlag}`));
112
+ return lines.join('\n');
113
+ }
114
+ /**
115
+ * Create a minimal score badge
116
+ */
117
+ function formatScoreBadge(score) {
118
+ const indicator = getScoreIndicator(score);
119
+ return indicator.color(`${indicator.leftFlag} ${score}% ${indicator.rightFlag}`);
120
+ }
121
+ /**
122
+ * Format score card with birth score tracking
123
+ */
124
+ function formatScoreCard(currentScore, birthScore, improvements = []) {
125
+ const indicator = getScoreIndicator(currentScore);
126
+ const growth = currentScore - birthScore;
127
+ const growthSymbol = growth > 0 ? '↑' : growth < 0 ? '↓' : '=';
128
+ const lines = [];
129
+ // Header with flags
130
+ lines.push(indicator.color(`\n${indicator.leftFlag} ${'═'.repeat(50)} ${indicator.rightFlag}`));
131
+ lines.push('');
132
+ // Current score
133
+ lines.push(indicator.color(` ${indicator.title}`));
134
+ lines.push(indicator.color(` Current Score: ${currentScore}%`));
135
+ lines.push('');
136
+ // Growth tracking
137
+ lines.push(chalk_1.default.gray(` Birth Score: ${birthScore}%`));
138
+ lines.push(chalk_1.default.gray(` Growth: ${growthSymbol}${Math.abs(growth)}%`));
139
+ // Improvements
140
+ if (improvements.length > 0) {
141
+ lines.push('');
142
+ lines.push(chalk_1.default.cyan(' Recent Improvements:'));
143
+ improvements.slice(0, 3).forEach(imp => {
144
+ lines.push(chalk_1.default.gray(` ☑️ ${imp}`));
145
+ });
146
+ }
147
+ // Footer
148
+ lines.push('');
149
+ lines.push(indicator.color(`${indicator.leftFlag} ${'═'.repeat(50)} ${indicator.rightFlag}`));
150
+ return lines.join('\n');
151
+ }
152
+ /**
153
+ * Racing theme score card
154
+ */
155
+ function formatRacingScoreCard(score, sectors = {}) {
156
+ const indicator = getScoreIndicator(score);
157
+ const lines = [];
158
+ // Racing header
159
+ lines.push(championship_style_1.FAF_COLORS.fafOrange(`\n🏁 ${'━'.repeat(50)} 🏁`));
160
+ lines.push(championship_style_1.FAF_COLORS.fafWhite(' FAF RACING - TELEMETRY REPORT'));
161
+ lines.push(championship_style_1.FAF_COLORS.fafOrange(`🏁 ${'━'.repeat(50)} 🏁`));
162
+ lines.push('');
163
+ // Lap time
164
+ lines.push(indicator.color(` LAP SCORE: ${score}% ${indicator.title}`));
165
+ lines.push('');
166
+ // Sector times
167
+ lines.push(chalk_1.default.cyan(' SECTOR TIMES:'));
168
+ lines.push(chalk_1.default.gray(` S1 Structure: ${sectors.s1 !== undefined ? sectors.s1 + '%' : 'pending'}`));
169
+ lines.push(chalk_1.default.gray(` S2 Content: ${sectors.s2 !== undefined ? sectors.s2 + '%' : 'pending'}`));
170
+ lines.push(chalk_1.default.gray(` S3 Trust: ${sectors.s3 !== undefined ? sectors.s3 + '%' : 'pending'}`));
171
+ lines.push('');
172
+ // Telemetry
173
+ lines.push(chalk_1.default.green(' TELEMETRY:'));
174
+ lines.push(chalk_1.default.gray(` ⚡ Speed: <50ms`));
175
+ lines.push(chalk_1.default.gray(` 🏆 Position: ${score >= 99 ? 'P1' : score >= 85 ? 'P2' : 'P3+'}`));
176
+ lines.push(chalk_1.default.gray(` 📊 DRS: ${score >= 85 ? 'ENABLED' : 'DISABLED'}`));
177
+ // Footer
178
+ lines.push('');
179
+ lines.push(championship_style_1.FAF_COLORS.fafOrange(`🏁 ${'━'.repeat(50)} 🏁`));
180
+ return lines.join('\n');
181
+ }
182
+ /**
183
+ * List all available indicators
184
+ */
185
+ function listScoreIndicators() {
186
+ const lines = [];
187
+ lines.push(chalk_1.default.cyan('\n═══ FAF SCORE INDICATORS ═══\n'));
188
+ exports.SCORE_INDICATORS.forEach(indicator => {
189
+ const range = indicator.max === 999 ? `${indicator.min}%+` : `${indicator.min}-${indicator.max}%`;
190
+ lines.push(indicator.color(`${indicator.leftFlag} ${indicator.title} ${indicator.rightFlag}`));
191
+ lines.push(chalk_1.default.gray(` Range: ${range}`));
192
+ lines.push(chalk_1.default.gray(` ${indicator.description}`));
193
+ lines.push('');
194
+ });
195
+ return lines.join('\n');
196
+ }
197
+ //# sourceMappingURL=score-indicators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"score-indicators.js","sourceRoot":"","sources":["../../src/utils/score-indicators.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * 🎯 Universal Fuzzy Detection - Google-style intelligence for ALL inputs
3
+ * "Close enough is good enough"
4
+ */
5
+ interface FuzzyMatch {
6
+ detected: boolean;
7
+ type: string;
8
+ confidence: 'high' | 'medium' | 'low' | 'none';
9
+ suggestion?: string;
10
+ needsConfirmation: boolean;
11
+ corrected?: string;
12
+ }
13
+ export declare class UniversalFuzzyDetector {
14
+ private static readonly PROJECT_PATTERNS;
15
+ private static readonly TYPO_CORRECTIONS;
16
+ private static readonly LANGUAGE_PATTERNS;
17
+ /**
18
+ * Detect project type with fuzzy matching
19
+ */
20
+ static detectProjectType(input: string): FuzzyMatch;
21
+ /**
22
+ * Detect language with fuzzy matching
23
+ */
24
+ static detectLanguage(input: string): FuzzyMatch;
25
+ /**
26
+ * Detect with pattern matching
27
+ */
28
+ private static detectWithPatterns;
29
+ /**
30
+ * Correct common typos across all inputs
31
+ */
32
+ private static correctTypos;
33
+ /**
34
+ * Fuzzy match with Levenshtein distance
35
+ */
36
+ private static fuzzyMatch;
37
+ /**
38
+ * Calculate Levenshtein distance
39
+ */
40
+ private static levenshteinDistance;
41
+ /**
42
+ * Check for project context
43
+ */
44
+ private static hasProjectContext;
45
+ /**
46
+ * Guess project type from context
47
+ */
48
+ private static guessProjectType;
49
+ /**
50
+ * Get all suggestions for input
51
+ */
52
+ static getSuggestions(input: string, limit?: number): string[];
53
+ }
54
+ export {};
55
+ /**
56
+ * Examples:
57
+ *
58
+ * detectProjectType("raect app") → "react" (typo corrected)
59
+ * detectProjectType("chr ext") → "chrome-extension" (fuzzy match)
60
+ * detectProjectType("moblie game") → "mobile" + "game" (multiple detections)
61
+ * detectLanguage("typscript") → "typescript" (typo corrected)
62
+ * detectLanguage("js") → "javascript" (abbreviation)
63
+ */
64
+ //# sourceMappingURL=universal-fuzzy-detector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"universal-fuzzy-detector.d.ts","sourceRoot":"","sources":["../../src/utils/universal-fuzzy-detector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,UAAU,UAAU;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,sBAAsB;IAGjC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAwEtC;IAGF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAgFtC;IAGF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAevC;IAEF;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU;IAwBnD;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU;IAqChD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;IA8CjC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IAY3B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAUzB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IA4BlC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAQhC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAS/B;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,MAAM,EAAE;CAsBlE;;AAED;;;;;;;;GAQG"}