claude-code-infinite 1.0.35 → 1.0.37

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 (117) hide show
  1. package/README.md +114 -10
  2. package/dist/body-shape.d.ts +49 -0
  3. package/dist/body-shape.d.ts.map +1 -0
  4. package/dist/body-shape.js +232 -0
  5. package/dist/body-shape.js.map +1 -0
  6. package/dist/cc-request.d.ts +15 -0
  7. package/dist/cc-request.d.ts.map +1 -1
  8. package/dist/cc-request.js +30 -0
  9. package/dist/cc-request.js.map +1 -1
  10. package/dist/claude-env.d.ts +24 -1
  11. package/dist/claude-env.d.ts.map +1 -1
  12. package/dist/claude-env.js +48 -7
  13. package/dist/claude-env.js.map +1 -1
  14. package/dist/cli-args.d.ts +1 -1
  15. package/dist/cli-args.d.ts.map +1 -1
  16. package/dist/cli-args.js +1 -1
  17. package/dist/cli-args.js.map +1 -1
  18. package/dist/cli-main.js +113 -11
  19. package/dist/cli-main.js.map +1 -1
  20. package/dist/config.d.ts +5 -0
  21. package/dist/config.d.ts.map +1 -1
  22. package/dist/config.js.map +1 -1
  23. package/dist/count-tokens.d.ts +15 -2
  24. package/dist/count-tokens.d.ts.map +1 -1
  25. package/dist/count-tokens.js +13 -4
  26. package/dist/count-tokens.js.map +1 -1
  27. package/dist/desktop-command.d.ts +38 -0
  28. package/dist/desktop-command.d.ts.map +1 -0
  29. package/dist/desktop-command.js +324 -0
  30. package/dist/desktop-command.js.map +1 -0
  31. package/dist/desktop-service.d.ts +41 -0
  32. package/dist/desktop-service.d.ts.map +1 -0
  33. package/dist/desktop-service.js +449 -0
  34. package/dist/desktop-service.js.map +1 -0
  35. package/dist/desktop-setup.d.ts +94 -0
  36. package/dist/desktop-setup.d.ts.map +1 -0
  37. package/dist/desktop-setup.js +288 -0
  38. package/dist/desktop-setup.js.map +1 -0
  39. package/dist/financial-redaction.d.ts +12 -0
  40. package/dist/financial-redaction.d.ts.map +1 -0
  41. package/dist/financial-redaction.js +509 -0
  42. package/dist/financial-redaction.js.map +1 -0
  43. package/dist/hooks.d.ts +2 -0
  44. package/dist/hooks.d.ts.map +1 -1
  45. package/dist/hooks.js +4 -0
  46. package/dist/hooks.js.map +1 -1
  47. package/dist/https-proxy-eligibility.d.ts +31 -0
  48. package/dist/https-proxy-eligibility.d.ts.map +1 -0
  49. package/dist/https-proxy-eligibility.js +204 -0
  50. package/dist/https-proxy-eligibility.js.map +1 -0
  51. package/dist/https-proxy-mode.d.ts +59 -0
  52. package/dist/https-proxy-mode.d.ts.map +1 -0
  53. package/dist/https-proxy-mode.js +255 -0
  54. package/dist/https-proxy-mode.js.map +1 -0
  55. package/dist/https-proxy-session.d.ts +64 -0
  56. package/dist/https-proxy-session.d.ts.map +1 -0
  57. package/dist/https-proxy-session.js +165 -0
  58. package/dist/https-proxy-session.js.map +1 -0
  59. package/dist/image-tokens.d.ts +6 -1
  60. package/dist/image-tokens.d.ts.map +1 -1
  61. package/dist/image-tokens.js +75 -14
  62. package/dist/image-tokens.js.map +1 -1
  63. package/dist/lane-activity.d.ts +42 -0
  64. package/dist/lane-activity.d.ts.map +1 -0
  65. package/dist/lane-activity.js +79 -0
  66. package/dist/lane-activity.js.map +1 -0
  67. package/dist/memtree-mcp.d.ts +32 -1
  68. package/dist/memtree-mcp.d.ts.map +1 -1
  69. package/dist/memtree-mcp.js +73 -7
  70. package/dist/memtree-mcp.js.map +1 -1
  71. package/dist/memtree.d.ts +10 -0
  72. package/dist/memtree.d.ts.map +1 -1
  73. package/dist/memtree.js +59 -12
  74. package/dist/memtree.js.map +1 -1
  75. package/dist/message-refs.d.ts +81 -0
  76. package/dist/message-refs.d.ts.map +1 -0
  77. package/dist/message-refs.js +378 -0
  78. package/dist/message-refs.js.map +1 -0
  79. package/dist/mitm-ca.d.ts +31 -0
  80. package/dist/mitm-ca.d.ts.map +1 -0
  81. package/dist/mitm-ca.js +236 -0
  82. package/dist/mitm-ca.js.map +1 -0
  83. package/dist/paused-session.d.ts.map +1 -1
  84. package/dist/paused-session.js +9 -2
  85. package/dist/paused-session.js.map +1 -1
  86. package/dist/proxy.d.ts +25 -0
  87. package/dist/proxy.d.ts.map +1 -1
  88. package/dist/proxy.js +168 -22
  89. package/dist/proxy.js.map +1 -1
  90. package/dist/refusal-reason.d.ts +3 -2
  91. package/dist/refusal-reason.d.ts.map +1 -1
  92. package/dist/refusal-reason.js +4 -3
  93. package/dist/refusal-reason.js.map +1 -1
  94. package/dist/reqlog.d.ts +13 -3
  95. package/dist/reqlog.d.ts.map +1 -1
  96. package/dist/reqlog.js +1 -1
  97. package/dist/reqlog.js.map +1 -1
  98. package/dist/request-sizing.d.ts +38 -2
  99. package/dist/request-sizing.d.ts.map +1 -1
  100. package/dist/request-sizing.js +72 -6
  101. package/dist/request-sizing.js.map +1 -1
  102. package/dist/secret-redaction.d.ts +25 -0
  103. package/dist/secret-redaction.d.ts.map +1 -0
  104. package/dist/secret-redaction.js +492 -0
  105. package/dist/secret-redaction.js.map +1 -0
  106. package/dist/statusline-auto.d.ts +15 -0
  107. package/dist/statusline-auto.d.ts.map +1 -0
  108. package/dist/statusline-auto.js +125 -0
  109. package/dist/statusline-auto.js.map +1 -0
  110. package/dist/statusline.d.ts.map +1 -1
  111. package/dist/statusline.js +3 -2
  112. package/dist/statusline.js.map +1 -1
  113. package/dist/utf8-bytes.d.ts +10 -0
  114. package/dist/utf8-bytes.d.ts.map +1 -0
  115. package/dist/utf8-bytes.js +107 -0
  116. package/dist/utf8-bytes.js.map +1 -0
  117. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"image-tokens.js","sourceRoot":"","sources":["../src/image-tokens.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"image-tokens.js","sourceRoot":"","sources":["../src/image-tokens.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * What a session's lanes have been sending, for two one-line notices (2026-11-12,
3
+ * ai-safety-sim session cf649598: a video agent sent 375 requests of 15-27 MB, almost
4
+ * all base64 contact sheets, 97-217 s to first byte on home wifi; when the main lane
5
+ * was then refused, the agent's finished result could not reach the main session):
6
+ *
7
+ * - heavy requests: once per session, when a body sent to Anthropic passes
8
+ * HEAVY_REQUEST_BYTES, say images (or the session's history) make each turn that many MB
9
+ * to upload;
10
+ * - agent activity: whether an agent lane of the session sent a request recently, so a
11
+ * main-lane refusal can say a background agent's result may be waiting.
12
+ */
13
+ /** A request this large is slow to upload on a weak connection (~20 s at 8 Mbit/s). */
14
+ export declare const HEAVY_REQUEST_BYTES = 20000000;
15
+ /** How long after its last request an agent lane still counts as recently active. */
16
+ export declare const RECENT_AGENT_MS: number;
17
+ export interface HeavyRequest {
18
+ bytes: number;
19
+ imageBytes: number;
20
+ }
21
+ export declare class LaneActivity {
22
+ private readonly now;
23
+ private readonly heavy;
24
+ private readonly warned;
25
+ private readonly agentSeen;
26
+ constructor(now?: () => number);
27
+ /** Note a request of the session on `lane` (an agent lane counts as recent activity). */
28
+ seen(sessionId: string | undefined, lane: string | undefined): void;
29
+ /** Note what a request of the session uploaded: its body size and image bytes. */
30
+ sent(sessionId: string | undefined, request: HeavyRequest): void;
31
+ /** The session's largest heavy request when it has not been warned about yet. */
32
+ heavyDue(sessionId: string | undefined): HeavyRequest | undefined;
33
+ /** The warning was shown: never again for this session. */
34
+ markWarned(sessionId: string): void;
35
+ /** Whether an agent lane of the session sent a request within RECENT_AGENT_MS. */
36
+ agentRecent(sessionId: string | undefined): boolean;
37
+ }
38
+ /** "⚠ Images are making each turn ~22 MB to upload: slow on weak connections. ..." */
39
+ export declare function heavyRequestNoticeText(request: HeavyRequest): string;
40
+ /** The line a main-lane refusal adds while an agent lane was recently active. */
41
+ export declare const AGENT_RESULT_WAITING_LINE: string;
42
+ //# sourceMappingURL=lane-activity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lane-activity.d.ts","sourceRoot":"","sources":["../src/lane-activity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,uFAAuF;AACvF,eAAO,MAAM,mBAAmB,WAAa,CAAC;AAC9C,qFAAqF;AACrF,eAAO,MAAM,eAAe,QAAc,CAAC;AAG3C,MAAM,WAAW,YAAY;IAAG,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE;AAEnE,qBAAa,YAAY;IAKX,OAAO,CAAC,QAAQ,CAAC,GAAG;IAJhC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmC;IACzD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA6B;gBAE1B,GAAG,GAAE,MAAM,MAAiB;IAEzD,yFAAyF;IACzF,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAInE,kFAAkF;IAClF,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAOhE,iFAAiF;IACjF,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY,GAAG,SAAS;IAKjE,2DAA2D;IAC3D,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAMnC,kFAAkF;IAClF,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO;CAIpD;AAED,sFAAsF;AACtF,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CASpE;AAED,iFAAiF;AACjF,eAAO,MAAM,yBAAyB,QAEpB,CAAC"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * What a session's lanes have been sending, for two one-line notices (2026-11-12,
3
+ * ai-safety-sim session cf649598: a video agent sent 375 requests of 15-27 MB, almost
4
+ * all base64 contact sheets, 97-217 s to first byte on home wifi; when the main lane
5
+ * was then refused, the agent's finished result could not reach the main session):
6
+ *
7
+ * - heavy requests: once per session, when a body sent to Anthropic passes
8
+ * HEAVY_REQUEST_BYTES, say images (or the session's history) make each turn that many MB
9
+ * to upload;
10
+ * - agent activity: whether an agent lane of the session sent a request recently, so a
11
+ * main-lane refusal can say a background agent's result may be waiting.
12
+ */
13
+ /** A request this large is slow to upload on a weak connection (~20 s at 8 Mbit/s). */
14
+ export const HEAVY_REQUEST_BYTES = 20_000_000;
15
+ /** How long after its last request an agent lane still counts as recently active. */
16
+ export const RECENT_AGENT_MS = 30 * 60_000;
17
+ const MAX_SESSIONS = 256;
18
+ export class LaneActivity {
19
+ now;
20
+ heavy = new Map();
21
+ warned = new Set();
22
+ agentSeen = new Map();
23
+ constructor(now = Date.now) {
24
+ this.now = now;
25
+ }
26
+ /** Note a request of the session on `lane` (an agent lane counts as recent activity). */
27
+ seen(sessionId, lane) {
28
+ if (sessionId !== undefined && lane === "agent")
29
+ bounded(this.agentSeen, sessionId, this.now());
30
+ }
31
+ /** Note what a request of the session uploaded: its body size and image bytes. */
32
+ sent(sessionId, request) {
33
+ if (sessionId === undefined)
34
+ return;
35
+ if (request.bytes < HEAVY_REQUEST_BYTES || this.warned.has(sessionId))
36
+ return;
37
+ const known = this.heavy.get(sessionId);
38
+ if (!known || request.bytes > known.bytes)
39
+ bounded(this.heavy, sessionId, request);
40
+ }
41
+ /** The session's largest heavy request when it has not been warned about yet. */
42
+ heavyDue(sessionId) {
43
+ return sessionId === undefined || this.warned.has(sessionId)
44
+ ? undefined : this.heavy.get(sessionId);
45
+ }
46
+ /** The warning was shown: never again for this session. */
47
+ markWarned(sessionId) {
48
+ this.heavy.delete(sessionId);
49
+ this.warned.add(sessionId);
50
+ if (this.warned.size > MAX_SESSIONS)
51
+ this.warned.delete(this.warned.values().next().value);
52
+ }
53
+ /** Whether an agent lane of the session sent a request within RECENT_AGENT_MS. */
54
+ agentRecent(sessionId) {
55
+ const seen = sessionId === undefined ? undefined : this.agentSeen.get(sessionId);
56
+ return seen !== undefined && this.now() - seen <= RECENT_AGENT_MS;
57
+ }
58
+ }
59
+ /** "⚠ Images are making each turn ~22 MB to upload: slow on weak connections. ..." */
60
+ export function heavyRequestNoticeText(request) {
61
+ const size = `~${Math.round(request.bytes / 1_000_000)} MB`;
62
+ const what = request.imageBytes * 2 >= request.bytes
63
+ ? `Images are making each turn ${size} to upload`
64
+ : `Each turn of this session uploads ${size}`;
65
+ const advice = request.imageBytes * 2 >= request.bytes
66
+ ? " Fewer or smaller images (lower-resolution screenshots or contact sheets) keep turns fast."
67
+ : "";
68
+ return `⚠ ${what}: slow on weak connections.${advice}`;
69
+ }
70
+ /** The line a main-lane refusal adds while an agent lane was recently active. */
71
+ export const AGENT_RESULT_WAITING_LINE = "A background agent's result may be waiting: it arrives once this session's turns go " +
72
+ "through again.";
73
+ function bounded(map, key, value) {
74
+ map.delete(key);
75
+ map.set(key, value);
76
+ if (map.size > MAX_SESSIONS)
77
+ map.delete(map.keys().next().value);
78
+ }
79
+ //# sourceMappingURL=lane-activity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lane-activity.js","sourceRoot":"","sources":["../src/lane-activity.ts"],"names":[],"mappings":"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"}
@@ -352,6 +352,8 @@ export interface MemtreeMcpDeps {
352
352
  sessionId?: string;
353
353
  /** HOST_TOKEN_ENV: set by a ccc whose proxy answers `/memtree/host-session`. */
354
354
  hostToken?: string;
355
+ /** The ccc desktop service's proxy token, sent as x-ccc-proxy-token on every call. */
356
+ token?: string;
355
357
  fetch?: typeof fetch;
356
358
  now?: () => number;
357
359
  }
@@ -362,6 +364,26 @@ export interface MemtreeMcpDeps {
362
364
  * confused with `x-memtree-tools`, the list of configured tools sent on compress calls.
363
365
  */
364
366
  export declare const MEMTREE_TOOL_HEADER = "x-memtree-tool";
367
+ /** The desktop service's loopback routes require its proxy token. */
368
+ export declare const PROXY_TOKEN_HEADER = "x-ccc-proxy-token";
369
+ /**
370
+ * A ccc proxy named by Claude Code's own HTTPS_PROXY
371
+ * (`http://ccc:<token>@127.0.0.1:<port>`, the desktop service or a proxy-mode ccc).
372
+ */
373
+ export declare function cccProxyFromEnv(env: NodeJS.ProcessEnv): {
374
+ url: string;
375
+ token: string;
376
+ } | undefined;
377
+ /**
378
+ * Where the server registered in ~/.claude.json for the
379
+ * Claude desktop app (CCC_MEMTREE_MCP_DESKTOP=1) reads from. The same entry is
380
+ * seen by every Claude Code on this account, so outside a ccc-routed session
381
+ * it is inert: no tools, no instructions.
382
+ */
383
+ export declare function desktopMcpTarget(env: NodeJS.ProcessEnv): {
384
+ proxyUrl: string;
385
+ token?: string;
386
+ } | undefined;
365
387
  export declare function toolHeaders(tool: string, deps: MemtreeMcpDeps): Record<string, string>;
366
388
  /**
367
389
  * Point `deps.sessionId` at the session this server's Claude Code process is on now.
@@ -375,6 +397,13 @@ export declare function toolHeaders(tool: string, deps: MemtreeMcpDeps): Record<
375
397
  * (another process, no session start seen) leaves the id as it is.
376
398
  */
377
399
  export declare function refreshHostSession(deps: MemtreeMcpDeps, hostPid?: number): Promise<void>;
400
+ /**
401
+ * The desktop service can't name a process's session the way terminal ccc's proxy does
402
+ * (refreshHostSession), so read Claude Code's own record of its process (`<config
403
+ * dir>/sessions/<pid>.json`, which follows /clear and /resume; Claude Code 2.1.3xx).
404
+ * Best effort: anything unreadable keeps the current id (review r1 P2).
405
+ */
406
+ export declare function refreshSessionFromClaudePidFile(deps: MemtreeMcpDeps, env: NodeJS.ProcessEnv, hostPid?: number): void;
378
407
  /** What the tree tools read: this session's current tree, or another one by id. */
379
408
  export interface TreeSource {
380
409
  get(tree?: string): Promise<MemtreeIndex>;
@@ -487,7 +516,9 @@ versionNote?: string,
487
516
  /** A note to append once, to whichever tool answer comes first (StaleToolsNotice). */
488
517
  notice?: {
489
518
  next(): string | undefined;
490
- }): Promise<object | undefined>;
519
+ },
520
+ /** Not in a ccc-routed session: no tools, no instructions. */
521
+ inert?: boolean): Promise<object | undefined>;
491
522
  /** Serve MCP over this process's stdin/stdout until stdin closes. */
492
523
  export declare function runMemtreeMcpServer(env?: NodeJS.ProcessEnv): void;
493
524
  //# sourceMappingURL=memtree-mcp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"memtree-mcp.d.ts","sourceRoot":"","sources":["../src/memtree-mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memtree-mcp.d.ts","sourceRoot":"","sources":["../src/memtree-mcp.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,8 @@
35
35
  */
36
36
  import { HOST_TOKEN_ENV, HOST_TOKEN_HEADER } from "./host-session.js";
37
37
  import fs from "node:fs";
38
+ import os from "node:os";
39
+ import path from "node:path";
38
40
  import { fileURLToPath } from "node:url";
39
41
  import { FINDER_SEARCH_DEFAULT_LIMIT, FINDER_SEARCH_MAX_LIMIT, formatSearchResults, searchMode, formatSessions, RECENT_SEARCH_WINDOWS_DAYS, recentSearchArgs, recentSearchFailedNote, recentSearchNote, searchQuery, SESSIONS_DEFAULT_LIMIT, SESSIONS_MAX_LIMIT, sessionsQuery, } from "./memtree-finder.js";
40
42
  import { formatLines, formatNode, formatSearch, formatSearchHits, formatTail, MemtreeIndex, parseNodeAddress, serverSearchHits, serverTailHits, READ_LINES_MAX_CHARS, READ_LINES_MAX_LINES, SEARCH_DEFAULT_LIMIT, SEARCH_MAX_LIMIT, ToolInputError, } from "./memtree-tools.js";
@@ -352,10 +354,47 @@ async function proxyGetJson(fetchImpl, url, headers = {}, timeoutMs = FETCH_TIME
352
354
  * confused with `x-memtree-tools`, the list of configured tools sent on compress calls.
353
355
  */
354
356
  export const MEMTREE_TOOL_HEADER = "x-memtree-tool";
357
+ /** The desktop service's loopback routes require its proxy token. */
358
+ export const PROXY_TOKEN_HEADER = "x-ccc-proxy-token";
359
+ /**
360
+ * A ccc proxy named by Claude Code's own HTTPS_PROXY
361
+ * (`http://ccc:<token>@127.0.0.1:<port>`, the desktop service or a proxy-mode ccc).
362
+ */
363
+ export function cccProxyFromEnv(env) {
364
+ const m = /^http:\/\/ccc:([0-9a-f]{32,128})@127\.0\.0\.1:(\d{1,5})\/?$/.exec(env.HTTPS_PROXY ?? "");
365
+ return m ? { url: `http://127.0.0.1:${m[2]}`, token: m[1] } : undefined;
366
+ }
367
+ /**
368
+ * Where the server registered in ~/.claude.json for the
369
+ * Claude desktop app (CCC_MEMTREE_MCP_DESKTOP=1) reads from. The same entry is
370
+ * seen by every Claude Code on this account, so outside a ccc-routed session
371
+ * it is inert: no tools, no instructions.
372
+ */
373
+ export function desktopMcpTarget(env) {
374
+ // The user turned ccc's memory tools off (as for the --mcp-config server).
375
+ if (env.CCC_MEMTREE_MCP === "0")
376
+ return undefined;
377
+ const viaProxy = cccProxyFromEnv(env);
378
+ // The token goes only to the proxy it belongs to (terminal proxy mode's
379
+ // CCC_MEMTREE_PROXY is that same loopback port).
380
+ if (viaProxy)
381
+ return { proxyUrl: viaProxy.url, token: viaProxy.token };
382
+ if (env.CCC_MEMTREE_PROXY)
383
+ return { proxyUrl: env.CCC_MEMTREE_PROXY };
384
+ // Terminal ccc in base-URL mode: its loopback base URL together with the first-party
385
+ // override it sets (paused-session.ts insideCccSession), not any local API proxy.
386
+ if (env._CLAUDE_CODE_ASSUME_FIRST_PARTY_BASE_URL === "1" &&
387
+ /^http:\/\/127\.0\.0\.1:\d+\/?$/.test(env.ANTHROPIC_BASE_URL ?? "")) {
388
+ return { proxyUrl: env.ANTHROPIC_BASE_URL };
389
+ }
390
+ return undefined;
391
+ }
355
392
  export function toolHeaders(tool, deps) {
356
393
  const headers = { [MEMTREE_TOOL_HEADER]: tool };
357
394
  if (deps.sessionId)
358
395
  headers["x-claude-code-session-id"] = deps.sessionId;
396
+ if (deps.token)
397
+ headers[PROXY_TOKEN_HEADER] = deps.token;
359
398
  return headers;
360
399
  }
361
400
  /** How long a tool call waits to learn its process's session before using its own id. */
@@ -380,6 +419,22 @@ export async function refreshHostSession(deps, hostPid = process.ppid) {
380
419
  if (typeof sessionId === "string" && sessionId)
381
420
  deps.sessionId = sessionId;
382
421
  }
422
+ /**
423
+ * The desktop service can't name a process's session the way terminal ccc's proxy does
424
+ * (refreshHostSession), so read Claude Code's own record of its process (`<config
425
+ * dir>/sessions/<pid>.json`, which follows /clear and /resume; Claude Code 2.1.3xx).
426
+ * Best effort: anything unreadable keeps the current id (review r1 P2).
427
+ */
428
+ export function refreshSessionFromClaudePidFile(deps, env, hostPid = process.ppid) {
429
+ const dir = env.CLAUDE_CONFIG_DIR?.trim() || path.join(os.homedir(), ".claude");
430
+ try {
431
+ const record = JSON.parse(fs.readFileSync(path.join(dir, "sessions", `${hostPid}.json`), "utf8"));
432
+ if (record?.pid === hostPid && typeof record.sessionId === "string" && record.sessionId) {
433
+ deps.sessionId = record.sessionId;
434
+ }
435
+ }
436
+ catch { /* no record: keep the launch id */ }
437
+ }
383
438
  function proxyBase(deps) {
384
439
  const base = deps.proxyUrl?.replace(/\/$/, "");
385
440
  if (!base) {
@@ -574,7 +629,8 @@ export class CurrentTree {
574
629
  const base = proxyBase(this.deps);
575
630
  const sessionId = this.requireSessionId();
576
631
  const query = `?session=${encodeURIComponent(sessionId)}`;
577
- const pointer = await proxyGetJson(this.fetchImpl, `${base}/memtree/current${query}`);
632
+ // The desktop service needs its token here too (it routes by `?session=`).
633
+ const pointer = await proxyGetJson(this.fetchImpl, `${base}/memtree/current${query}`, this.deps.token ? { [PROXY_TOKEN_HEADER]: this.deps.token } : {});
578
634
  if (pointer.status === 404) {
579
635
  throw new ToolInputError("This session has no MemTree yet: nothing has been indexed or compressed so far, so everything is still in your context.");
580
636
  }
@@ -794,7 +850,9 @@ export async function handleMcpMessage(input, tree, finder,
794
850
  /** versionMismatchNote: appended to failed tool calls. */
795
851
  versionNote,
796
852
  /** A note to append once, to whichever tool answer comes first (StaleToolsNotice). */
797
- notice) {
853
+ notice,
854
+ /** Not in a ccc-routed session: no tools, no instructions. */
855
+ inert = false) {
798
856
  if (!isRpcRequest(input)) {
799
857
  return { jsonrpc: "2.0", id: null, error: { code: -32600, message: "Invalid Request" } };
800
858
  }
@@ -813,13 +871,13 @@ notice) {
813
871
  protocolVersion: typeof requested === "string" ? requested : LATEST_PROTOCOL_VERSION,
814
872
  capabilities: { tools: {} },
815
873
  serverInfo: { name: MEMTREE_MCP_SERVER_NAME, version: CLIENT_VERSION },
816
- instructions: MEMTREE_MCP_INSTRUCTIONS,
874
+ ...(inert ? {} : { instructions: MEMTREE_MCP_INSTRUCTIONS }),
817
875
  });
818
876
  }
819
877
  case "ping":
820
878
  return isRequest ? reply({}) : undefined;
821
879
  case "tools/list":
822
- return reply({ tools: MEMTREE_TOOLS });
880
+ return reply({ tools: inert ? [] : MEMTREE_TOOLS });
823
881
  case "tools/call": {
824
882
  const name = message.params?.name;
825
883
  const args = (message.params?.arguments ?? {});
@@ -987,10 +1045,14 @@ async function readLinesTool(args, tree) {
987
1045
  }
988
1046
  /** Serve MCP over this process's stdin/stdout until stdin closes. */
989
1047
  export function runMemtreeMcpServer(env = process.env) {
1048
+ const desktop = env.CCC_MEMTREE_MCP_DESKTOP === "1";
1049
+ const target = desktop ? desktopMcpTarget(env) : undefined;
1050
+ const inert = desktop && !target;
990
1051
  const deps = {
991
- proxyUrl: env.CCC_MEMTREE_PROXY || env.ANTHROPIC_BASE_URL,
1052
+ proxyUrl: desktop ? target?.proxyUrl : env.CCC_MEMTREE_PROXY || env.ANTHROPIC_BASE_URL,
992
1053
  sessionId: env.CLAUDE_CODE_SESSION_ID || undefined,
993
1054
  hostToken: env[HOST_TOKEN_ENV] || undefined,
1055
+ ...(target?.token ? { token: target.token } : {}),
994
1056
  };
995
1057
  const tree = new CurrentTree(deps);
996
1058
  const finder = new SessionFinder(deps);
@@ -1021,9 +1083,13 @@ export function runMemtreeMcpServer(env = process.env) {
1021
1083
  }
1022
1084
  queue = queue.then(async () => {
1023
1085
  // Calls run one at a time, so each reads the session its process is on now.
1024
- if (isToolCall(message))
1086
+ if (isToolCall(message) && !inert) {
1025
1087
  await refreshHostSession(deps);
1026
- const response = await handleMcpMessage(message, tree, finder, versionNote, notice).catch((err) => ({
1088
+ if (desktop)
1089
+ refreshSessionFromClaudePidFile(deps, env);
1090
+ }
1091
+ const response = await handleMcpMessage(message, tree, finder, versionNote, notice, inert)
1092
+ .catch((err) => ({
1027
1093
  jsonrpc: "2.0",
1028
1094
  id: isRpcRequest(message) ? message.id ?? null : null,
1029
1095
  error: { code: -32603, message: String(err) },
@@ -1 +1 @@
1
- {"version":3,"file":"memtree-mcp.js","sourceRoot":"","sources":["../src/memtree-mcp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,EACvB,mBAAmB,EACnB,UAAU,EACV,cAAc,EACd,0BAA0B,EAC1B,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,WAAW,EACX,sBAAsB,EACtB,kBAAkB,EAClB,aAAa,GACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,WAAW,EACX,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,GAEf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,MAAM,CAAC,MAAM,uBAAuB,GAAG,SAAS,CAAC;AACjD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AAErD,iFAAiF;AACjF,MAAM,UAAU,mBAAmB,CACjC,YAAgC,EAChC,aAAqB,cAAc;IAEnC,IAAI,CAAC,YAAY,IAAI,YAAY,KAAK,UAAU;QAAE,OAAO,SAAS,CAAC;IACnE,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACvE,OAAO,gCAAgC,UAAU,8BAA8B,IAAI,wEAAwE,CAAC;AAC9J,CAAC;AACD,uFAAuF;AACvF,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAEvC;;;;;GAKG;AACH,MAAM,OAAO,gBAAgB;IAKR;IACA;IACA;IACA;IAPX,IAAI,GAAG,KAAK,CAAC;IACb,SAAS,GAAG,CAAC,QAAQ,CAAC;IAE9B,YACmB,gBAA0C,gBAAgB,EAC1D,MAAc,cAAc,EAC5B,MAAoB,IAAI,CAAC,GAAG,EAC5B,YAAkB,IAAI,IAAI,EAAE;QAH5B,kBAAa,GAAb,aAAa,CAA6C;QAC1D,QAAG,GAAH,GAAG,CAAyB;QAC5B,QAAG,GAAH,GAAG,CAAyB;QAC5B,cAAS,GAAT,SAAS,CAAmB;IAC5C,CAAC;IAEJ,IAAI;QACF,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,GAAG,uBAAuB;YAAE,OAAO,SAAS,CAAC;QACzF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACvC,IAAI,CAAC,SAAS,IAAI,SAAS,KAAK,IAAI,CAAC,GAAG;YAAE,OAAO,SAAS,CAAC;QAC3D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,OAAO,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7D,CAAC;CACF;AAED,MAAM,UAAU,cAAc,CAAC,SAAiB,EAAE,GAAW,EAAE,SAAe;IAC5E,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;IACnD,OAAO,gCAAgC,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,6DAA6D,CAAC;AAC5J,CAAC;AAED,mGAAmG;AACnG,MAAM,UAAU,gBAAgB;IAC9B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;QAC1G,OAAO,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,2EAA2E;AAC3E,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,QAAQ;IACR,WAAW;IACX,YAAY;IACZ,MAAM;IACN,eAAe;IACf,UAAU;CACF,CAAC;AACX,2DAA2D;AAC3D,MAAM,CAAC,MAAM,YAAY,GAAG,SAAS,CAAC;AACtC,MAAM,uBAAuB,GAAG,YAAY,CAAC;AAC7C,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAChC;;;GAGG;AACH,MAAM,mBAAmB,GAAG,OAAO,CAAC;AACpC,MAAM,wBAAwB,GAAG,MAAM,CAAC;AAExC;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GACnC,iHAAiH;IACjH,sHAAsH;IACtH,oHAAoH;IACpH,+BAA+B;IAC/B,6GAA6G;IAC7G,qGAAqG;IACrG,2GAA2G;IAC3G,oGAAoG;IACpG,sHAAsH;IACtH,6GAA6G;IAC7G,sHAAsH;IACtH,4CAA4C;IAC5C,2GAA2G;IAC3G,uGAAuG;IACvG,uGAAuG;IACvG,sCAAsC;IACtC,iHAAiH;IACjH,mHAAmH;IACnH,+GAA+G;IAC/G,sGAAsG;IACtG,gHAAgH;IAChH,8GAA8G;IAC9G,+GAA+G;IAC/G,uGAAuG;IACvG,4OAA4O;IAC5O,4GAA4G;IAC5G,6GAA6G;IAC7G,kHAAkH;IAClH,+GAA+G;IAC/G,gHAAgH;IAChH,kDAAkD;IAClD,6GAA6G;IAC7G,8CAA8C;IAC9C,+GAA+G;IAC/G,8FAA8F,CAAC;AAEjG,MAAM,SAAS,GAAG,+IAA+I,CAAC;AAElK;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,sBAAsB,EAAE,IAAI,EAAW,CAAC;AAE3E;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAC9B,6FAA6F;IAC7F,+EAA+E,CAAC;AAElF,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B;QACE,IAAI,EAAE,QAAQ;QACd,WAAW,EACT,4GAA4G;YAC5G,mHAAmH;YACnH,wGAAwG;YACxG,qEAAqE;YACrE,2GAA2G;YAC3G,8GAA8G;YAC9G,6JAA6J;YAC7J,0KAA0K;YAC1K,qHAAqH;YACrH,wGAAwG;YACxG,0EAA0E;YAC1E,yEAAyE;YACzE,mBAAmB;QACrB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gGAAgG,EAAE;gBACxI,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,SAAS,+BAA+B,EAAE;gBAC5F,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,+FAA+F,EAAE;gBAChK,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qGAAqG,EAAE;gBAC/I,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qEAAqE,EAAE;gBAC7G,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gEAAgE,EAAE;gBACxG,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gFAAgF,EAAE;gBACzH,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,2BAA2B,aAAa,uBAAuB,0BAA0B,EAAE;aAC5J;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;SACpB;KACF;IACD;QACE,IAAI,EAAE,WAAW;QACjB,WAAW,EACT,mIAAmI;YACnI,mIAAmI;YACnI,yFAAyF;QAC3F,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yCAAyC,EAAE;gBAChF,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0DAA0D,EAAE;gBAC/F,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,SAAS,yBAAyB,EAAE;aACtF;SACF;KACF;IACD;QACE,IAAI,EAAE,YAAY;QAClB,WAAW,EACT,wHAAwH;YACxH,WAAW,oBAAoB,YAAY,oBAAoB,sEAAsE;YACrI,qHAAqH;YACrH,oHAAoH;YACpH,gHAAgH;YAChH,gGAAgG;QAClG,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sFAAsF,EAAE;gBAC7H,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4CAA4C,EAAE;gBACpF,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;gBAC9D,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uBAAuB,EAAE;gBAC7D,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,SAAS,yBAAyB,EAAE;gBAC1G,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,qGAAqG,EAAE;gBAC7I,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,wEAAwE,EAAE;aACjH;SACF;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,WAAW,EACT,gHAAgH;YAChH,sHAAsH;YACtH,gHAAgH;YAChH,wGAAwG;YACxG,0JAA0J;QAC5J,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wGAAwG,EAAE;gBAChJ,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kDAAkD,EAAE;gBAC1F,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wFAAwF,EAAE;gBAClI,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yEAAyE,EAAE;gBAC7G,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gFAAgF,EAAE;gBACzH,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8BAA8B,sBAAsB,aAAa,kBAAkB,IAAI,EAAE;aAChI;SACF;KACF;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,iHAAiH;YACjH,+GAA+G;YAC/G,iHAAiH;YACjH,2GAA2G;YAC3G,8FAA8F;QAChG,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,SAAS,iDAAiD,EAAE;gBACpG,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uFAAuF,EAAE;gBAC/H,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kDAAkD,EAAE;gBAC1F,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iDAAiD,EAAE;gBACzF,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0EAA0E,EAAE;gBACnH,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0CAA0C,uBAAuB,IAAI,EAAE;gBAC7G,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,sDAAsD,EAAE;gBAC9F,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,qEAAqE,EAAE;aACjH;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,WAAW,EACT,iHAAiH;YACjH,6GAA6G;YAC7G,iHAAiH;YACjH,6GAA6G;YAC7G,4FAA4F;QAC9F,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,SAAS,iDAAiD,EAAE;gBACpG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8DAA8D,qBAAqB,aAAa,iBAAiB,IAAI,EAAE;gBAC5J,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mEAAmE,EAAE;gBAC3G,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kDAAkD,EAAE;aAC3F;SACF;KACF;CACF,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;AAkBzD,4EAA4E;AAC5E,MAAM,UAAU,GAAG,sBAAsB,CAAC;AAC1C,yEAAyE;AACzE,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACjC,mFAAmF;AACnF,MAAM,mBAAmB,GAAG,MAAM,CAAC;AACnC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAChC,6EAA6E;AAC7E,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAS7B,sDAAsD;AACtD,KAAK,UAAU,YAAY,CACzB,SAAuB,EACvB,GAAW,EACX,UAAkC,EAAE,EACpC,YAAoB,gBAAgB;IAEpC,IAAI,QAAkB,CAAC;IACvB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE;YAC9B,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,GAAG,OAAO,EAAE;YACnD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC;SACvC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;IACtD,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACnD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,OAAO,MAAM,EAAE,MAAM,KAAK,QAAQ;gBAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QACjE,CAAC;QAAC,MAAM,CAAC;YACP,8BAA8B;QAChC,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,QAAQ,CAAC,MAAM,IAAI,MAAM,EAAE,EAAE,CAAC;IAC5F,CAAC;IACD,IAAI,CAAC;QACH,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;IACvE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC;IAChF,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,gBAAgB,CAAC;AACpD,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,IAAoB;IAC5D,MAAM,OAAO,GAA2B,EAAE,CAAC,mBAAmB,CAAC,EAAE,IAAI,EAAE,CAAC;IACxE,IAAI,IAAI,CAAC,SAAS;QAAE,OAAO,CAAC,0BAA0B,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;IACzE,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,yFAAyF;AACzF,MAAM,uBAAuB,GAAG,KAAK,CAAC;AAEtC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAoB,EAAE,UAAkB,OAAO,CAAC,IAAI;IAEpD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC/C,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS;QAAE,OAAO;IACrC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,EACnD,GAAG,IAAI,kCAAkC,OAAO,EAAE,EAClD,EAAE,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,uBAAuB,CAAC,CAAC;IACpE,MAAM,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAE,MAAM,CAAC,IAAiC,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IAChG,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS;QAAE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;AAC7E,CAAC;AAED,SAAS,SAAS,CAAC,IAAoB;IACrC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC/C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,cAAc,CACtB,oGAAoG,CACrG,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,WAAW,CAAC,IAAa;IAChC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IACzE,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,cAAc,CAAC,mEAAmE,CAAC,CAAC;IAChG,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;AACrB,CAAC;AAkBD;;;GAGG;AACH,MAAM,OAAO,WAAW;IAkBO;IAjBrB,MAAM,CAAuC;IACrD,iFAAiF;IACzE,aAAa,CAAU;IAC/B,8DAA8D;IAC7C,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC3D,8EAA8E;IAC7D,QAAQ,GAAG,IAAI,GAAG,EAAwB,CAAC;IACpD,QAAQ,CAAyB;IACzC,8CAA8C;IAC7B,MAAM,GAAG,IAAI,GAAG,EAAwB,CAAC;IAC1D,sFAAsF;IACrE,YAAY,GAAG,IAAI,OAAO,EAAwB,CAAC;IACpE,oFAAoF;IAC5E,mBAAmB,GAAG,KAAK,CAAC;IACnB,SAAS,CAAe;IACxB,GAAG,CAAe;IAEnC,YAA6B,IAAoB;QAApB,SAAI,GAAJ,IAAI,CAAgB;QAC/C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;QAChD,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;IAClC,CAAC;IAED,GAAG,CAAC,IAAa;QACf,IAAI,KAAyB,CAAC;QAC9B,IAAI,CAAC;YACH,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;QACD,IAAI,KAAK;YAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC,QAAQ,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACnC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE;YAC1B,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO;gBAAE,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,KAAyB,EAAE,IAAa;QAClE,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;YAC7C,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YACjD,IAAI,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACtF,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,MAAM,MAAM,GAAG,MAAM,YAAY,CAC/B,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,YAAY,kBAAkB,CAAC,EAAE,CAAC,WAAW,MAAM,EAAE,EAAE,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAC/G,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACrE,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,OAAO,GAAI,MAAM,CAAC,IAAiC,CAAC,UAAU,CAAC;gBACrE,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,SAAS;oBAAE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;gBACzF,IAAI,KAAK,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBACnC,OAAO,gBAAgB,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;gBAClH,CAAC;gBACD,uEAAuE;YACzE,CAAC;YACD,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC1B,MAAM,IAAI,cAAc,CAAC,2DAA2D,CAAC,CAAC;YACxF,CAAC;YACD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;YACxE,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG;gBAAE,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;YACpF,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,OAAO,YAAY,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAClE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI,CAAC,IAAwB,EAAE,KAAc,EAAE,GAAY,EAAE,IAAc;QAC/E,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5D,IAAI,GAAG,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACtD,IAAI,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,MAAM,YAAY,CAC/B,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,YAAY,kBAAkB,CAAC,EAAE,CAAC,YAAY,KAAK,EAAE,EAAE,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,CACnH,CAAC;QACF,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC1B,OAAO,2HAA2H,CAAC;QACrI,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC1B,MAAM,IAAI,cAAc,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;QAC5F,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,MAAM,IAAI,cAAc,CAAC,kCAAkC,EAAE,KAAK,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;QACnG,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,YAAY,CAAE,MAAM,CAAC,IAAiC,CAAC,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC7G,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,KAAgB,EAAE,IAAwB,EAAE,MAAuB;QAClF,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,MAAM,MAAM,GAAG,MAAM,YAAY,CAC/B,IAAI,CAAC,SAAS,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,kBAAkB,CAAC,EAAE,CAAC,IAAI,KAAK,GAAG,KAAK,EAAE,EAC5F,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,gBAAgB,CAC7F,CAAC;QACF,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG;YAAE,MAAM,IAAI,cAAc,CAAC,2DAA2D,CAAC,CAAC;QACjH,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,KAAK,UAAU,IAAI,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;YAC7F,MAAM,IAAI,cAAc,CAAC,4FAA4F,CAAC,CAAC;QACzH,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;YAC7E,MAAM,IAAI,cAAc,CAAC,GAAG,KAAK,oFAAoF,CAAC,CAAC;QACzH,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,MAAM,IAAI,cAAc,CAAC,GAAG,KAAK,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9G,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,YAAY,CAAE,MAAM,CAAC,IAAiC,CAAC,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC7G,OAAO,MAAM,CAAC,IAAI,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,WAAW;QACvB,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1C,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QAC1F,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QACrE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC;QAC9F,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,EAAE,CAAC;YAAE,IAAI,CAAC,MAAM,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC;QAC/D,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IACK,QAAQ,CAAC,KAAmB;QAClC,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACxC,OAAO,EAAE,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;IAC9C,CAAC;IAED,wFAAwF;IAChF,KAAK,CAAC,SAAS,CAAC,KAA+B,EAAE,IAAiC;QACxF,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,EAAE,CAAC;QACtB,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,wBAAwB,CAAC,CAAC;YACpE,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAEO,gBAAgB;QACtB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;QACtC,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,cAAc,CAAC,wDAAwD,CAAC,CAAC;QACnG,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,4DAA4D;YACrF,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QACjC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,2FAA2F;IAC3F,KAAK,CAAC,SAAS,CAAC,YAAY,GAAG,KAAK;QAClC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,YAAY,kBAAkB,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1D,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,mBAAmB,KAAK,EAAE,CAAC,CAAC;QACtF,IAAI,OAAO,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC3B,MAAM,IAAI,cAAc,CACtB,yHAAyH,CAC1H,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,EAAE;YAAE,MAAM,IAAI,cAAc,CAAC,sCAAsC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC;QAClG,MAAM,OAAO,GAAG,OAAO,CAAC,IAAmB,CAAC;QAC5C,IAAI,OAAO,OAAO,EAAE,EAAE,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YACnD,MAAM,IAAI,cAAc,CAAC,sDAAsD,CAAC,CAAC;QACnF,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,IAAI,cAAc,CAAC,6EAA6E,CAAC,CAAC;QAC1G,CAAC;QACD,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK;gBAC9D,CAAC,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC;YAC/D,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YACpD,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;gBAAE,IAAI,CAAC,MAAM,GAAG,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC;QACrF,CAAC;QACD,OAAO,OAAO,CAAC,EAAE,CAAC;IACpB,CAAC;IAEO,YAAY,CAAC,MAAe,EAAE,QAAgB;QACpD,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,MAAM,IAAI,cAAc,CAAC,qEAAqE,CAAC,CAAC;QAClG,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,EAAU;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YACzB,OAAO,GAAG,CAAC;QACb,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/E,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACvB,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,EAAE,CAAC;YAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,kBAAkB,EAAE,CAAC;YAC7C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAM,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,QAAQ,CAAC,EAAU,EAAE,KAAa,EAAE,SAAkB;QAClE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3C,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,GAAG,GAAG,EAAE,CAAC;YAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACrC,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,SAAS,KAAK,SAAS;oBAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;gBAClF,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,GAAG,GAAG,CAAC,CAAC;QAC7C,CAAC;QACD,yEAAyE;QACzE,+DAA+D;QAC/D,IAAI,OAAO,KAAK,SAAS;YAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,GAAG,wBAAwB,CAAC,CAAC;QAEtF,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,MAAM,YAAY,CAC7B,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,YAAY,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CACjG,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,cAAc,CAAC,6BAA6B,EAAE,KAAK,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QAC1F,MAAM,IAAI,GAAG,IAAI,CAAC,IAAuB,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3D,2EAA2E;YAC3E,MAAM,IAAI,cAAc,CACtB,mBAAmB,KAAK,wBAAwB,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,0BAA0B,CAClH,CAAC;QACJ,CAAC;QACD,IAAI,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7D,MAAM,IAAI,cAAc,CAAC,qEAAqE,CAAC,CAAC;QAClG,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;QACrC,mFAAmF;QACnF,IAAI,IAAI,CAAC,qBAAqB,KAAK,IAAI;YAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,wBAAwB,CAAC,CAAC;QAC7G,IAAI,iBAAiB,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,wBAAwB,CAAC,CAAC;YAClE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACzB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAC7B,8DAA8D;YAC9D,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,kBAAkB,EAAE,CAAC;gBAC/C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAM,CAAC,CAAC;YAC3D,CAAC;YACD,qEAAqE;YACrE,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC;gBACjC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;gBACtD,IAAI,MAAM,KAAK,SAAS;oBAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC9D,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzB,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,gBAAgB,CAAC,WAAmB;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;QAC9C,OAAO,IAAI,cAAc,CACvB,2FAA2F,OAAO,UAAU,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CACxI,CAAC;IACJ,CAAC;CACF;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,KAAmB,EAAE,EAAU;IACxD,IAAI,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACpD,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC;AACpE,CAAC;AAWD,MAAM,OAAO,aAAa;IAGK;IAFZ,SAAS,CAAe;IAEzC,YAA6B,IAAoB;QAApB,SAAI,GAAJ,IAAI,CAAgB;QAC/C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAA6B;QAC9C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,oBAAoB,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAC/E,OAAO,cAAc,CAAC,IAA4C,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACjG,CAAC;IAEgB,YAAY,GAAG,IAAI,GAAG,EAAmD,CAAC;IAE3F,4FAA4F;IAC5F,KAAK,CAAC,WAAW,CAAC,SAAiB;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,KAAK,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,EAAE,GAAG,mBAAmB;YAAE,OAAO,KAAK,CAAC,GAAG,CAAC;QAC3E,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,oBAAoB,EAAE,CAAC;YACrD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAM,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,SAAiB;QAC/C,sFAAsF;QACtF,mEAAmE;QACnE,IAAI,MAA0B,CAAC;QAC/B,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,sBAAsB,EAAE,IAAI,EAAE,EAAE,CAAC;YACzD,MAAM,KAAK,GAAG,aAAa,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,CAAC;YACjF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,oBAAoB,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;YACrE,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,OAAO,SAAS,CAAC;YACjC,MAAM,IAAI,GAAG,MAAM,CAAC,IAA4D,CAAC;YACjF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;gBAAE,OAAO,SAAS,CAAC;YACrD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAA8B,EAAE,UAAU,KAAK,SAAS,CAClB,CAAC;YAC/E,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;gBAClE,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YAChG,CAAC;YACD,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,KAAK,MAAM,EAAE,CAAC;gBAC7F,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;QAC5B,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,IAA6B,EAAE,IAAa;QAC/D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACtF,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,QAAqE,CAAC;QAC1E,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,IAAI,IAAI,0BAA0B,EAAE,CAAC;YAC9C,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;YAC7E,IAAI,CAAC,MAAM;gBAAE,MAAM;YACnB,QAAQ,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjB,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACrF,CAAC;QACD,qFAAqF;QACrF,sDAAsD;QACtD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ;YACpD,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EACzF,QAAQ,CAAC,CAAC;QACV,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAK,IAA2B,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YAC9F,MAAM,IAAI,cAAc,CAAC,mGAAmG,CAAC,CAAC;QAChI,CAAC;QACD,MAAM,IAAI,GAAG,mBAAmB,CAAC,IAAiD,EAAE;YAClF,GAAG,CAAC,QAAQ,EAAE,IAAI,IAAI,IAAI,CAAC,EAAE,IAAI;SAClC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC3B,MAAM,KAAK,GAAG,OAAQ,IAAkC,EAAE,WAAW,KAAK,QAAQ,CAAC;QACnF,OAAO,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAe,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;IAC/F,CAAC;IAEO,GAAG;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IACzC,CAAC;IAEO,KAAK,CAAC,GAAG,CAAC,YAAoB,EAAE,IAAY;QAClD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;IAEO,KAAK,CAAC,YAAoB,EAAE,IAAY;QAC9C,OAAO,YAAY,CACjB,IAAI,CAAC,SAAS,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,YAAY,EAAE,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CACvF,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,MAAiB,EAAE,IAAY;QAC5C,IAAI,MAAM,CAAC,EAAE;YAAE,OAAO,MAAM,CAAC,IAAI,CAAC;QAClC,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC1B,MAAM,IAAI,cAAc,CAAC,GAAG,IAAI,gEAAgE,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC;QACpH,CAAC;QACD,MAAM,IAAI,cAAc,CAAC,GAAG,IAAI,YAAY,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9D,CAAC;CACF;AAUD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,KAAc,EACd,IAAgB,EAChB,MAA4B;AAC5B,0DAA0D;AAC1D,WAAoB;AACpB,sFAAsF;AACtF,MAAuC;IAEvC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,iBAAiB,EAAE,EAAE,CAAC;IAC3F,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC;IACtB,MAAM,SAAS,GAAG,OAAO,CAAC,EAAE,KAAK,SAAS,IAAI,OAAO,CAAC,EAAE,KAAK,IAAI,CAAC;IAClE,MAAM,KAAK,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/E,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,IAAY,EAAE,EAAE,CAAC,CAAC;QAC5C,OAAO,EAAE,KAAK;QACd,EAAE,EAAE,OAAO,CAAC,EAAE,IAAI,IAAI;QACtB,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;KAC/B,CAAC,CAAC;IACH,QAAQ,OAAO,CAAC,MAAM,EAAE,CAAC;QACvB,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,eAAe,CAAC;YAClD,OAAO,KAAK,CAAC;gBACX,eAAe,EAAE,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,uBAAuB;gBACpF,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;gBAC3B,UAAU,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,OAAO,EAAE,cAAc,EAAE;gBACtE,YAAY,EAAE,wBAAwB;aACvC,CAAC,CAAC;QACL,CAAC;QACD,KAAK,MAAM;YACT,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3C,KAAK,YAAY;YACf,OAAO,KAAK,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;QACzC,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC;YAClC,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,IAAI,EAAE,CAA4B,CAAC;YAC1E,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE;gBAClC,MAAM,IAAI,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC;gBAC5B,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAC5C,CAAC,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC9D,OAAO,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACxE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,GAAG,YAAY,gBAAgB;oBAAE,OAAO,IAAI,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBACtE,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjE,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO,KAAK,WAAW,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;gBAClE,OAAO,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;YACvF,CAAC;QACH,CAAC;QACD;YACE,IAAI,CAAC,SAAS;gBAAE,OAAO,SAAS,CAAC,CAAC,0CAA0C;YAC5E,OAAO,IAAI,CAAC,CAAC,KAAK,EAAE,qBAAqB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9E,MAAM,CAAC,GAAG,KAAuB,CAAC;IAClC,OAAO,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;QACjC,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC;QAChD,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,IAAI,CAAC,CAAC,EAAE,KAAK,IAAI,IAAI,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ;YAC9D,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACzG,CAAC;AAED,MAAM,gBAAiB,SAAQ,KAAK;CAAG;AAEvC,KAAK,UAAU,QAAQ,CACrB,IAAY,EACZ,IAA6B,EAC7B,IAAgB,EAChB,MAA4B;IAE5B,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACvD,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QACpF,OAAO,IAAI,OAAO,CAAC,EAAE,iDAAiD,OAAO,CAAC,GAAG,SAAS,IAAI,EAAE,CAAC;IACnG,CAAC;IACD,OAAO,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAChD,CAAC;AAED,0FAA0F;AAC1F,MAAM,YAAY,GAAG,iEAAiE,CAAC;AAEvF;;;;;GAKG;AACH,KAAK,UAAU,aAAa,CAC1B,KAAc,EACd,MAA4B;IAE5B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC;QAC1F,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACxB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACzC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACvC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,IAAY,EACZ,IAA6B,EAC7B,IAAgB,EAChB,MAA4B;IAE5B,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ;YACX,OAAO,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QACxC,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACtC,OAAO,UAAU,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACzE,CAAC;QACD,KAAK,YAAY;YACf,OAAO,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACnC,KAAK,MAAM;YACT,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,cAAc,CAAC,4BAA4B,CAAC,CAAC;YACpE,OAAO,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACnC,KAAK,eAAe,CAAC;QACrB,KAAK,UAAU;YACb,OAAO,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC;YACE,MAAM,IAAI,gBAAgB,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,UAAU,CACvB,IAA6B,EAC7B,IAAgB,EAChB,MAA4B;IAE5B,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QACzD,MAAM,IAAI,cAAc,CAAC,0CAA0C,CAAC,CAAC;IACvE,CAAC;IACD,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC;IAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3D,IAAI,IAAI,KAAK,MAAM,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxE,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC9D,OAAO,YAAY,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACvE,CAAC;IACD,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,cAAc,CAAC,8CAA8C,CAAC,CAAC;IACtF,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,cAAc,CAAC,2CAA2C,CAAC,CAAC;IACtG,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,SAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC5D,OAAO,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAC5C,CAAC;AAED,uFAAuF;AACvF,SAAS,UAAU,CAAC,IAA6B,EAAE,KAAa;IAC9D,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;QACtE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjD,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC;IAC1C,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;AACpE,CAAC;AAED,SAAS,YAAY,CAAC,IAAa;IACjC,OAAO,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AAC/D,CAAC;AAED,iFAAiF;AACjF,KAAK,UAAU,aAAa,CAAC,IAAe,EAAE,IAA6B,EAAE,IAAgB;IAC3F,IAAI,CAAC,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,cAAc,CAAC,GAAG,IAAI,wBAAwB,CAAC,CAAC;IAChF,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvC,IAAI,IAAI,KAAK,eAAe,EAAE,CAAC;QAC7B,OAAO,kBAAkB,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACxG,CAAC;IACD,OAAO,cAAc,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AAC1F,CAAC;AAED,sGAAsG;AACtG,KAAK,UAAU,aAAa,CAAC,IAA6B,EAAE,IAAgB;IAC1E,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,cAAc,CAAC,uDAAuD,CAAC,CAAC;QAClG,MAAM,QAAQ,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACzF,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAChE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,MAAM,IAAI,cAAc,CAAC,uEAAuE,CAAC,CAAC;QACpG,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9D,MAAM,IAAI,cAAc,CAAC,wCAAwC,CAAC,CAAC;QACrE,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;QACtE,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,OAAO,WAAW,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/G,CAAC;IACD,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACjC,MAAM,KAAK,GAAG,GAAG,IAAI,YAAY,CAAC;IAClC,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,cAAc,CAAC,uBAAuB,EAAE,YAAY,KAAK,EAAE,CAAC,CAAC;IAClF,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,cAAc,CACtB,oBAAoB,KAAK,IAAI,EAAE,qCAAqC,KAAK,IAAI,EAAE,8BAA8B,CAC9G,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,CAAE,CAAC;IACpC,MAAM,IAAI,GAAG,CAAC,CAAU,EAAE,QAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACtG,OAAO,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AACxG,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,mBAAmB,CAAC,MAAyB,OAAO,CAAC,GAAG;IACtE,MAAM,IAAI,GAAmB;QAC3B,QAAQ,EAAE,GAAG,CAAC,iBAAiB,IAAI,GAAG,CAAC,kBAAkB;QACzD,SAAS,EAAE,GAAG,CAAC,sBAAsB,IAAI,SAAS;QAClD,SAAS,EAAE,GAAG,CAAC,cAAc,CAAC,IAAI,SAAS;KAC5C,CAAC;IACF,MAAM,IAAI,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,WAAW,GAAG,mBAAmB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAChE,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;IACtC,IAAI,WAAW;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,WAAW,IAAI,CAAC,CAAC;IACvE,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,oEAAoE;IACpE,IAAI,KAAK,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7C,MAAM,IAAI,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACvF,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACnC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;QACzC,MAAM,IAAI,KAAK,CAAC;QAChB,IAAI,OAAe,CAAC;QACpB,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;YAC7C,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;YACnC,IAAI,CAAC,IAAI;gBAAE,SAAS;YACpB,IAAI,OAAgB,CAAC;YACrB,IAAI,CAAC;gBACH,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;gBACpF,SAAS;YACX,CAAC;YACD,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;gBAC5B,4EAA4E;gBAC5E,IAAI,UAAU,CAAC,OAAO,CAAC;oBAAE,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBACxD,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBAClG,OAAO,EAAE,KAAK;oBACd,EAAE,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI;oBACrD,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE;iBAC9C,CAAC,CAAC,CAAC;gBACJ,IAAI,QAAQ;oBAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC/B,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;QAC3B,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,OAAgB;IAClC,OAAO,YAAY,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,YAAY,CAAC;AAClE,CAAC;AAED,SAAS,YAAY;IACnB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7D,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IACxE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,IAAI,YAAY,EAAE;IAAE,mBAAmB,EAAE,CAAC"}
1
+ {"version":3,"file":"memtree-mcp.js","sourceRoot":"","sources":["../src/memtree-mcp.ts"],"names":[],"mappings":"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"}