kumo-cli 1.0.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.
- package/LICENSE +21 -0
- package/README.md +130 -0
- package/dist/ansiCodes.js +107 -0
- package/dist/ansiCodes.js.map +1 -0
- package/dist/credentialsStore.js +57 -0
- package/dist/credentialsStore.js.map +1 -0
- package/dist/generateHookSettings.js +30 -0
- package/dist/generateHookSettings.js.map +1 -0
- package/dist/hookServer.js +32 -0
- package/dist/hookServer.js.map +1 -0
- package/dist/ignorePaths.js +68 -0
- package/dist/ignorePaths.js.map +1 -0
- package/dist/index.js +1159 -0
- package/dist/index.js.map +1 -0
- package/dist/loadDotEnv.js +79 -0
- package/dist/loadDotEnv.js.map +1 -0
- package/dist/portForwardManager.js +97 -0
- package/dist/portForwardManager.js.map +1 -0
- package/dist/projectHistoryReader.js +85 -0
- package/dist/projectHistoryReader.js.map +1 -0
- package/dist/ptyMenuParser.js +470 -0
- package/dist/ptyMenuParser.js.map +1 -0
- package/dist/ptySnapshotRenderer.js +78 -0
- package/dist/ptySnapshotRenderer.js.map +1 -0
- package/dist/sessionScanner.js +145 -0
- package/dist/sessionScanner.js.map +1 -0
- package/dist/snapshotScanner.js +152 -0
- package/dist/snapshotScanner.js.map +1 -0
- package/dist/spawn.js +69 -0
- package/dist/spawn.js.map +1 -0
- package/dist/terminalManager.js +73 -0
- package/dist/terminalManager.js.map +1 -0
- package/package.json +65 -0
- package/scripts/claude_launcher.cjs +71 -0
- package/scripts/session_hook_forwarder.cjs +44 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
function parseDotEnv(text) {
|
|
4
|
+
const out = {};
|
|
5
|
+
const lines = text.split(/\r?\n/);
|
|
6
|
+
for (const rawLine of lines) {
|
|
7
|
+
const line = rawLine.trim();
|
|
8
|
+
if (!line || line.startsWith('#'))
|
|
9
|
+
continue;
|
|
10
|
+
const normalized = line.startsWith('export ') ? line.slice('export '.length).trimStart() : line;
|
|
11
|
+
const eqIdx = normalized.indexOf('=');
|
|
12
|
+
if (eqIdx <= 0)
|
|
13
|
+
continue;
|
|
14
|
+
const key = normalized.slice(0, eqIdx).trim();
|
|
15
|
+
if (!/^[A-Za-z_][A-Za-z0-9_]*$/.test(key))
|
|
16
|
+
continue;
|
|
17
|
+
let value = normalized.slice(eqIdx + 1).trim();
|
|
18
|
+
if (!value) {
|
|
19
|
+
out[key] = '';
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
const first = value[0];
|
|
23
|
+
if (first === '"' || first === "'") {
|
|
24
|
+
const quote = first;
|
|
25
|
+
const rest = value.slice(1);
|
|
26
|
+
const endIdx = rest.lastIndexOf(quote);
|
|
27
|
+
const inner = endIdx >= 0 ? rest.slice(0, endIdx) : rest;
|
|
28
|
+
if (quote === '"') {
|
|
29
|
+
out[key] = inner
|
|
30
|
+
.replace(/\\n/g, '\n')
|
|
31
|
+
.replace(/\\r/g, '\r')
|
|
32
|
+
.replace(/\\t/g, '\t')
|
|
33
|
+
.replace(/\\\\/g, '\\')
|
|
34
|
+
.replace(/\\"/g, '"');
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
out[key] = inner;
|
|
38
|
+
}
|
|
39
|
+
continue;
|
|
40
|
+
}
|
|
41
|
+
value = value.replace(/\s+#.*$/, '').trim();
|
|
42
|
+
out[key] = value;
|
|
43
|
+
}
|
|
44
|
+
return out;
|
|
45
|
+
}
|
|
46
|
+
function findEnvDir(startDir) {
|
|
47
|
+
let dir = startDir;
|
|
48
|
+
for (;;) {
|
|
49
|
+
const envPath = path.join(dir, '.env');
|
|
50
|
+
const localEnvPath = path.join(dir, '.env.local');
|
|
51
|
+
if (fs.existsSync(envPath) || fs.existsSync(localEnvPath))
|
|
52
|
+
return dir;
|
|
53
|
+
const parent = path.dirname(dir);
|
|
54
|
+
if (parent === dir)
|
|
55
|
+
return null;
|
|
56
|
+
dir = parent;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
export function loadDotEnv() {
|
|
60
|
+
const envDir = findEnvDir(process.cwd());
|
|
61
|
+
if (!envDir)
|
|
62
|
+
return;
|
|
63
|
+
const loadedByUs = new Set();
|
|
64
|
+
const candidates = ['.env', '.env.local'];
|
|
65
|
+
for (const filename of candidates) {
|
|
66
|
+
const fullPath = path.join(envDir, filename);
|
|
67
|
+
if (!fs.existsSync(fullPath))
|
|
68
|
+
continue;
|
|
69
|
+
const content = fs.readFileSync(fullPath, 'utf-8');
|
|
70
|
+
const parsed = parseDotEnv(content);
|
|
71
|
+
for (const [k, v] of Object.entries(parsed)) {
|
|
72
|
+
if (process.env[k] === undefined || loadedByUs.has(k)) {
|
|
73
|
+
process.env[k] = v;
|
|
74
|
+
loadedByUs.add(k);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=loadDotEnv.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loadDotEnv.js","sourceRoot":"","sources":["../src/loadDotEnv.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import httpProxyModule from 'http-proxy';
|
|
2
|
+
import http from 'http';
|
|
3
|
+
import { Bonjour } from 'bonjour-service';
|
|
4
|
+
const httpProxy = httpProxyModule.default ?? httpProxyModule;
|
|
5
|
+
const forwards = new Map();
|
|
6
|
+
let bonjour = null;
|
|
7
|
+
function getBonjour() {
|
|
8
|
+
if (!bonjour)
|
|
9
|
+
bonjour = new Bonjour();
|
|
10
|
+
return bonjour;
|
|
11
|
+
}
|
|
12
|
+
export function addForward(targetPort, listenPort, hostname) {
|
|
13
|
+
return new Promise((resolve, reject) => {
|
|
14
|
+
if (forwards.has(listenPort)) {
|
|
15
|
+
resolve(forwards.get(listenPort));
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
const resolvedHostname = hostname || 'localhost';
|
|
19
|
+
const proxy = httpProxy.createProxyServer({
|
|
20
|
+
target: `http://127.0.0.1:${targetPort}`,
|
|
21
|
+
ws: true,
|
|
22
|
+
});
|
|
23
|
+
proxy.on('error', (err, _req, res) => {
|
|
24
|
+
if (res && 'writeHead' in res && typeof res.writeHead === 'function') {
|
|
25
|
+
res.writeHead(502, { 'Content-Type': 'text/plain' });
|
|
26
|
+
res.end(`Proxy error: ${err.message}`);
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
const server = http.createServer((req, res) => {
|
|
30
|
+
proxy.web(req, res);
|
|
31
|
+
});
|
|
32
|
+
server.on('upgrade', (req, socket, head) => {
|
|
33
|
+
proxy.ws(req, socket, head);
|
|
34
|
+
});
|
|
35
|
+
server.listen(listenPort, '0.0.0.0', () => {
|
|
36
|
+
console.log(`[port_forward] listening on 0.0.0.0:${listenPort} → 127.0.0.1:${targetPort}`);
|
|
37
|
+
let mdnsService;
|
|
38
|
+
const name = resolvedHostname.replace(/\.local$/, '');
|
|
39
|
+
try {
|
|
40
|
+
mdnsService = getBonjour().publish({
|
|
41
|
+
name,
|
|
42
|
+
type: 'http',
|
|
43
|
+
port: listenPort,
|
|
44
|
+
host: resolvedHostname.endsWith('.local') ? resolvedHostname : `${resolvedHostname}.local`,
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
catch { }
|
|
48
|
+
const entry = {
|
|
49
|
+
targetPort,
|
|
50
|
+
listenPort,
|
|
51
|
+
hostname: resolvedHostname,
|
|
52
|
+
url: `http://${resolvedHostname}:${listenPort}`,
|
|
53
|
+
server,
|
|
54
|
+
mdnsService,
|
|
55
|
+
};
|
|
56
|
+
forwards.set(listenPort, entry);
|
|
57
|
+
resolve(entry);
|
|
58
|
+
});
|
|
59
|
+
server.on('error', (err) => {
|
|
60
|
+
console.error(`[port_forward] server error on port ${listenPort}:`, err.message);
|
|
61
|
+
reject(err);
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
export function removeForward(listenPort) {
|
|
66
|
+
const entry = forwards.get(listenPort);
|
|
67
|
+
if (!entry)
|
|
68
|
+
return false;
|
|
69
|
+
try {
|
|
70
|
+
entry.server.close();
|
|
71
|
+
}
|
|
72
|
+
catch { }
|
|
73
|
+
if (entry.mdnsService) {
|
|
74
|
+
try {
|
|
75
|
+
entry.mdnsService.stop?.();
|
|
76
|
+
}
|
|
77
|
+
catch { }
|
|
78
|
+
}
|
|
79
|
+
forwards.delete(listenPort);
|
|
80
|
+
return true;
|
|
81
|
+
}
|
|
82
|
+
export function listForwards() {
|
|
83
|
+
return [...forwards.values()].map(({ targetPort, listenPort, hostname, url }) => ({ targetPort, listenPort, hostname, url }));
|
|
84
|
+
}
|
|
85
|
+
export function destroyAll() {
|
|
86
|
+
for (const [port] of forwards) {
|
|
87
|
+
removeForward(port);
|
|
88
|
+
}
|
|
89
|
+
if (bonjour) {
|
|
90
|
+
try {
|
|
91
|
+
bonjour.destroy();
|
|
92
|
+
}
|
|
93
|
+
catch { }
|
|
94
|
+
bonjour = null;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=portForwardManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"portForwardManager.js","sourceRoot":"","sources":["../src/portForwardManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import os from 'os';
|
|
4
|
+
function folderNameToProjectPath(folderName) {
|
|
5
|
+
if (folderName.match(/^[a-zA-Z]-/)) {
|
|
6
|
+
return folderName.replace(/^([a-zA-Z])-/, '$1:\\').replace(/-/g, path.sep);
|
|
7
|
+
}
|
|
8
|
+
return folderName.replace(/-/g, path.sep);
|
|
9
|
+
}
|
|
10
|
+
function extractText(entry) {
|
|
11
|
+
const content = entry.message?.content;
|
|
12
|
+
if (typeof content === 'string')
|
|
13
|
+
return content;
|
|
14
|
+
if (Array.isArray(content)) {
|
|
15
|
+
for (const block of content) {
|
|
16
|
+
if (block.type === 'text' && block.text)
|
|
17
|
+
return block.text;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
return '';
|
|
21
|
+
}
|
|
22
|
+
function readSessionSummary(sessionFile, sessionId) {
|
|
23
|
+
let firstMessage = '';
|
|
24
|
+
let lastTimestamp = '';
|
|
25
|
+
let messageCount = 0;
|
|
26
|
+
try {
|
|
27
|
+
const raw = fs.readFileSync(sessionFile, 'utf-8');
|
|
28
|
+
const lines = raw.split('\n').filter((l) => l.trim());
|
|
29
|
+
for (const line of lines) {
|
|
30
|
+
try {
|
|
31
|
+
const entry = JSON.parse(line);
|
|
32
|
+
if (entry.type !== 'user' && entry.type !== 'assistant')
|
|
33
|
+
continue;
|
|
34
|
+
if (!entry.message?.role || entry.message.role === 'system')
|
|
35
|
+
continue;
|
|
36
|
+
messageCount++;
|
|
37
|
+
if (!firstMessage) {
|
|
38
|
+
firstMessage = extractText(entry).slice(0, 200);
|
|
39
|
+
}
|
|
40
|
+
if (entry.timestamp)
|
|
41
|
+
lastTimestamp = entry.timestamp;
|
|
42
|
+
}
|
|
43
|
+
catch { }
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
catch { }
|
|
47
|
+
return { sessionId, firstMessage, lastTimestamp, messageCount };
|
|
48
|
+
}
|
|
49
|
+
export async function getProjectList() {
|
|
50
|
+
const projectsDir = path.join(os.homedir(), '.claude', 'projects');
|
|
51
|
+
if (!fs.existsSync(projectsDir))
|
|
52
|
+
return [];
|
|
53
|
+
const result = [];
|
|
54
|
+
const entries = fs.readdirSync(projectsDir, { withFileTypes: true });
|
|
55
|
+
for (const entry of entries) {
|
|
56
|
+
if (!entry.isDirectory())
|
|
57
|
+
continue;
|
|
58
|
+
const folderName = entry.name;
|
|
59
|
+
const projectFolder = path.join(projectsDir, folderName);
|
|
60
|
+
const projectPath = folderNameToProjectPath(folderName);
|
|
61
|
+
const sessionFiles = fs.readdirSync(projectFolder).filter((f) => f.endsWith('.jsonl'));
|
|
62
|
+
const sessions = [];
|
|
63
|
+
for (const file of sessionFiles) {
|
|
64
|
+
const sessionId = path.basename(file, '.jsonl');
|
|
65
|
+
const sessionFile = path.join(projectFolder, file);
|
|
66
|
+
const summary = readSessionSummary(sessionFile, sessionId);
|
|
67
|
+
sessions.push(summary);
|
|
68
|
+
}
|
|
69
|
+
sessions.sort((a, b) => {
|
|
70
|
+
const ta = a.lastTimestamp || '';
|
|
71
|
+
const tb = b.lastTimestamp || '';
|
|
72
|
+
return tb.localeCompare(ta);
|
|
73
|
+
});
|
|
74
|
+
if (sessions.length > 0) {
|
|
75
|
+
result.push({ name: path.basename(projectPath), path: projectPath, folderName, sessions });
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
result.sort((a, b) => {
|
|
79
|
+
const ta = a.sessions[0]?.lastTimestamp || '';
|
|
80
|
+
const tb = b.sessions[0]?.lastTimestamp || '';
|
|
81
|
+
return tb.localeCompare(ta);
|
|
82
|
+
});
|
|
83
|
+
return result;
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=projectHistoryReader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projectHistoryReader.js","sourceRoot":"","sources":["../src/projectHistoryReader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AA0BpB,SAAS,uBAAuB,CAAC,UAAkB;IACjD,IAAI,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;QACnC,OAAO,UAAU,CAAC,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,WAAW,CAAC,KAAiB;IACpC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC;IACvC,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC;IAChD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI;gBAAE,OAAO,KAAK,CAAC,IAAI,CAAC;QAC7D,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,kBAAkB,CAAC,WAAmB,EAAE,SAAiB;IAChE,IAAI,YAAY,GAAG,EAAE,CAAC;IACtB,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,IAAI,YAAY,GAAG,CAAC,CAAC;IAErB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACtD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAe,CAAC;gBAC7C,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW;oBAAE,SAAS;gBAClE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ;oBAAE,SAAS;gBACtE,YAAY,EAAE,CAAC;gBACf,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;gBAClD,CAAC;gBACD,IAAI,KAAK,CAAC,SAAS;oBAAE,aAAa,GAAG,KAAK,CAAC,SAAS,CAAC;YACvD,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QACZ,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IAEV,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC;AAClE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc;IAClC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IACnE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,EAAE,CAAC;IAE3C,MAAM,MAAM,GAAkB,EAAE,CAAC;IAEjC,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACrE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YAAE,SAAS;QAEnC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC;QAC9B,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QACzD,MAAM,WAAW,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAAC;QAExD,MAAM,YAAY,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QACvF,MAAM,QAAQ,GAAqB,EAAE,CAAC;QAEtC,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAChD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YACnD,MAAM,OAAO,GAAG,kBAAkB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAC3D,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACrB,MAAM,EAAE,GAAG,CAAC,CAAC,aAAa,IAAI,EAAE,CAAC;YACjC,MAAM,EAAE,GAAG,CAAC,CAAC,aAAa,IAAI,EAAE,CAAC;YACjC,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACnB,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,aAAa,IAAI,EAAE,CAAC;QAC9C,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,aAAa,IAAI,EAAE,CAAC;QAC9C,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
|