@whispering233/ai-editor-server 0.0.52 → 0.0.54

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 (86) hide show
  1. package/client-dist/assets/{index-Dim9IXQC.css → index-B2op0r9o.css} +1 -1
  2. package/client-dist/assets/index-Bgk8dcAm.js +627 -0
  3. package/client-dist/index.html +2 -2
  4. package/dist/backup.d.ts +37 -44
  5. package/dist/backup.d.ts.map +1 -1
  6. package/dist/backup.js +55 -201
  7. package/dist/backup.js.map +1 -1
  8. package/dist/cloud/auto-push.d.ts +3 -3
  9. package/dist/cloud/auto-push.d.ts.map +1 -1
  10. package/dist/cloud/auto-push.js +7 -6
  11. package/dist/cloud/auto-push.js.map +1 -1
  12. package/dist/cloud/state.d.ts +6 -0
  13. package/dist/cloud/state.d.ts.map +1 -1
  14. package/dist/cloud/state.js +25 -0
  15. package/dist/cloud/state.js.map +1 -1
  16. package/dist/cloud/sync.d.ts +4 -6
  17. package/dist/cloud/sync.d.ts.map +1 -1
  18. package/dist/cloud/sync.js +8 -23
  19. package/dist/cloud/sync.js.map +1 -1
  20. package/dist/decompose/batching.d.ts +20 -0
  21. package/dist/decompose/batching.d.ts.map +1 -0
  22. package/dist/decompose/batching.js +29 -0
  23. package/dist/decompose/batching.js.map +1 -0
  24. package/dist/decompose/extract.d.ts +44 -0
  25. package/dist/decompose/extract.d.ts.map +1 -0
  26. package/dist/decompose/extract.js +246 -0
  27. package/dist/decompose/extract.js.map +1 -0
  28. package/dist/decompose/job.d.ts +91 -0
  29. package/dist/decompose/job.d.ts.map +1 -0
  30. package/dist/decompose/job.js +289 -0
  31. package/dist/decompose/job.js.map +1 -0
  32. package/dist/decompose/llm.d.ts +68 -0
  33. package/dist/decompose/llm.d.ts.map +1 -0
  34. package/dist/decompose/llm.js +181 -0
  35. package/dist/decompose/llm.js.map +1 -0
  36. package/dist/decompose/merge-write.d.ts +75 -0
  37. package/dist/decompose/merge-write.d.ts.map +1 -0
  38. package/dist/decompose/merge-write.js +670 -0
  39. package/dist/decompose/merge-write.js.map +1 -0
  40. package/dist/decompose/merge.d.ts +156 -0
  41. package/dist/decompose/merge.d.ts.map +1 -0
  42. package/dist/decompose/merge.js +266 -0
  43. package/dist/decompose/merge.js.map +1 -0
  44. package/dist/decompose/report.d.ts +57 -0
  45. package/dist/decompose/report.d.ts.map +1 -0
  46. package/dist/decompose/report.js +127 -0
  47. package/dist/decompose/report.js.map +1 -0
  48. package/dist/decompose/runner.d.ts +143 -0
  49. package/dist/decompose/runner.d.ts.map +1 -0
  50. package/dist/decompose/runner.js +520 -0
  51. package/dist/decompose/runner.js.map +1 -0
  52. package/dist/decompose/split.d.ts +89 -0
  53. package/dist/decompose/split.d.ts.map +1 -0
  54. package/dist/decompose/split.js +556 -0
  55. package/dist/decompose/split.js.map +1 -0
  56. package/dist/index.d.ts.map +1 -1
  57. package/dist/index.js +4 -0
  58. package/dist/index.js.map +1 -1
  59. package/dist/last-project.d.ts +5 -0
  60. package/dist/last-project.d.ts.map +1 -1
  61. package/dist/last-project.js +18 -0
  62. package/dist/last-project.js.map +1 -1
  63. package/dist/middleware/error.d.ts +1 -1
  64. package/dist/middleware/error.d.ts.map +1 -1
  65. package/dist/middleware/error.js +9 -0
  66. package/dist/middleware/error.js.map +1 -1
  67. package/dist/middleware/project.d.ts +4 -3
  68. package/dist/middleware/project.d.ts.map +1 -1
  69. package/dist/middleware/project.js +40 -2
  70. package/dist/middleware/project.js.map +1 -1
  71. package/dist/routes/chat.d.ts.map +1 -1
  72. package/dist/routes/chat.js +28 -3
  73. package/dist/routes/chat.js.map +1 -1
  74. package/dist/routes/cloud.d.ts.map +1 -1
  75. package/dist/routes/cloud.js +168 -11
  76. package/dist/routes/cloud.js.map +1 -1
  77. package/dist/routes/decompose.d.ts +26 -0
  78. package/dist/routes/decompose.d.ts.map +1 -0
  79. package/dist/routes/decompose.js +453 -0
  80. package/dist/routes/decompose.js.map +1 -0
  81. package/dist/routes/project.d.ts +22 -0
  82. package/dist/routes/project.d.ts.map +1 -1
  83. package/dist/routes/project.js +143 -9
  84. package/dist/routes/project.js.map +1 -1
  85. package/package.json +5 -5
  86. package/client-dist/assets/index-JrTZv8BF.js +0 -621
@@ -1,21 +1,22 @@
1
- // 云端存档路由:GET /status、PUT /config、POST /test(挂载于 /api/v1/cloud)
1
+ // 云端存档路由:GET /status、PUT /config、POST /test、GET /remote-books、POST /import-book(挂载于 /api/v1/cloud)
2
2
  //
3
3
  // 契约 = `docs/api/100-api-cloud.md`;语义与不变式 = `docs/design/40-cloud-sync.md`。
4
- // 卡 2 只做**配置段**:账号读写 + 连通性/读写权限测试;云端的列表、推送、拉取在后续卡片,
5
- // 那时 status 会补上 remote/local/state(现在不填,避免「字段存在但永远为 null」的假契约)。
6
4
  //
7
- // 三个端点均**不要求**项目已打开(设置页需先能配账号;projectId 仅作回显)。
8
- // 凭据纪律:password 永不进响应——不是脱敏展示,而是根本不回传。
5
+ // 除 push/pull(需当前项目)外均**不要求**项目已打开(设置页需先能配账号;projectId 仅作回显;
6
+ // 新机器恢复时书架还没打开任何书)。凭据纪律:password 永不进响应——不是脱敏展示,而是根本不回传。
9
7
  import { Hono } from "hono";
10
- import { cloudConfigPutReqSchema, cloudPullReqSchema, cloudPushReqSchema } from "@whispering233/ai-editor-shared/schemas";
11
- import { sanitizeDeviceName } from "@whispering233/ai-editor-shared";
8
+ import { mkdirSync, rmSync, statSync } from "node:fs";
9
+ import { join, basename } from "node:path";
10
+ import { cloudConfigPutReqSchema, cloudImportBookReqSchema, cloudPullReqSchema, cloudPushReqSchema, PROJECT_EXPORT_FILE_NAMES, } from "@whispering233/ai-editor-shared/schemas";
11
+ import { parseBackupFileName, sanitizeDeviceName } from "@whispering233/ai-editor-shared";
12
12
  import { HttpError, ok } from "../middleware/error.js";
13
13
  import { getCurrentProject, requireCurrentProject } from "../middleware/project.js";
14
14
  import { currentDeviceName } from "../cloud/device.js";
15
- import { configuredDeviceName, readAutoPush, readBookState, readWebdavConfig, writeCloudConfig } from "../cloud/state.js";
16
- import { startAutoBackup } from "../backup.js";
15
+ import { configuredDeviceName, readAutoPush, readBookState, readWebdavConfig, writeBookState, writeCloudConfig } from "../cloud/state.js";
16
+ import { startAutoBackup, validateBackupPackage, writeProjectFilesFromBackup, writeRawBackupFile } from "../backup.js";
17
17
  import { cloudFileSet, computeCloudSync, findExistingCloudDir, pullBackup, pushBackup, toCloudBackups } from "../cloud/sync.js";
18
- import { createWebdavClient } from "../cloud/webdav.js";
18
+ import { CLOUD_WORK_DIR, createWebdavClient } from "../cloud/webdav.js";
19
+ import { findBookDirById, getProjectRoot, isBookNameValid, uniqueBookDir } from "./project.js";
19
20
  /** 云端存档路由(挂载于 /api/v1/cloud) */
20
21
  export const cloudRoutes = new Hono();
21
22
  /** 读写探测用的临时文件名(沿用 `.tmp-` 约定:推送前清理流程会顺带回收遗留文件) */
@@ -88,7 +89,7 @@ cloudRoutes.get("/status", async (c) => {
88
89
  return c.json(ok(payload));
89
90
  });
90
91
  // POST /api/v1/cloud/pull —— 从云端拉取一份备份应用到当前项目(缺省 = 云端 head)
91
- // 语义:三文件覆盖 + `sessions/` **并集合并**(基线三方比较、删除优先);
92
+ // 语义:三文件覆盖(`sessions/` 是纯本地目录,不写不删);
92
93
  // 覆盖前自动快照本机当前状态(restore 管道既有行为)
93
94
  cloudRoutes.post("/pull", async (c) => {
94
95
  const project = requireCurrentProject(); // 409 NO_PROJECT_OPEN
@@ -203,4 +204,160 @@ cloudRoutes.post("/test", async (c) => {
203
204
  const payload = { connected: true, baseUrl: webdav.url, created, ...(leftover ? { leftoverWriteTestFile: true } : {}) };
204
205
  return c.json(ok(payload));
205
206
  });
207
+ // ============ 新机器恢复:列云端书 + 导入为新书(`docs/design/40-cloud-sync.md` §10) ============
208
+ /** 未配置云盘时两个端点的统一拒绝(码表:409 CLOUD_NOT_CONFIGURED) */
209
+ function requireWebdavConfig() {
210
+ const webdav = readWebdavConfig();
211
+ if (webdav === null) {
212
+ throw new HttpError(409, "CLOUD_NOT_CONFIGURED", "云盘未配置:请先在设置页填写 WebDAV 地址与用户名/应用密码");
213
+ }
214
+ return webdav;
215
+ }
216
+ /**
217
+ * 云端书目录名 → `{ name, projectId }`;解析不出 → null(= 目录名没带 id / 无 id 声明,**不阻止导入**;UI 只对无备份置灰)。
218
+ *
219
+ * 三种命名(`docs/api/100-api-cloud.md`):`<书名>-<projectId>`(默认)、`ai-editor-<projectId>`
220
+ * (云盘拒长名后的回退)、`<projectId>`(回退链最后一档)。projectId 形状 = `proj-` + 21 位 URL 安全
221
+ * 字母(shared `generateProjectId`)——按这个形状匹配尾部,不按 `-` 切分(书名与 nanoid 段都可含 `-`)。
222
+ * 两种回退命名的首段不是真书名 → `name = null`。
223
+ */
224
+ function parseCloudBookDirName(dirName) {
225
+ const match = /^(?:(.+)-)?(proj-[A-Za-z0-9_-]{21})$/.exec(dirName);
226
+ if (match === null)
227
+ return null;
228
+ const name = match[1] === undefined || match[1] === CLOUD_WORK_DIR ? null : match[1];
229
+ return { name, projectId: match[2] };
230
+ }
231
+ /**
232
+ * 导入完成时的同步基准(写进 `cloud.json` 的 `lastSyncAt`)= `max(now, 刚写下的三文件 mtime 向上取整到毫秒)`。
233
+ *
234
+ * 为何不直接 `new Date()`:文件系统 mtime 是**亚毫秒**精度,而 `new Date()` 只到毫秒——同一毫秒内
235
+ * 写下的文件会被 `hasLocalEditsSince` 的**严格**比较(project.json/outline.json 无容差)读成
236
+ * 「本机有改动」,于是刚导入完查状态就是 `local-ahead`(实测同毫秒写入下约 1/6 概率)。
237
+ * 基准不由自己写入的文件决定,才符合「刚导入 = 已同步」的语义。
238
+ */
239
+ function importSyncBaseline(bookDir) {
240
+ let baseline = Date.now();
241
+ for (const name of PROJECT_EXPORT_FILE_NAMES) {
242
+ try {
243
+ baseline = Math.max(baseline, Math.ceil(statSync(join(bookDir, name)).mtimeMs));
244
+ }
245
+ catch {
246
+ continue; // 三文件刚写完,stat 失败不改变基准(基准只影响三态判定的灵敏度)
247
+ }
248
+ }
249
+ return new Date(baseline).toISOString();
250
+ }
251
+ // GET /api/v1/cloud/remote-books —— 列云端工作根下的全部书目录(不要求项目已打开)
252
+ // 工作根不存在 → 空数组(**GET 不写云盘**:不 MKCOL,用户先配好并在本机推一份);
253
+ // 每书目录一次 PROPFIND(请求量 = 1 + 书目录数);无法解析的目录也列出(backups:[] / projectId:null)
254
+ cloudRoutes.get("/remote-books", async (c) => {
255
+ const webdav = requireWebdavConfig();
256
+ const client = createWebdavClient(webdav);
257
+ const rootEntries = await client.list("");
258
+ if (rootEntries === null) {
259
+ const empty = { books: [] };
260
+ return c.json(ok(empty));
261
+ }
262
+ const root = getProjectRoot();
263
+ const books = [];
264
+ for (const dir of rootEntries.filter((entry) => entry.isCollection)) {
265
+ const entries = (await client.list(dir.name)) ?? [];
266
+ const parsed = parseCloudBookDirName(dir.name);
267
+ books.push({
268
+ dirName: dir.name,
269
+ name: parsed?.name ?? null,
270
+ projectId: parsed?.projectId ?? null,
271
+ // 本机已有同 id 的书 → 不可重复导入(UI 置灰并提示去打开同步)
272
+ localExists: parsed !== null && root !== null && findBookDirById(root, parsed.projectId) !== null,
273
+ backups: toCloudBackups(entries),
274
+ });
275
+ }
276
+ const payload = { books };
277
+ return c.json(ok(payload));
278
+ });
279
+ // POST /api/v1/cloud/import-book —— 把云端某本书的一份备份导入为本机新书(不要求项目已打开)
280
+ //
281
+ // 流程:目录/文件存在性(404)→ 下载 → **既有导入校验管道** `validateBackupPackage`
282
+ // (与 `POST /project/import` 同一实现:坏包 400 / 版本 409)→ **目录名一致性守卫**
283
+ // (目录名能解析出 id 且 ≠ 包内 id → 400;必读包内 id 故此时才能比对;从未触碰 `books/`)
284
+ // → 本机已有同 id → 409(不静默覆盖:
285
+ // 那本书应在应用内自己同步)→ `uniqueBookDir` 建档(**id 沿用**、name 归一为目录名)→
286
+ // 那份 zip **原样**落新书 `.backups/`(新机器立刻有一份「最新本地备份」)→ 写 `cloud.json` book state
287
+ // (`lastPushedFileName` = 导入的那份 / `lastSeenCloudFiles` = 当时云端集合 / `lastSyncAt` = 见
288
+ // `importSyncBaseline`)——不写则新机器一打开就是 `conflict`(云端有份 + 本机无同步记录),
289
+ // 刚拉下来就逼用户裁决。**不自动打开**。
290
+ cloudRoutes.post("/import-book", async (c) => {
291
+ const webdav = requireWebdavConfig();
292
+ const parsed = cloudImportBookReqSchema.parse(await c.req.json().catch(() => ({})));
293
+ const root = getProjectRoot();
294
+ if (root === null) {
295
+ throw new HttpError(500, "INTERNAL_ERROR", "创作根未初始化(startServer 未调用 setProjectRoot)");
296
+ }
297
+ // dir_name 进云盘路径拼接,也作书名兜底 → 只接受**单段目录名**(不含路径分隔符与 `..`,
298
+ // 且通过书名规则:纯点/控制字符同样拒——`books/` 下目标目录名就从它派生)
299
+ if (parsed.dir_name.trim() === "" || /[/\\]|\.\./.test(parsed.dir_name) || !isBookNameValid(parsed.dir_name)) {
300
+ throw new HttpError(400, "VALIDATION_ERROR", `云端目录名非法(须为不含路径分隔符与 .. 的单段名): ${parsed.dir_name}`);
301
+ }
302
+ if (parsed.file_name !== undefined && parseBackupFileName(parsed.file_name) === null) {
303
+ throw new HttpError(400, "VALIDATION_ERROR", `备份文件名不在白名单内: ${parsed.file_name}`);
304
+ }
305
+ const client = createWebdavClient(webdav);
306
+ const entries = await client.list(parsed.dir_name);
307
+ if (entries === null) {
308
+ throw new HttpError(404, "CLOUD_FILE_NOT_FOUND", `云端没有这个书目录: ${parsed.dir_name}`);
309
+ }
310
+ const backups = toCloudBackups(entries);
311
+ const head = backups[0] ?? null;
312
+ const target = parsed.file_name === undefined ? head : (backups.find((entry) => entry.fileName === parsed.file_name) ?? null);
313
+ if (target === null) {
314
+ throw new HttpError(404, "CLOUD_FILE_NOT_FOUND", parsed.file_name === undefined
315
+ ? `云端书目录里没有可导入的备份: ${parsed.dir_name}`
316
+ : `云端那份备份已不存在: ${parsed.file_name}`);
317
+ }
318
+ const bytes = await client.get(`${parsed.dir_name}/${target.fileName}`);
319
+ if (bytes === null) {
320
+ throw new HttpError(404, "CLOUD_FILE_NOT_FOUND", `云端那份备份已不存在: ${target.fileName}`);
321
+ }
322
+ // 校验通过前不触碰 books/(与 import 同管道同语义);版本过高/坏包直接抛出,不落半成品
323
+ const validated = validateBackupPackage(new Uint8Array(bytes));
324
+ // 目录名解析出的 id ≠ 包内 id → 拒绝(设计文档 §10 表)。危害不是「导入错书」而是 state.dirName 取自目录名:
325
+ // 之后推送会把这本书写进**别人的书的云端目录**(跨书污染)。解析不出 id(用户手工命名目录)无 id 声明,不算冲突。
326
+ const declaredId = parseCloudBookDirName(parsed.dir_name)?.projectId ?? null;
327
+ if (declaredId !== null && declaredId !== validated.projectId) {
328
+ throw new HttpError(400, "VALIDATION_ERROR", `云端目录与备份内容不是同一本书(目录名声明 id: ${declaredId},备份包内 id: ${validated.projectId})——请确认选对了书目录`);
329
+ }
330
+ if (findBookDirById(root, validated.projectId) !== null) {
331
+ throw new HttpError(409, "PROJECT_ALREADY_EXISTS", `本机书架已有这本书(id: ${validated.projectId})——打开它自己同步即可,不重复导入`);
332
+ }
333
+ // 书名:目录名解析出的优先(云端目录名就是书名来源);回退命名解析不出 → 包内 project.json 的书名;
334
+ // 两者都不合法(包内书名只经「非空字符串」校验,拼目录前必须过同一道规则)→ 用目录名(已验单段)
335
+ const candidate = parseCloudBookDirName(parsed.dir_name)?.name ?? validated.projectName.trim();
336
+ const bookDir = uniqueBookDir(root, isBookNameValid(candidate) ? candidate : parsed.dir_name);
337
+ try {
338
+ mkdirSync(bookDir, { recursive: true });
339
+ writeProjectFilesFromBackup(bookDir, validated.entries, { name: basename(bookDir) }); // id 沿用(keepId 不传)
340
+ writeRawBackupFile(bookDir, target.fileName, bytes);
341
+ writeBookState(validated.projectId, {
342
+ dirName: parsed.dir_name,
343
+ lastPushedFileName: target.fileName,
344
+ lastSeenHeadFileName: head?.fileName ?? target.fileName,
345
+ lastSyncAt: importSyncBaseline(bookDir),
346
+ lastSeenCloudFiles: cloudFileSet(entries),
347
+ });
348
+ }
349
+ catch (err) {
350
+ rmSync(bookDir, { recursive: true, force: true }); // 半成品不留(含已落盘的那份 zip)
351
+ throw err;
352
+ }
353
+ const payload = {
354
+ imported: true,
355
+ id: validated.projectId,
356
+ path: bookDir,
357
+ name: basename(bookDir),
358
+ fileName: target.fileName,
359
+ size: bytes.length,
360
+ };
361
+ return c.json(ok(payload));
362
+ });
206
363
  //# sourceMappingURL=cloud.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cloud.js","sourceRoot":"","sources":["../../src/routes/cloud.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloud.js","sourceRoot":"","sources":["../../src/routes/cloud.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { Hono } from "hono";
2
+ import { type DecomposeRunnerDeps } from "../decompose/runner.js";
3
+ /** 上传体积上限(原始字节;超限 400 DECOMPOSE_FILE_TOO_LARGE)。analyze 与 start 共用——同文件。 */
4
+ export declare const DECOMPOSE_MAX_FILE_BYTES: number;
5
+ /** 每 token 的汉字数(中文粗估;换 tokenizer 只调这一处——预估本就是量级参考) */
6
+ export declare const DECOMPOSE_CHARS_PER_TOKEN = 1.5;
7
+ /** 每批固定开销里与快照无关的那部分(系统提示 + 输出契约 + 各上限说明)token 粗估 */
8
+ export declare const DECOMPOSE_PROMPT_OVERHEAD_TOKENS = 500;
9
+ /**
10
+ * 每批固定开销 token 粗估(系统提示 + 指令 + 项目数据快照)——**由快照预算派生**,不手写:
11
+ * 快照是量级主导项(§4.1 的 `DECOMPOSE_SNAPSHOT_MAX_CHARS`),写死数字会在改预算时静默失真
12
+ * (预估与实际脱钩、无人报错);批处理省的是这份开销,省不了正文与输出。
13
+ */
14
+ export declare const DECOMPOSE_BATCH_OVERHEAD_TOKENS: number;
15
+ /** 每章输出 token 粗估(一条摘要(受 `DECOMPOSE_CHAPTER_SUMMARY_MAX_CHARS` 约束)+ 若干实体线索) */
16
+ export declare const DECOMPOSE_OUTPUT_TOKENS_PER_CHAPTER = 400;
17
+ /**
18
+ * 拆解路由可注入依赖(测试注入内存运行时;缺省走真实 pi 单例)。
19
+ * 与批执行器 `DecomposeRunnerDeps` 同源:路由把同一份依赖原样传给 S2 runner(注入点只有一处)。
20
+ */
21
+ export type DecomposeRouteDeps = DecomposeRunnerDeps;
22
+ /** 拆解路由工厂(测试经 deps 注入内存运行时;index.ts 用缺省依赖) */
23
+ export declare function createDecomposeRoutes(deps?: DecomposeRouteDeps): Hono;
24
+ /** 拆解路由(挂载于 /api/v1/decompose,index.ts);测试用 `createDecomposeRoutes(deps)` 注入运行时 */
25
+ export declare const decomposeRoutes: Hono<import("hono/types").BlankEnv, import("hono/types").BlankSchema, "/">;
26
+ //# sourceMappingURL=decompose.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decompose.d.ts","sourceRoot":"","sources":["../../src/routes/decompose.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,IAAI,EAAgB,MAAM,MAAM,CAAC;AA+B1C,OAAO,EAAsE,KAAK,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAItI,4EAA4E;AAC5E,eAAO,MAAM,wBAAwB,QAAmB,CAAC;AAEzD,sDAAsD;AACtD,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAC7C,oDAAoD;AACpD,eAAO,MAAM,gCAAgC,MAAM,CAAC;AACpD;;;;GAIG;AACH,eAAO,MAAM,+BAA+B,QAC4D,CAAC;AACzG,8EAA8E;AAC9E,eAAO,MAAM,mCAAmC,MAAM,CAAC;AAavD;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;AAiJrD,8CAA8C;AAC9C,wBAAgB,qBAAqB,CAAC,IAAI,GAAE,kBAAuB,GAAG,IAAI,CAgRzE;AAuCD,mFAAmF;AACnF,eAAO,MAAM,eAAe,4EAA0B,CAAC"}