openclaw-plugin-memory-engine 3.1.1 → 4.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/assets/icon.png +0 -0
- package/dist/admin.d.ts +12 -0
- package/dist/admin.js +217 -0
- package/dist/control-ui/14e2bd207bb33b0189bdfc2712c6eee0f901d10bca0f92cb7773a4bd0f93e10b/index.js +7 -0
- package/dist/control-ui/65180acf7c9a7bc2632152ce986b4162c1efb288bab4ebf6e0d0668edbbe2b75/index.js +7 -0
- package/dist/control-ui.d.ts +2 -0
- package/dist/control-ui.js +315 -0
- package/dist/curator.d.ts +2 -2
- package/dist/entry.js +20 -11
- package/dist/index.d.ts +14 -1
- package/dist/index.js +13 -1
- package/dist/maintenance.d.ts +12 -0
- package/dist/maintenance.js +192 -0
- package/dist/semantic.d.ts +13 -0
- package/dist/semantic.js +91 -0
- package/dist/tools.d.ts +3 -3
- package/dist/tools.js +15 -2
- package/dist/ui-contract.d.ts +135 -0
- package/dist/ui-contract.js +80 -0
- package/dist/ui-feature.d.ts +79 -0
- package/dist/ui-feature.js +110 -0
- package/openclaw.plugin.json +34 -5
- package/package.json +8 -6
package/assets/icon.png
ADDED
|
Binary file
|
package/dist/admin.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Memory Engine TS — admin & maintenance tools (Step 1 parity port).
|
|
3
|
+
* Pure SQL + logic port from the Python MCP server; no Python residue.
|
|
4
|
+
*/
|
|
5
|
+
import { DatabaseSync } from "node:sqlite";
|
|
6
|
+
export interface AdminToolDef {
|
|
7
|
+
name: string;
|
|
8
|
+
description: string;
|
|
9
|
+
parameters: any;
|
|
10
|
+
execute: (a: any) => any;
|
|
11
|
+
}
|
|
12
|
+
export declare function buildAdminDefs(db: DatabaseSync): AdminToolDef[];
|
package/dist/admin.js
ADDED
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
import { Type } from "typebox";
|
|
2
|
+
const T = Type;
|
|
3
|
+
const NL = String.fromCharCode(10);
|
|
4
|
+
export function buildAdminDefs(db) {
|
|
5
|
+
const q = (sql, ...p) => db.prepare(sql).all(...p);
|
|
6
|
+
const q1 = (sql, ...p) => db.prepare(sql).get(...p);
|
|
7
|
+
const x = (sql, ...p) => db.prepare(sql).run(...p);
|
|
8
|
+
return [
|
|
9
|
+
{
|
|
10
|
+
name: "memory_summary",
|
|
11
|
+
description: "Hierarchical 3-level memory summary: L0 global counts, L1 per-domain top atoms, L2 pointer to detail.",
|
|
12
|
+
parameters: T.Object({ domain: T.Optional(T.String()) }),
|
|
13
|
+
execute: (a) => {
|
|
14
|
+
const dom = a.domain || null;
|
|
15
|
+
const l0 = {
|
|
16
|
+
atoms_total: q1("SELECT COUNT(*) n FROM atoms").n,
|
|
17
|
+
atoms_active: q1("SELECT COUNT(*) n FROM atoms WHERE status='active'").n,
|
|
18
|
+
bonds: q1("SELECT COUNT(*) n FROM bonds").n,
|
|
19
|
+
errors: q1("SELECT COUNT(*) n FROM error_memory").n,
|
|
20
|
+
by_type: Object.fromEntries(q("SELECT type k, COUNT(*) n FROM atoms WHERE status='active' GROUP BY type").map((r) => [r.k, r.n])),
|
|
21
|
+
};
|
|
22
|
+
const domains = dom ? [dom] : q("SELECT domain k, COUNT(*) n FROM atoms WHERE status='active' GROUP BY domain ORDER BY n DESC LIMIT 15").map((r) => r.k);
|
|
23
|
+
const l1 = {};
|
|
24
|
+
for (const d of domains) {
|
|
25
|
+
l1[d] = q("SELECT id, title, weight, type FROM atoms WHERE status='active' AND domain=? ORDER BY weight DESC LIMIT 5", d).map((r) => ({ id: r.id, title: r.title, weight: r.weight, type: r.type }));
|
|
26
|
+
}
|
|
27
|
+
return { level0: l0, level1_domains: l1, level2_note: "Use memory_list_atoms / memory_get_atom for full content." };
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
name: "memory_delete_atom",
|
|
32
|
+
description: "Delete an atom: soft (status='deleted', default) or hard (remove row + bonds + versions). Hard delete is irreversible.",
|
|
33
|
+
parameters: T.Object({ id: T.String(), hard: T.Optional(T.Boolean()) }),
|
|
34
|
+
execute: (a) => {
|
|
35
|
+
const row = q1("SELECT id, title FROM atoms WHERE id=?", a.id);
|
|
36
|
+
if (!row)
|
|
37
|
+
return { deleted: false, reason: "not found" };
|
|
38
|
+
if (a.hard) {
|
|
39
|
+
x("DELETE FROM bonds WHERE from_id=? OR to_id=?", a.id, a.id);
|
|
40
|
+
x("DELETE FROM atom_versions WHERE atom_id=?", a.id);
|
|
41
|
+
x("DELETE FROM atom_embeddings WHERE atom_id=?", a.id);
|
|
42
|
+
x("DELETE FROM atoms WHERE id=?", a.id);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
x("UPDATE atoms SET status='deleted', updated_at=unixepoch() WHERE id=?", a.id);
|
|
46
|
+
}
|
|
47
|
+
return { deleted: true, atom_id: a.id, title: row.title, mode: a.hard ? "hard" : "soft" };
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
name: "memory_unlink",
|
|
52
|
+
description: "Remove a bond between two atoms.",
|
|
53
|
+
parameters: T.Object({ from_id: T.String(), to_id: T.String(), relation: T.Optional(T.String()) }),
|
|
54
|
+
execute: (a) => {
|
|
55
|
+
const before = q1("SELECT COUNT(*) n FROM bonds").n;
|
|
56
|
+
if (a.relation)
|
|
57
|
+
x("DELETE FROM bonds WHERE from_id=? AND to_id=? AND relation=?", a.from_id, a.to_id, a.relation);
|
|
58
|
+
else
|
|
59
|
+
x("DELETE FROM bonds WHERE (from_id=? AND to_id=?) OR (from_id=? AND to_id=?)", a.from_id, a.to_id, a.to_id, a.from_id);
|
|
60
|
+
const removed = before - q1("SELECT COUNT(*) n FROM bonds").n;
|
|
61
|
+
return { removed };
|
|
62
|
+
},
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
name: "memory_error_list",
|
|
66
|
+
description: "List recorded error memories.",
|
|
67
|
+
parameters: T.Object({ limit: T.Optional(T.Number()) }),
|
|
68
|
+
execute: (a) => q("SELECT * FROM error_memory ORDER BY rowid DESC LIMIT ?", a.limit ?? 20),
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
name: "memory_list_contradictions",
|
|
72
|
+
description: "List contradiction records (superseded atoms).",
|
|
73
|
+
parameters: T.Object({ limit: T.Optional(T.Number()) }),
|
|
74
|
+
execute: (a) => q("SELECT * FROM memory_contradictions ORDER BY rowid DESC LIMIT ?", a.limit ?? 20),
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
name: "memory_decay_run",
|
|
78
|
+
description: "Decay cycle: reduce weight of atoms not accessed within interval_days by factor (default 0.95). Returns decayed count.",
|
|
79
|
+
parameters: T.Object({ interval_days: T.Optional(T.Number()), factor: T.Optional(T.Number()), dry_run: T.Optional(T.Boolean()) }),
|
|
80
|
+
execute: (a) => {
|
|
81
|
+
const interval = a.interval_days ?? 30;
|
|
82
|
+
const factor = a.factor ?? 0.95;
|
|
83
|
+
const stale = q("SELECT id, weight FROM atoms WHERE status='active' AND unixepoch() - accessed_at > ? AND weight > 0.05", interval * 86400);
|
|
84
|
+
if (!a.dry_run) {
|
|
85
|
+
for (const r of stale)
|
|
86
|
+
x("UPDATE atoms SET weight=round(weight*?,4), updated_at=unixepoch() WHERE id=?", factor, r.id);
|
|
87
|
+
}
|
|
88
|
+
return { decayed: stale.length, interval_days: interval, factor, dry_run: !!a.dry_run };
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
name: "memory_update_domain",
|
|
93
|
+
description: "Bulk update the domain of one or more atoms.",
|
|
94
|
+
parameters: T.Object({ atom_ids: T.Array(T.String()), new_domain: T.String() }),
|
|
95
|
+
execute: (a) => {
|
|
96
|
+
let updated = 0;
|
|
97
|
+
for (const id of a.atom_ids) {
|
|
98
|
+
const r = x("UPDATE atoms SET domain=?, updated_at=unixepoch() WHERE id=? AND status='active'", a.new_domain, id);
|
|
99
|
+
updated += r.changes ?? 0;
|
|
100
|
+
}
|
|
101
|
+
return { updated, new_domain: a.new_domain };
|
|
102
|
+
},
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
name: "memory_classify_memory_tier",
|
|
106
|
+
description: "Infer the 3-tier memory class (episodic/semantic/procedural) for a prospective atom.",
|
|
107
|
+
parameters: T.Object({ type: T.Optional(T.String()), domain: T.Optional(T.String()), meta: T.Optional(T.Any()) }),
|
|
108
|
+
execute: (a) => {
|
|
109
|
+
const t = a.type || "fact";
|
|
110
|
+
if (["log", "event", "session_msg", "session_digest"].includes(t))
|
|
111
|
+
return { tier: "episodic" };
|
|
112
|
+
if (["preference", "procedure"].includes(t))
|
|
113
|
+
return { tier: "procedural" };
|
|
114
|
+
const d = a.domain || "";
|
|
115
|
+
if (d.startsWith("session/") || d.startsWith("daily/"))
|
|
116
|
+
return { tier: "episodic" };
|
|
117
|
+
return { tier: "semantic" };
|
|
118
|
+
},
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
name: "memory_cleanup_sessions",
|
|
122
|
+
description: "Purge expired session_msg/session_digest atoms (TTL passed). Returns purged count.",
|
|
123
|
+
parameters: T.Object({ max_age_days: T.Optional(T.Number()), dry_run: T.Optional(T.Boolean()) }),
|
|
124
|
+
execute: (a) => {
|
|
125
|
+
const maxAge = a.max_age_days ?? 7;
|
|
126
|
+
const expired = q("SELECT id FROM atoms WHERE type IN ('session_msg','session_digest') AND status='active' AND unixepoch() - created_at > ?", maxAge * 86400);
|
|
127
|
+
if (!a.dry_run) {
|
|
128
|
+
for (const r of expired)
|
|
129
|
+
x("UPDATE atoms SET status='expired', updated_at=unixepoch() WHERE id=?", r.id);
|
|
130
|
+
}
|
|
131
|
+
return { purged: expired.length, max_age_days: maxAge, dry_run: !!a.dry_run };
|
|
132
|
+
},
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
name: "memory_find_similar",
|
|
136
|
+
description: "Find atoms similar to a reference atom. Uses embeddings when available, FTS title/body overlap otherwise.",
|
|
137
|
+
parameters: T.Object({ atom_id: T.String(), limit: T.Optional(T.Number()) }),
|
|
138
|
+
execute: (a) => {
|
|
139
|
+
const ref = q1("SELECT * FROM atoms WHERE id=?", a.atom_id);
|
|
140
|
+
if (!ref)
|
|
141
|
+
return { error: "atom not found" };
|
|
142
|
+
const words = String(ref.title || "").toLowerCase().split(/[^a-z0-9_]+/).filter((w) => w.length > 3);
|
|
143
|
+
const out = [];
|
|
144
|
+
const seen = new Set([ref.id]);
|
|
145
|
+
for (const w of words.length ? [words.join(" ")] : []) {
|
|
146
|
+
let hits = [];
|
|
147
|
+
try {
|
|
148
|
+
hits = db.prepare("SELECT a.id, a.title, bm25(atoms_fts) score FROM atoms_fts JOIN atoms a ON atoms_fts.rowid=a.rowid WHERE atoms_fts MATCH ? AND a.status='active' LIMIT 20").all('"' + w + '"');
|
|
149
|
+
}
|
|
150
|
+
catch {
|
|
151
|
+
hits = [];
|
|
152
|
+
}
|
|
153
|
+
for (const h of hits) {
|
|
154
|
+
if (seen.has(h.id))
|
|
155
|
+
continue;
|
|
156
|
+
seen.add(h.id);
|
|
157
|
+
out.push({ id: h.id, title: h.title, score: h.score });
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
return { reference: ref.id, mode: "fts (semantic embeddings: step 2)", similar: out.slice(0, a.limit ?? 5) };
|
|
161
|
+
},
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
name: "memory_merge_atoms",
|
|
165
|
+
description: "Merge duplicate atoms into a primary: move bonds, mark duplicates merged (soft). Returns merge report.",
|
|
166
|
+
parameters: T.Object({ primary_id: T.String(), duplicate_ids: T.Array(T.String()) }),
|
|
167
|
+
execute: (a) => {
|
|
168
|
+
const prim = q1("SELECT id, title FROM atoms WHERE id=?", a.primary_id);
|
|
169
|
+
if (!prim)
|
|
170
|
+
return { error: "primary not found" };
|
|
171
|
+
let bondsMoved = 0;
|
|
172
|
+
for (const dup of a.duplicate_ids) {
|
|
173
|
+
if (dup === a.primary_id)
|
|
174
|
+
continue;
|
|
175
|
+
for (const b of q("SELECT * FROM bonds WHERE from_id=? OR to_id=?", dup, dup)) {
|
|
176
|
+
const nf = b.from_id === dup ? a.primary_id : b.from_id;
|
|
177
|
+
const nt = b.to_id === dup ? a.primary_id : b.to_id;
|
|
178
|
+
if (nf === nt)
|
|
179
|
+
continue;
|
|
180
|
+
x("INSERT OR IGNORE INTO bonds (from_id, to_id, relation, strength, evidence, created_at) VALUES (?,?,?,?,?,unixepoch())", nf, nt, b.relation, b.strength, b.evidence);
|
|
181
|
+
bondsMoved++;
|
|
182
|
+
}
|
|
183
|
+
x("UPDATE atoms SET status='merged', meta=json_set(COALESCE(meta,'{}'), '$.merged_into', ?), updated_at=unixepoch() WHERE id=?", a.primary_id, dup);
|
|
184
|
+
}
|
|
185
|
+
return { primary: a.primary_id, duplicates: a.duplicate_ids.length, bonds_moved: bondsMoved };
|
|
186
|
+
},
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
name: "memory_cleanup_duplicates",
|
|
190
|
+
description: "Detect duplicate durable atoms by normalized title (report only, or auto-merge with auto_apply).",
|
|
191
|
+
parameters: T.Object({ dry_run: T.Optional(T.Boolean()), limit: T.Optional(T.Number()) }),
|
|
192
|
+
execute: (a) => {
|
|
193
|
+
const rows = q("SELECT id, title, type FROM atoms WHERE status='active' AND type IN ('fact','decision','procedure','preference','project') ORDER BY updated_at DESC LIMIT ?", (a.limit ?? 60) * 3);
|
|
194
|
+
const norm = (t) => String(t || "").toLowerCase().replace(/[^a-z0-9 ]/g, " ").replace(/20[0-9][0-9][0-9 ]*/g, " ").split(" ").filter((w) => w.length > 2).slice(0, 6).join(" ");
|
|
195
|
+
const buckets = new Map();
|
|
196
|
+
for (const r of rows) {
|
|
197
|
+
const k = norm(r.title);
|
|
198
|
+
if (k.length < 8)
|
|
199
|
+
continue;
|
|
200
|
+
const b = buckets.get(k) || [];
|
|
201
|
+
b.push(r);
|
|
202
|
+
buckets.set(k, b);
|
|
203
|
+
}
|
|
204
|
+
const dupGroups = [...buckets.entries()].filter(([, v]) => v.length > 1);
|
|
205
|
+
let merged = 0;
|
|
206
|
+
if (!a.dry_run) {
|
|
207
|
+
for (const [, g] of dupGroups) {
|
|
208
|
+
const prim = g.sort((p, d) => (d.updated_at || 0) - (p.updated_at || 0))[0];
|
|
209
|
+
x("UPDATE atoms SET status='merged', meta=json_set(COALESCE(meta,'{}'), '$.merged_into', ?), updated_at=unixepoch() WHERE id=?", prim.id, g.filter((z) => z.id !== prim.id)[0].id);
|
|
210
|
+
merged++;
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
return { duplicate_groups: dupGroups.length, groups: dupGroups.slice(0, 10).map(([, v]) => v.map((r) => r.id)), merged, dry_run: !!a.dry_run };
|
|
214
|
+
},
|
|
215
|
+
},
|
|
216
|
+
];
|
|
217
|
+
}
|
package/dist/control-ui/14e2bd207bb33b0189bdfc2712c6eee0f901d10bca0f92cb7773a4bd0f93e10b/index.js
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
var ed=Object.defineProperty;var Rt=(e,t)=>{for(var n in t)ed(e,n,{get:t[n],enumerable:!0})};function da(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Co(e){if(!e.pluginId.trim()||Object.keys(e.operations).length>64||Object.keys(e.events).length>64)throw new Error("Feature contracts require a plugin id and at most 64 operations and events");for(let t of Object.keys(e.operations))if(!/^[a-z][a-z0-9._-]{0,127}$/u.test(t))throw new Error(`Invalid feature operation id: ${t}`);for(let t of Object.keys(e.events))if(!/^[a-z][a-z0-9_-]{0,127}$/u.test(t))throw new Error(`Invalid feature event id: ${t}`);return e}function Ro(e,t){if(t.pluginId!==e.pluginId)throw new Error("Feature contract must belong to the active browser plugin");let n=async(m,p,l={})=>{t.signal.throwIfAborted();let f=await t.request("plugins.sessionAction",{pluginId:e.pluginId,actionId:m,payload:p,...l});if(t.signal.throwIfAborted(),!da(f)||f.ok!==!0)throw new Error(da(f)&&typeof f.error=="string"?f.error:"Feature operation returned an invalid response");return f.result},r=(m,p)=>t.onEvent(`plugin.${e.pluginId}.${m}`,l=>p(l));return{invoke:n,on:r,watch:(m,p,l)=>{if(e.operations[m]?.kind!=="query")throw new Error("Only feature queries can be watched");let f=!1,v=0,O=!1,_=t.connection.connected,pe=()=>{v+=1,!(f||!t.connection.connected||O)&&(O=!0,queueMicrotask(()=>{if(O=!1,f||!t.connection.connected)return;let Ne=v;n(m,p,{sessionKey:l.sessionKey,agentId:l.agentId}).then(qe=>{!f&&Ne===v&&t.connection.connected&&l.onChange(qe)},qe=>{!f&&Ne===v&&t.connection.connected&&l.onError(qe instanceof Error?qe:new Error(String(qe)))})}))},rt=l.events.map(Ne=>r(Ne,pe));rt.push(t.subscribe(()=>{_!==t.connection.connected&&(_=t.connection.connected,pe())}));let Pe=()=>{f=!0,v+=1;for(let Ne of rt)Ne();t.signal.removeEventListener("abort",Pe)};return t.signal.addEventListener("abort",Pe,{once:!0}),t.signal.aborted?Pe():pe(),Pe}}}var u={};Rt(u,{Assign:()=>ef,Clone:()=>bn,Create:()=>lf,Discard:()=>df,Metrics:()=>Le,Update:()=>ff});var Le={assign:0,create:0,clone:0,discard:0,update:0};var Fe={};Rt(Fe,{Get:()=>Xd,Reset:()=>Qd,Set:()=>Yd});var i={};Rt(i,{CodePointCount:()=>xd,Counted:()=>hd,Entries:()=>Od,EntriesRegExp:()=>kd,Every:()=>gd,EveryAll:()=>$d,GraphemeCount:()=>fd,HasPropertyKey:()=>Ed,IsArray:()=>gn,IsBigInt:()=>yn,IsBoolean:()=>Lo,IsClassInstance:()=>dd,IsConstructor:()=>sd,IsDeepEqual:()=>Ia,IsEqual:()=>j,IsFunction:()=>Ao,IsGreaterEqualThan:()=>Do,IsGreaterThan:()=>ud,IsInteger:()=>fa,IsLessEqualThan:()=>Fo,IsLessThan:()=>cd,IsMaxLength:()=>Id,IsMinLength:()=>yd,IsMultipleOf:()=>ld,IsNull:()=>nr,IsNumber:()=>rr,IsObject:()=>$n,IsObjectNotArray:()=>md,IsString:()=>ar,IsSymbol:()=>pd,IsUndefined:()=>xa,IsUnsafePropertyKey:()=>Uo,IsValueLike:()=>Ko,Keys:()=>tr,ShiftLeft:()=>or,Some:()=>bd,SomeAll:()=>Td,Symbols:()=>Pd,Values:()=>vd});function _t(e,t,n){return e>=t&&e<=n}function td(e){return e===8205}function Mo(e){return _t(e,127462,127487)}function nd(e){return _t(e,65024,65039)}function rd(e){return _t(e,768,879)||_t(e,6832,6911)||_t(e,7616,7679)||_t(e,65056,65071)}function Xn(e){return e>65535?2:1}function wo(e,t){for(;t<e.length;){let n=e.codePointAt(t);if(rd(n)||nd(n))t+=Xn(n);else break}return t}function ad(e,t){let n=e.codePointAt(t),r=t+Xn(n);for(r=wo(e,r);r<e.length-1&&td(e.codePointAt(r));){let o=e.codePointAt(r+1);r+=1+Xn(o),r=wo(e,r)}return Mo(n)&&r<e.length&&Mo(e.codePointAt(r))&&(r+=Xn(e.codePointAt(r))),r}function So(e){let t=0,n=0;for(;n<e.length;)n=ad(e,n),t++;return t}function er(e){let t=0,n=0,r=0;for(;n<e.length;){let o=e.charCodeAt(n++)>>10;t+=+((r<<8|o)!==13879),r=o}return t}function jo(e,t){return e.length<=t||e.length<=t<<1&&er(e)<=t}function qo(e,t){return e.length>=t<<1||e.length>=t&&er(e)>=t}function gn(e){return Array.isArray(e)}function yn(e){return j(typeof e,"bigint")}function Lo(e){return j(typeof e,"boolean")}function sd(e){if(xa(e)||!Ao(e))return!1;let t=Function.prototype.toString.call(e);return!!(/^class\s/.test(t)||/\[native code\]/.test(t))}function Ao(e){return j(typeof e,"function")}function fa(e){return Number.isInteger(e)}function nr(e){return j(e,null)}function rr(e){return Number.isFinite(e)}function md(e){return $n(e)&&!gn(e)}function $n(e){return j(typeof e,"object")&&!nr(e)}function ar(e){return j(typeof e,"string")}function pd(e){return j(typeof e,"symbol")}function xa(e){return j(e,void 0)}function j(e,t){return e===t}function ud(e,t){return e>t}function cd(e,t){return e<t}function Fo(e,t){return e<=t}function Do(e,t){return e>=t}function ld(e,t){if(yn(e)||yn(t))return BigInt(e)%BigInt(t)===0n;let n=1e-10;if(!rr(e)||fa(e)&&1/t%1===0)return!0;let r=e%t;return Math.min(Math.abs(r),Math.abs(r-t),Math.abs(r+t))<n}function dd(e){if(!$n(e))return!1;let t=globalThis.Object.getPrototypeOf(e);return nr(t)?!1:j(typeof t.constructor,"function")&&!(j(t.constructor,globalThis.Object)||j(t.constructor.name,"Object"))}function Ko(e){return yn(e)||Lo(e)||nr(e)||rr(e)||ar(e)||xa(e)}function fd(e){return So(e)}function xd(e){return er(e)}function Id(e,t){return jo(e,t)}function yd(e,t){return qo(e,t)}function gd(e,t,n){return e.every((r,o)=>o<t||n(r,o))}function $d(e,t,n){let r=!0;return e.forEach((o,m)=>{m>=t&&!n(o,m)&&(r=!1)}),r}function bd(e,t){return e.some((n,r)=>t(n,r))}function Td(e,t){let n=!1;return e.forEach((r,o)=>{t(r,o)&&(n=!0)}),n}function hd(e,t){return e.reduce((n,r,o)=>t(r,o)?++n:n,0)}function or(e,t,n){return j(e.length,0)?n():t(e[0],e.slice(1))}function Uo(e){return j(e,"__proto__")||j(e,"constructor")||j(e,"prototype")}function Ed(e,t){return Uo(t)?Object.prototype.hasOwnProperty.call(e,t):t in e}function kd(e){return tr(e).map(t=>[new RegExp(`^${t}$`),e[t]])}function Od(e){return Object.entries(e)}function tr(e){return Object.getOwnPropertyNames(e)}function Pd(e){return Object.getOwnPropertySymbols(e)}function vd(e){return Object.values(e)}function Cd(e,t){if(!$n(t))return!1;let n=tr(e);return j(n.length,tr(t).length)&&n.every(r=>Ia(e[r],t[r]))}function Rd(e,t){return gn(t)&&j(e.length,t.length)&&e.every((n,r)=>Ia(e[r],t[r]))}function Ia(e,t){return gn(e)?Rd(e,t):$n(e)?Cd(e,t):j(e,t)}var dt={};Rt(dt,{IsBigInt64Array:()=>_d,IsBigUint64Array:()=>Bd,IsBoolean:()=>wd,IsDate:()=>Hd,IsFloat32Array:()=>Gd,IsFloat64Array:()=>zd,IsInt16Array:()=>Dd,IsInt32Array:()=>Ud,IsInt8Array:()=>Ld,IsMap:()=>Zd,IsNumber:()=>Sd,IsRegExp:()=>Wd,IsSet:()=>Vd,IsString:()=>jd,IsTypeArray:()=>qd,IsUint16Array:()=>Kd,IsUint32Array:()=>Nd,IsUint8Array:()=>Ad,IsUint8ClampedArray:()=>Fd});function wd(e){return e instanceof Boolean}function Sd(e){return e instanceof Number}function jd(e){return e instanceof String}function qd(e){return globalThis.ArrayBuffer.isView(e)}function Ld(e){return e instanceof globalThis.Int8Array}function Ad(e){return e instanceof globalThis.Uint8Array}function Fd(e){return e instanceof globalThis.Uint8ClampedArray}function Dd(e){return e instanceof globalThis.Int16Array}function Kd(e){return e instanceof globalThis.Uint16Array}function Ud(e){return e instanceof globalThis.Int32Array}function Nd(e){return e instanceof globalThis.Uint32Array}function Gd(e){return e instanceof globalThis.Float32Array}function zd(e){return e instanceof globalThis.Float64Array}function _d(e){return e instanceof globalThis.BigInt64Array}function Bd(e){return e instanceof globalThis.BigUint64Array}function Wd(e){return e instanceof globalThis.RegExp}function Hd(e){return e instanceof globalThis.Date}function Vd(e){return e instanceof globalThis.Set}function Zd(e){return e instanceof globalThis.Map}var Ae={immutableTypes:!1,maxErrors:8,maxParseErrors:1,maxInstantiationCount:128,useAcceleration:!0,exactOptionalPropertyTypes:!1,enumerableKind:!1,correctiveParse:!1,unionPrioritySort:!0};function Qd(){Ae.immutableTypes=!1,Ae.maxErrors=8,Ae.maxParseErrors=1,Ae.maxInstantiationCount=128,Ae.useAcceleration=!0,Ae.exactOptionalPropertyTypes=!1,Ae.enumerableKind=!1,Ae.correctiveParse=!1,Ae.unionPrioritySort=!0}function Yd(e){for(let t of i.Keys(e)){let n=e[t];n!==void 0&&Object.defineProperty(Ae,t,{value:n})}}function Xd(){return Ae}function ft(e){return Fe.Get().immutableTypes?Object.freeze(e):e}function ef(e,t){return Le.assign+=1,ft({...e,...t})}function tf(e){return i.HasPropertyKey(e,"~kind")||i.HasPropertyKey(e,"~unsafe")}function nf(e){let t={};for(let n of i.Keys(e)){if(i.IsUnsafePropertyKey(n))continue;let r=Object.getOwnPropertyDescriptor(e,n);r.value=Mt(r.value),i.IsEqual(r.enumerable,!0)?t[n]=r.value:Object.defineProperty(t,n,r)}return t}function rf(e){let t={};for(let n of i.Keys(e))i.IsUnsafePropertyKey(n)||(t[n]=Mt(e[n]));for(let n of i.Symbols(e))t[n]=Mt(e[n]);return t}function af(e){return i.IsClassInstance(e)?e:tf(e)?nf(e):rf(e)}function of(e){return e.map(t=>Mt(t))}function sf(e){return e.slice()}function mf(e){return new RegExp(e.source,e.flags)}function pf(e){return new Map(Mt([...e.entries()]))}function uf(e){return new Set(Mt([...e.values()]))}function Mt(e){return dt.IsTypeArray(e)?sf(e):dt.IsRegExp(e)?mf(e):dt.IsMap(e)?pf(e):dt.IsSet(e)?uf(e):i.IsArray(e)?of(e):i.IsObject(e)?af(e):e}function bn(e){return Le.clone+=1,Mt(e)}function cf(e,t){for(let n of Object.keys(t))Object.defineProperty(e,n,{configurable:!0,writable:!0,enumerable:!1,value:t[n]});return e}function No(e,t){return{...e,...t}}function lf(e,t,n={}){Le.create+=1;let r=No(t,n),o=Fe.Get().enumerableKind?No(r,e):cf(r,e);return ft(o)}function df(e,t){Le.discard+=1;let n={};for(let r of i.Keys(e)){if(t.includes(r))continue;let o=Object.getOwnPropertyDescriptor(e,r);o.value=bn(o.value),Object.defineProperty(n,r,o)}return ft(n)}function ff(e,t,n){Le.update+=1;let r=Fe.Get(),o=bn(e);for(let m of Object.keys(t))Object.defineProperty(o,m,{configurable:!0,writable:!0,enumerable:r.enumerableKind,value:t[m]});for(let m of Object.keys(n))Object.defineProperty(o,m,{configurable:!0,enumerable:!0,writable:!0,value:n[m]});return ft(o)}function y(e,t){return i.IsObject(e)&&i.HasPropertyKey(e,"~kind")&&i.IsEqual(e["~kind"],t)}function ne(e){return i.IsObject(e)}function $(e,t,n){return u.Create({"~kind":"Deferred"},{type:"deferred",action:e,parameters:t,options:n},{})}function xt(e){return y(e,"Deferred")}function xf(e){return u.Update(e,{"~readonly":!0},{})}function Tn(e,t){return u.Update(xf(e),{},t)}function Go(e,t,n,r){let o=d(e,t,n);return Tn(o,r)}function If(e){return u.Update(e,{"~optional":!0},{})}function hn(e,t){return u.Update(If(e),{},t)}function zo(e,t,n,r){let o=d(e,t,n);return hn(o,r)}function ve(e,t){return u.Create({"~kind":"Array"},{type:"array",items:e},t)}function G(e){return y(e,"Array")}function ir(e){return u.Discard(e,["~kind","type","items"])}function _e(e,t,n={}){return u.Create({"~kind":"Constructor"},{type:"constructor",parameters:e,instanceType:t},n)}function ae(e){return y(e,"Constructor")}function _o(e){return u.Discard(e,["~kind","type","parameters","instanceType"])}function Be(e,t,n={}){return u.Create({"~kind":"Function"},{type:"function",parameters:e,returnType:t},n)}function oe(e){return y(e,"Function")}function Bo(e){return u.Discard(e,["~kind","type","parameters","returnType"])}function it(e,t){return u.Create({"~kind":"Ref"},{$ref:e},t)}function ie(e){return y(e,"Ref")}function It(e,t){return u.Create({"~kind":"Generic"},{type:"generic",parameters:e,expression:t})}function Bt(e){return y(e,"Generic")}function Wt(e){return u.Create({"~kind":"Any"},{},e)}function B(e){return y(e,"Any")}var Wo="(?!)";function D(e){return u.Create({"~kind":"Never"},{not:{}},e)}function De(e){return y(e,"Never")}function We(e,t={}){return $("AddOptional",[e],t)}function wt(e,t={}){return hn(e,t)}function Ho(e){return wt(e)}function xe(e){return ne(e)&&i.HasPropertyKey(e,"~optional")}function Vo(e){return i.Keys(e).filter(t=>!xe(e[t]))}function sr(e){return i.Keys(e)}function mr(e){return i.Values(e)}function T(e,t={}){let n=Vo(e),r=n.length>0?{required:n}:{};return u.Create({"~kind":"Object"},{type:"object",...r,properties:e},t)}function L(e){return y(e,"Object")}function Zo(e){return u.Discard(e,["~kind","type","properties","required"])}function se(e){return u.Create({"~kind":"Unknown"},{},e)}function Q(e){return y(e,"Unknown")}function He(e,t,n){let r=i.Keys(e).reduce((o,m)=>({...o,[m]:u.Update(e[m],{},{$id:m})}),{});return u.Create({"~kind":"Cyclic"},{$defs:r,$ref:t},n)}function ce(e){return y(e,"Cyclic")}function Jo(e){return u.Update(e,{"~unsafe":null},{})}function pr(e){return i.IsObjectNotArray(e)&&i.HasPropertyKey(e,"~unsafe")&&i.IsNull(e["~unsafe"])}var Ve={};Rt(Ve,{Match:()=>yf});function yf(e,t){return t[e.length]?.(...e)??(()=>{throw Error("Invalid Arguments")})()}function En(...e){let[t,n]=Ve.Match(e,{2:(r,o)=>[r,o,o],1:r=>[r,se(),se()]});return u.Create({"~kind":"Infer"},{type:"infer",name:t,extends:n},{})}function Y(e){return y(e,"Infer")}function St(e,t,n,r={}){return u.Create({"~kind":"Dependent"},{if:e,then:t,else:n},r)}function H(e){return y(e,"Dependent")}function Qo(e){return u.Discard(e,["~kind","if","then","else"])}function Yo(e){return i.IsObjectNotArray(e)}function Xo(e){return i.Keys(e).filter(n=>isNaN(n)).reduce((n,r)=>[...n,e[r]],[])}function ei(e){return i.IsString(e)||i.IsNumber(e)}function ti(e,t){let n=Yo(e)?Xo(e):e;return u.Create({"~kind":"Enum"},{enum:n},t)}function le(e){return y(e,"Enum")}function Te(e,t={}){return u.Create({"~kind":"Intersect"},{allOf:e},t)}function M(e){return y(e,"Intersect")}function ni(e){return u.Discard(e,["~kind","allOf"])}function re(){throw new Error("Unreachable")}var ri;(function(e){e[e.Array=0]="Array",e[e.BigInt=1]="BigInt",e[e.Boolean=2]="Boolean",e[e.Date=3]="Date",e[e.Constructor=4]="Constructor",e[e.Function=5]="Function",e[e.Null=6]="Null",e[e.Number=7]="Number",e[e.Object=8]="Object",e[e.RegExp=9]="RegExp",e[e.String=10]="String",e[e.Symbol=11]="Symbol",e[e.TypeArray=12]="TypeArray",e[e.Undefined=13]="Undefined"})(ri||(ri={}));var Oh=BigInt("14695981039346656037"),[Ph,vh]=[BigInt("1099511628211"),BigInt("18446744073709551616")],Ch=Array.from({length:256}).map((e,t)=>BigInt(t)),ai=new Float64Array(1),Rh=new DataView(ai.buffer),Mh=new Uint8Array(ai.buffer);var wh=new TextEncoder;var kn=class{constructor(t,n){this.type=t,this.decode=n}Encode(t){let n=this.type,r=ur(n)?p=>this.decode(n["~codec"].decode(p)):this.decode,o=ur(n)?p=>n["~codec"].encode(t(p)):t,m={decode:r,encode:o};return u.Update(this.type,{"~codec":m},{})}},On=class{constructor(t){this.type=t}Decode(t){return new kn(this.type,t)}};function cr(e){return new On(e)}function ii(e,t){return cr(e).Decode(t).Encode(()=>{throw Error("Encode not implemented")})}function si(e,t){return cr(e).Decode(()=>{throw Error("Decode not implemented")}).Encode(t)}function ur(e){return ne(e)&&i.HasPropertyKey(e,"~codec")&&i.IsObject(e["~codec"])&&i.HasPropertyKey(e["~codec"],"encode")&&i.HasPropertyKey(e["~codec"],"decode")}function mi(e){return Ht(e)}function jt(e){return ne(e)&&i.HasPropertyKey(e,"~immutable")}function Ze(e,t={}){return $("AddReadonly",[e],t)}function qt(e,t={}){return Tn(e,t)}function pi(e){return qt(e)}function Lt(e){return ne(e)&&i.HasPropertyKey(e,"~readonly")}function Tf(e,t){let n=ya(e)?[...e["~refine"],t]:[t];return u.Update(e,{"~refine":n},{})}function ui(...e){let[t,n,r]=Ve.Match(e,{3:(o,m,p)=>[o,m,p],2:(o,m)=>[o,m,()=>"Refine Error"]});return Tf(t,{check:n,error:r})}function hf(e){return i.IsObjectNotArray(e)&&i.HasPropertyKey(e,"check")&&i.HasPropertyKey(e,"error")&&i.IsFunction(e.check)&&i.IsFunction(e.error)}function ya(e){return ne(e)&&i.HasPropertyKey(e,"~refine")&&i.IsArray(e["~refine"])&&i.Every(e["~refine"],0,t=>hf(t))}var ci="-?(?:0|[1-9][0-9]*)n";function Pn(e){return u.Create({"~kind":"BigInt"},{type:"bigint"},e)}function Je(e){return y(e,"BigInt")}function lr(e){return u.Create({"~kind":"Boolean"},{type:"boolean"},e)}function Me(e){return y(e,"Boolean")}function vn(e){return u.Create({"~kind":"Identifier"},{name:e})}function li(e){return y(e,"Identifier")}var dr="-?(?:0|[1-9][0-9]*)";function At(e){return u.Create({"~kind":"Integer"},{type:"integer"},e)}function ye(e){return y(e,"Integer")}var ga=class extends Error{constructor(t){super("Invalid Literal value"),Object.defineProperty(this,"cause",{value:{value:t},writable:!1,configurable:!1,enumerable:!1})}};function Ef(e){return i.IsBigInt(e)?"bigint":i.IsBoolean(e)?"boolean":i.IsNumber(e)?"number":i.IsString(e)?"string":(()=>{throw new ga(e)})()}function w(e,t){return u.Create({"~kind":"Literal"},{type:Ef(e),const:e},t)}function fr(e){return i.IsBigInt(e)||i.IsBoolean(e)||i.IsNumber(e)||i.IsString(e)}function di(e){return A(e)&&i.IsNumber(e.const)}function fi(e){return A(e)&&i.IsString(e.const)}function A(e){return y(e,"Literal")}function Vt(e){return u.Create({"~kind":"Null"},{type:"null"},e)}function Zt(e){return y(e,"Null")}var xr="-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?";function ke(e){return u.Create({"~kind":"Number"},{type:"number"},e)}function ee(e){return y(e,"Number")}function Jt(e){return u.Create({"~kind":"Symbol"},{type:"symbol"},e)}function yt(e){return y(e,"Symbol")}function Ft(...e){let[t,n,r]=Ve.Match(e,{3:(o,m,p)=>[o,m,p],2:(o,m)=>[o,m,m],1:o=>[o,se(),se()]});return u.Create({"~kind":"Parameter"},{name:t,extends:n,equals:r},{})}function xi(e){return y(e,"Parameter")}var Ir=".*";function we(e){return u.Create({"~kind":"String"},{type:"string"},e)}function ge(e){return y(e,"String")}function P(e,t={}){return u.Create({"~kind":"Union"},{anyOf:e},t)}function g(e){return y(e,"Union")}function Ii(e){return u.Discard(e,["~kind","anyOf"])}function Cn(e){let t=yi(e);return i.IsEqual(t.length,2)?t[0]:[]}function kf(e){return!0}function gi(e){return i.ShiftLeft(e,(t,n)=>Of(t)?gi(n):!1,()=>!0)}function $i(e){return i.IsEqual(e.length,0)?!1:gi(e)}function Of(e){return g(e)?$i(e.anyOf):A(e)?kf(e.const):!1}function yr(e){return $i(e)}function gr(e){return u.Create({"~kind":"TemplateLiteral"},{type:"string",pattern:e},{})}function bi(e,t,n=[]){return i.ShiftLeft(e,(r,o)=>bi(o,t,[...n,`${r}${t}`]),()=>n)}function Pf(e,t){return i.IsEqual(e.length,0)?[`${t}`]:bi(e,t)}function Ti(e,t,n=[]){return i.ShiftLeft(t,(r,o)=>Ti(e,o,[...n,...hi(e,r)]),()=>n)}function hi(e,t){return g(t)?Ti(e,t.anyOf):A(t)?Pf(e,t.const):re()}function Ei(e,t){return i.ShiftLeft(t,(n,r)=>Ei(hi(e,n),r),()=>e)}function vf(e){return e.map(t=>w(t))}function Cf(e){let t=Ei([],e),n=vf(t);return P(n)}function Rf(e){return i.IsEqual(e.length,0)?re():i.IsEqual(e.length,1)&&A(e[0])?e[0]:Cf(e)}function $a(e){let t=Cn(e);return i.IsEqual(t.length,0)?we():yr(t)?Rf(t):gr(e)}function ki(e){let t=$a(e);return V(t)?we():t}function he(e,t){let n="object",r={[e]:t};return u.Create({"~kind":"Record"},{type:n,patternProperties:r})}function Oi(e){return he(Ke,e)}function Pi(e){return T({true:e,false:e})}function te(e,t={}){let[n,r,o]=[e,e.length,!1];return u.Create({"~kind":"Tuple"},{type:"array",additionalItems:o,items:n,minItems:r},t)}function K(e){return y(e,"Tuple")}function vi(e){return u.Discard(e,["~kind","type","items","minItems","additionalItems"])}function Mf(e){return u.Discard(e,["~readonly"])}function ba(e,t){return u.Update(Mf(e),{},t)}function Ci(e,t,n,r){let o=d(e,t,n);return ba(o,r)}function Ri(e,t={}){return $("RemoveReadonly",[e],t)}function Mi(e,t={}){return ba(e,t)}function wf(e){return u.Discard(e,["~optional"])}function Ta(e,t){return u.Update(wf(e),{},t)}function wi(e,t,n,r){let o=d(e,t,n);return Ta(o,r)}function Si(e,t={}){return $("RemoveOptional",[e],t)}function $r(e,t={}){return Ta(e,t)}function ha(e){return e.reduceRight((n,r,o)=>({[o]:r,...n}),{})}function ji(e){let t=ha(e.items);return T(t)}function Ea(e){return L(e)||K(e)}function Sf(e,t){return Lt(e)?!!Lt(t):!1}function jf(e,t){return xe(e)?!!xe(t):!1}function qf(e,t){let n=Sf(e,t),r=jf(e,t),o=z([e,t]),m=Mi($r(o));return n&&r?qt(wt(m)):n&&!r?qt(m):!n&&r?wt(m):m}function Lf(e,t,n){return n in e?n in t?qf(e[n],t[n]):e[n]:n in t?t[n]:D()}function Af(e,t){return[...new Set([...i.Keys(e),...i.Keys(t)])].reduce((o,m)=>({...o,[m]:Lf(e,t,m)}),{})}function qi(e){return L(e)?e.properties:K(e)?ha(e.items):{}}function Li(e,t){let n=qi(e),r=qi(t),o=Af(n,r);return T(o)}function Ff(e,t){let n=wn(e,t);return i.IsEqual(n,Mn)?e:i.IsEqual(n,br)||i.IsEqual(n,Rn)?t:D()}function Df(e,t){let n=Ea(e),r=Ea(t);return n&&r?Li(e,t):n&&!r?e:!n&&r?t:Ff(e,t)}function Ai(e,t){return De(e)||B(e)?e:Q(e)||De(t)||B(t)?t:Q(t)?e:Df(e,t)}function Kf(e,t){return g(e)||g(t)}function Uf(e,t){let n=Se(e),r=Se(t);return Kf(n,r)?z([n,r]):Ai(n,r)}function Fi(e,t,n=[]){return i.ShiftLeft(t,(r,o)=>Fi(e,o,[...n,Uf(r,e)]),()=>i.IsEqual(n.length,0)?[e]:n)}function Di(e,t,n=[]){return i.ShiftLeft(e,(r,o)=>Di(o,t,[...n,...Sn([r],t)]),()=>n)}function Sn(e,t=[]){return i.ShiftLeft(e,(n,r)=>g(n)?Sn(r,Di(n.anyOf,t)):Sn(r,Fi(n,t)),()=>t)}function Nf(e,t){let n=de({},e,t);return h.IsExtendsTrueLike(n)?[]:[e]}function Ki(e,t,n=[]){return i.ShiftLeft(e,(r,o)=>Ki(o,t,[...n,...Nf(r,t)]),()=>n)}function Tr(e,t){let n=Se(e),r=g(n)?n.anyOf:[n],o=Ki(r,t);return Ee(o)}function Ue(e,t,n){let r=z([e,t]),o=Tr(n,e);return Ee([r,o])}function $e(e,t=[]){return i.ShiftLeft(e,(n,r)=>$e(r,[...t,w(n)]),()=>Ee(t))}function z(e){let t=Sn(e),n=ka(t);return Ee(n)}function Ie(e){let t=ki(e);return Se(t)}function Ee(e){let t=ka(e);return gt(t)}function Se(e){return H(e)?Ue(e.if,e.then,e.else):le(e)?$e(e.enum):M(e)?z(e.allOf):V(e)?Ie(e.pattern):g(e)?Ee(e.anyOf):e}function gt(e){return i.IsEqual(e.length,1)?e[0]:i.IsEqual(e.length,0)?D():P(e)}function Ui(e,t){let n=$e(e);return $t(n,t)}function Ni(e,t){return he(bt,t)}function Gi(e,t){let n=z(e);return $t(n,t)}function zi(e,t){return i.IsString(e)||i.IsNumber(e)?T({[e]:t}):i.IsEqual(e,!1)?T({false:t}):i.IsEqual(e,!0)?T({true:t}):T({})}function _i(e,t){return he(Qt,t)}function Bi(e,t){return i.HasPropertyKey(e,"pattern")&&(i.IsString(e.pattern)||e.pattern instanceof RegExp)?he(e.pattern.toString(),t):he(Ke,t)}function Wi(e,t){let n=Cn(e);return yr(n)?$t(Ie(e),t):he(e,t)}function Gf(e){return g(e)?Yt(e.anyOf):[e]}function Yt(e,t=[]){return i.ShiftLeft(e,(n,r)=>Yt(r,[...t,...Gf(n)]),()=>t)}function zf(e){return e.some(t=>ge(t)||ee(t)||ye(t))}function _f(e,t){return i.IsEqual(zf(e),!0)?he(Ke,t):void 0}function Bf(e,t){return e.reduce((n,r)=>A(r)&&(i.IsString(r.const)||i.IsNumber(r.const))?{...n,[r.const]:t}:n,{})}function Wf(e,t){let n=Bf(e,t);return T(n)}function Hi(e,t){let n=Yt(e),r=_f(n,t);return ne(r)?r:Wf(n,t)}function $t(e,t){return B(e)?Oi(t):Me(e)?Pi(t):le(e)?Ui(e.enum,t):ye(e)?Ni(e,t):M(e)?Gi(e.allOf,t):A(e)?zi(e.const,t):ee(e)?_i(e,t):g(e)?Hi(e.anyOf,t):ge(e)?Bi(e,t):V(e)?Wi(e.pattern,t):T({})}function Oa(e,t,n){return k([e])?u.Update($t(e,t),{},n):hr(e,t,n)}function Vi(e,t,n,r,o){let m=d(e,t,n),p=d(e,t,r);return Oa(m,p,o)}var bt=`^${dr}$`,Qt=`^${xr}$`,Ke=`^${Ir}$`;function hr(e,t,n={}){return $("Record",[e,t],n)}function Er(e,t,n={}){return Oa(e,t,n)}function Zi(e,t){return he(e,t)}function kr(e){return i.IsEqual(e,Ke)?we():i.IsEqual(e,bt)?At():i.IsEqual(e,Qt)?ke():$a(e)}function je(e){return i.Keys(e.patternProperties)[0]}function Xt(e){let t=je(e);return kr(t)}function be(e){return e.patternProperties[je(e)]}function fe(e){return y(e,"Record")}function Dt(e){return u.Create({"~kind":"Rest"},{type:"rest",items:e},{})}function Tt(e){return y(e,"Rest")}function Or(e){return u.Create({"~kind":"This"},{$ref:"#"},e)}function Pr(e){return y(e,"This")}function en(e){return u.Create({"~kind":"Undefined"},{type:"undefined"},e)}function tn(e){return y(e,"Undefined")}function vr(e){return u.Create({"~kind":"Void"},{type:"void"},e)}function Qe(e){return y(e,"Void")}function Vf(e,t){return i.IsEqual(e,"Array")?ve(t[0]):i.IsEqual(e,"Capitalize")?Rr(t[0]):i.IsEqual(e,"ConstructorParameters")?qr(t[0]):i.IsEqual(e,"Evaluate")?Jm(t[0]):i.IsEqual(e,"Exclude")?Lr(t[0],t[1]):i.IsEqual(e,"Extract")?Ar(t[0],t[1]):i.IsEqual(e,"Index")?An(t[0],t[1]):i.IsEqual(e,"InstanceType")?Fr(t[0]):i.IsEqual(e,"Lowercase")?Mr(t[0]):i.IsEqual(e,"NonNullable")?Dr(t[0]):i.IsEqual(e,"Omit")?Kr(t[0],t[1]):i.IsEqual(e,"Parameters")?Ur(t[0]):i.IsEqual(e,"Partial")?Nr(t[0]):i.IsEqual(e,"Pick")?Gr(t[0],t[1]):i.IsEqual(e,"Readonly")?zr(t[0]):i.IsEqual(e,"KeyOf")?Fn(t[0]):i.IsEqual(e,"Record")?hr(t[0],t[1]):i.IsEqual(e,"Required")?_r(t[0]):i.IsEqual(e,"ReturnType")?Br(t[0]):i.IsEqual(e,"Uncapitalize")?wr(t[0]):i.IsEqual(e,"Uppercase")?Sr(t[0]):Ln(it(e),t)}function Kt(){throw Error("Unreachable")}function es(e,t=[]){return i.ShiftLeft(e,(n,r)=>es(r,[...t,n[1]]),()=>t)}function st(e){return i.IsEqual(e.length,3)?[e[0],...es(e[1])]:[]}function ts(e){return Ft(e[0],e[2],e[4])}function ns(e){return Ft(e[0],e[2],e[2])}function rs(e){return Ft(e[0],se(),e[2])}function as(e){return Ft(e,se(),se())}function os(e){return st(e)}function is(e){return e[1]}function ss(e){return st(e)}function ms(e){return e[1]}function ps(e){return Vf(e[0],e[1])}function us(e){return null}function cs(e){return we()}function ls(e){return ke()}function ds(e){return lr()}function fs(e){return en()}function xs(e){return Vt()}function Is(e){return At()}function ys(e){return Pn()}function gs(e){return se()}function $s(e){return Wt()}function bs(e){return T({})}function Ts(e){return D()}function hs(e){return Jt()}function Es(e){return vr()}function ks(e){return Or()}function Os(e){return w(BigInt(e))}function Ps(e){return w(i.IsEqual(e,"true"))}function vs(e){return w(parseFloat(e))}function Cs(e){return w(e)}function Rs(e){return e[1]}function Ms(e){return w(e)}function ws(e){return i.IsEqual(e.length,3)?[e[0],e[1],...e[2]]:[e[0]]}function Ss(e){return e[1]}function js(e){return Cr(e)}function qs(e){return i.IsEqual(e.length,6)?St(e[1],e[3],e[5]):St(e[1],e[3],se())}function Ls(e){return e.length>0}function As(e){return e.reduce((t,n)=>i.IsEqual(n.length,3)?[...t,[n[1]]]:[...t,[]],[])}function Fs(e){return i.IsEqual(e.length,6)?[e[1],e[3],e[5]]:[]}function Ds(e){return i.IsArray(e)&&i.IsEqual(e.length,3)?e[1]:e}function Ks(e){return i.IsEqual(e.length,2)?e[1]:[]}function Ji(e,t){return t.reduce((n,r)=>{let o=r;return i.IsEqual(o.length,1)?An(n,o[0]):i.IsEqual(o.length,0)?ve(n):Kt()},e)}function Qi(e,t){return i.IsEqual(t.length,3)?jr(e,t[0],t[1],t[2]):e}function Zf(e,t){return i.IsArray(t)&&i.IsEqual(t.length,0)?e:Wr(e,t)}function Us(e){let[t,n,r,o,m]=e;return Zf(Qi(t?Fn(Ji(n,r)):Ji(n,r),o),m)}function Pa(e,t){return i.IsEqual(t.length,3)?(()=>{let[n,r,o]=t,m=Pa(r,o);if(i.IsEqual(n,"&"))return M(m)?Te([e,...m.allOf]):Te([e,m]);if(i.IsEqual(n,"|"))return g(m)?P([e,...m.anyOf]):P([e,m]);Kt()})():e}function Ns(e){let[t,n]=e;return Pa(t,n)}function Gs(e){let[t,n]=e;return Pa(t,n)}function zs(e){return Zm(e[1])}function _s(e){return e[1]}function Bs(e){return It(e[0],e[2])}function Ws(e){return i.IsEqual(e.length,4)?En(e[1],e[3]):i.IsEqual(e.length,2)?En(e[1],se()):Kt()}function Hs(e){return`${e}`}function Vs(e){return ye(e[3])?bt:ee(e[3])?Qt:yt(e[3])?Ke:ge(e[3])?Ke:Kt()}function Zs(e){return e.length>0}function Js(e){return e.length>0}function Qs(e){let[t,n,r,o,m]=e;return{[n]:t&&r?Ze(We(m)):t&&!r?Ze(m):!t&&r?We(m):m}}function Ys(e){return st(e)}function Xs(e){return e.reduce((t,n)=>i.HasPropertyKey(n,bt)||i.HasPropertyKey(n,Qt)||i.HasPropertyKey(n,Ke)?[t[0],u.Assign(t[1],n)]:[u.Assign(t[0],n),t[1]],[{},{}])}function em(e){return Xs(e[1])}function tm(e){let[t,n]=e,r=i.IsEqual(i.Keys(n).length,0)?{}:{patternProperties:n};return T(t,r)}function nm(e){return i.IsEqual(e.length,5)?Ze(We(e[4])):i.IsEqual(e.length,3)?e[2]:i.IsEqual(e.length,4)?i.IsEqual(e[2],"readonly")?Ze(e[3]):We(e[3]):Kt()}function rm(e){if(!i.IsArray(e)||!i.IsEqual(e.length,3))return e;let[t,n,r]=e;return t&&r?Ze(We(n)):t&&!r?Ze(n):!t&&r?We(n):n}function am(e){return i.IsEqual(e.length,2)?Dt(e[1]):i.IsEqual(e.length,1)?e[0]:Kt()}function om(e){return st(e)}function im(e){return te(e[1])}function sm(e){return Ze(We(e[4]))}function mm(e){return Ze(e[3])}function pm(e){return We(e[3])}function um(e){return e[2]}function cm(e){return i.IsEqual(e.length,2)?Dt(e[1]):i.IsEqual(e.length,1)?e[0]:Kt()}function lm(e){return st(e)}function dm(e){return Be(e[1],e[4])}function fm(e){return _e(e[2],e[5])}function Yi(e,t){return i.IsEqual(e,"remove")?Ri(t):i.IsEqual(e,"add")?Ze(t):t}function xm(e){return i.IsEqual(e.length,2)&&i.IsEqual(e[0],"-")?"remove":i.IsEqual(e.length,2)&&i.IsEqual(e[0],"+")||i.IsEqual(e.length,1)?"add":"none"}function Xi(e,t){return i.IsEqual(e,"remove")?Si(t):i.IsEqual(e,"add")?We(t):t}function Im(e){return i.IsEqual(e.length,2)&&i.IsEqual(e[0],"-")?"remove":i.IsEqual(e.length,2)&&i.IsEqual(e[0],"+")||i.IsEqual(e.length,1)?"add":"none"}function ym(e){return i.IsEqual(e.length,2)?[e[1]]:[]}function gm(e){return i.IsArray(e[6])&&i.IsEqual(e[6].length,1)?jn(vn(e[3]),e[5],e[6][0],Yi(e[1],Xi(e[8],e[10]))):jn(vn(e[3]),e[5],it(e[3]),Yi(e[1],Xi(e[8],e[10])))}function $m(e){return it(e)}function bm(e){return BigInt(e)}function Tm(e){return parseFloat(e)}function hm(e){return i.IsEqual(e,"true")}function Em(e){return null}function km(e){return{[e[0]]:e[2]}}function Om(e){return st(e)}function Jf(e){return e.reduce((t,n)=>u.Assign(t,n),{})}function Pm(e){return Jf(e[1])}function vm(e){return st(e)}function Cm(e){return e[1]}function Rm(e){return Pn()}function Mm(e){return we()}function wm(e){return ke()}function Sm(e){return At()}function jm(e){return D()}function qm(e){return w(e)}function Lm(e){return P(e[1])}function Am(e){return e.length===3?[...e[0],...e[2]]:e.length===1?[...e[0]]:[]}function Fm(e){return[e[0],...e[1]]}function Dm(e){return e[1]}function Km(e){return st(e)}function Um(e){return i.IsEqual(e.length,2)?e[1]:[]}function Nm(e){let t=e[2],n=e[3],[r,o]=e[4],m=i.IsEqual(i.Keys(o).length,0)?{}:{patternProperties:o};return{[e[1]]:It(t,qn(n,r,m))}}function Gm(e){let t=e[2],[n,r]=e[3],o=i.IsEqual(i.Keys(r).length,0)?{}:{patternProperties:r};return{[e[1]]:qn(t,n,o)}}function zm(e){return{[e[1]]:It(e[2],e[4])}}function _m(e){return{[e[1]]:e[3]}}function Bm(e){return null}function Wm(e){return st(e)}function Hm(e){return e[1]}function Vm(e){let[t,n]=[e[0],e[1]];return Qm(u.Assign(t,Xs(n)[0]))}function Dn(e){return j(e.length,2)}function R(e,t,n){return Dn(e)?t(e[0],e[1]):n()}function Xf(e,t){return j(t.indexOf(e),0)?[e,t.slice(e.length)]:[]}function W(e,t){for(let n=0;n<e.length;n++){let r=Xf(e[n],t);if(Dn(r))return r}return[]}function va(e,t){return Array.from({length:t-e+1},(n,r)=>String.fromCharCode(e+r))}var Ym=[...va(97,122),...va(65,90)],Ca="0",Ra=va(49,57),nn=[Ca,...Ra],Xm=" ",rn=`
|
|
2
|
+
`;var ht="_",Hr=".",ep="$",Vr="-";var tp="//",np="/*",tx="*/";function rp(e){let t=e.indexOf(tx);return j(t,-1)?"":e.slice(t+2)}function ap(e){let t=e.indexOf(rn);return j(t,-1)?"":e.slice(t)}function nx(e){return e.replace(/^[ \t\r\f\v]+/,"")}function Zr(e){let t=nx(e);return t.startsWith(np)?Zr(rp(t.slice(2))):t.startsWith(tp)?Zr(ap(t.slice(2))):t}function me(e){let t=e.trimStart();return t.startsWith(np)?me(rp(t.slice(2))):t.startsWith(tp)?me(ap(t.slice(2))):t}function Jr(e,t){return R(W([e],t),(n,r)=>[n,r],()=>["",t])}function rx(e,t){return e.includes(t)}function an(e,t,n,r=""){return R(W(e,n),(o,m)=>rx(t,o)?an(e,t,m,r):an(e,t,m,`${r}${o}`),()=>[r,n])}function ax(e){return W(Ra,e)}var ox=[...nn,ht];function ix(e){return an(ox,[ht],e)}function sx(e){return R(W([Ca],e),(t,n)=>[t,n],()=>R(ax(e),(t,n)=>R(ix(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[]))}function Qr(e){return sx(me(e))}function mx(e){return Jr(Vr,e)}function px(e){return R(mx(e),(t,n)=>R(Qr(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function op(e){return px(me(e))}function ux(e){return R(op(e),(t,n)=>R(W(["n"],n),(r,o)=>[`${t}`,o],()=>[]),()=>[])}function Ma(e){return ux(e)}function wa(e,t){return W([e],t)}function c(e,t){return j(e,"")?["",t]:e.startsWith(rn)?wa(e,Zr(t)):e.startsWith(Xm)?wa(e,t):wa(e,me(t))}var ip=[...Ym,ht,ep];function cx(e){return W(ip,e)}var lx=[...ip,...nn];function sp(e,t=""){return R(W(lx,e),(n,r)=>sp(r,`${t}${n}`),()=>[t,e])}function dx(e){return R(cx(e),(t,n)=>R(sp(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Z(e){return dx(me(e))}var fx=[...nn,ht];function xx(e){return Dn(W([Hr],e))}function mp(e){return R(an(fx,[ht],e),(t,n)=>j(t,"")?[]:[t,n],()=>[])}function Ix(e){return R(W([Hr],e),(t,n)=>R(mp(n),(r,o)=>[`0${t}${r}`,o],()=>[]),()=>[])}function yx(e){return R(Qr(e),(t,n)=>R(W([Hr],n),(r,o)=>R(mp(o),(m,p)=>[`${t}${r}${m}`,p],()=>[`${t}`,o]),()=>[`${t}`,n]),()=>[])}function gx(e){return xx(e)?Ix(e):yx(e)}function pp(e){return gx(me(e))}function $x(e){return Jr(Vr,e)}function bx(e){return R($x(e),(t,n)=>R(pp(n),(r,o)=>[`${t}${r}`,o],()=>[]),()=>[])}function Yr(e){return bx(me(e))}function Tx(e){return j(e,"")?[]:[e.slice(0,1),e.slice(1)]}function up(e,t){return or(e,(n,r)=>t.startsWith(n)?!0:up(r,t),()=>!1)}function Et(e,t,n=""){return R(Tx(t),(r,o)=>up(e,t)?[n,t]:Et(e,o,`${n}${r}`),()=>[])}function hx(e,t,n){return R(W([e],n),(r,o)=>R(Et([t],o),(m,p)=>R(W([t],p),(l,f)=>[`${m}`,f],()=>[]),()=>[]),()=>[])}function Ex(e,t,n){return R(W([e],n),(r,o)=>R(Et([rn,t],o),(m,p)=>R(W([t],p),(l,f)=>[`${m}`,f],()=>[]),()=>[]),()=>[])}function cp(e,t,n,r){return n?hx(e,t,me(r)):Ex(e,t,me(r))}function kx(e,t){return W(e,t)}function Ox(e,t){return cp(e,e,!1,t)}function Px(e,t){return R(kx(e,t),(n,r)=>Ox(n,`${n}${r}`),()=>[])}function Xr(e,t){return Px(e,me(t))}function lp(e,t){return R(Et(e,t),(n,r)=>j(n,"")?[]:[n,r],()=>[])}var a=(e,t,n=()=>[])=>e.length===2?t(e):n(),Cx=e=>a(a(Z(e),([t,n])=>a(c("extends",n),([r,o])=>a(q(o),([m,p])=>a(c("=",p),([l,f])=>a(q(f),([v,O])=>[[t,r,m,l,v],O]))))),([t,n])=>[ts(t),n]),Rx=e=>a(a(Z(e),([t,n])=>a(c("extends",n),([r,o])=>a(q(o),([m,p])=>[[t,r,m],p]))),([t,n])=>[ns(t),n]),Mx=e=>a(a(Z(e),([t,n])=>a(c("=",n),([r,o])=>a(q(o),([m,p])=>[[t,r,m],p]))),([t,n])=>[rs(t),n]),wx=e=>a(Z(e),([t,n])=>[as(t),n]),xp=e=>a(a(Cx(e),([t,n])=>[t,n],()=>a(Rx(e),([t,n])=>[t,n],()=>a(Mx(e),([t,n])=>[t,n],()=>a(wx(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),Ip=(e,t=[])=>a(a(c(",",e),([n,r])=>a(xp(r),([o,m])=>[[n,o],m])),([n,r])=>Ip(r,[...t,n]),()=>[t,e]),Sx=e=>a(a(a(xp(e),([t,n])=>a(Ip(n),([r,o])=>a(a(c(",",o),([m,p])=>[[m],p],()=>[[],o]),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[os(t),n]),qa=e=>a(a(c("<",e),([t,n])=>a(Sx(n),([r,o])=>a(c(">",o),([m,p])=>[[t,r,m],p]))),([t,n])=>[is(t),n]),yp=(e,t=[])=>a(a(c(",",e),([n,r])=>a(q(r),([o,m])=>[[n,o],m])),([n,r])=>yp(r,[...t,n]),()=>[t,e]),jx=e=>a(a(a(q(e),([t,n])=>a(yp(n),([r,o])=>a(a(c(",",o),([m,p])=>[[m],p],()=>[[],o]),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[ss(t),n]),qx=e=>a(a(c("<",e),([t,n])=>a(jx(n),([r,o])=>a(c(">",o),([m,p])=>[[t,r,m],p]))),([t,n])=>[ms(t),n]),Lx=e=>a(a(Z(e),([t,n])=>a(qx(n),([r,o])=>[[t,r],o])),([t,n])=>[ps(t),n]),gp=e=>a(a(a(c(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[us(t),n]),$p=e=>a(c("string",e),([t,n])=>[cs(t),n]),bp=e=>a(c("number",e),([t,n])=>[ls(t),n]),Ax=e=>a(c("boolean",e),([t,n])=>[ds(t),n]),Fx=e=>a(c("undefined",e),([t,n])=>[fs(t),n]),Dx=e=>a(c("null",e),([t,n])=>[xs(t),n]),Tp=e=>a(c("integer",e),([t,n])=>[Is(t),n]),Kx=e=>a(c("bigint",e),([t,n])=>[ys(t),n]),Ux=e=>a(c("unknown",e),([t,n])=>[gs(t),n]),Nx=e=>a(c("any",e),([t,n])=>[$s(t),n]),Gx=e=>a(c("object",e),([t,n])=>[bs(t),n]),zx=e=>a(c("never",e),([t,n])=>[Ts(t),n]),hp=e=>a(c("symbol",e),([t,n])=>[hs(t),n]),_x=e=>a(c("void",e),([t,n])=>[Es(t),n]),Bx=e=>a(c("this",e),([t,n])=>[ks(t),n]),Wx=e=>a(a(c("${",e),([t,n])=>a(q(n),([r,o])=>a(c("}",o),([m,p])=>[[t,r,m],p]))),([t,n])=>[Rs(t),n]),Sa=e=>a(Et(["${","`"],e),([t,n])=>[Ms(t),n]),Ep=e=>a(a(a(Sa(e),([t,n])=>a(Wx(n),([r,o])=>a(Ep(o),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>a(a(Sa(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>a(a(Sa(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[ws(t),n]),La=e=>a(a(c("`",e),([t,n])=>a(Ep(n),([r,o])=>a(c("`",o),([m,p])=>[[t,r,m],p]))),([t,n])=>[Ss(t),n]),Hx=e=>a(La(e),([t,n])=>[js(t),n]),Vx=e=>a(a(a(c("if",e),([t,n])=>a(q(n),([r,o])=>a(c("then",o),([m,p])=>a(q(p),([l,f])=>a(c("else",f),([v,O])=>a(q(O),([_,pe])=>[[t,r,m,l,v,_],pe])))))),([t,n])=>[t,n],()=>a(a(c("if",e),([t,n])=>a(q(n),([r,o])=>a(c("then",o),([m,p])=>a(q(p),([l,f])=>[[t,r,m,l],f])))),([t,n])=>[t,n],()=>[])),([t,n])=>[qs(t),n]),Zx=e=>a(Ma(e),([t,n])=>[Os(t),n]),Jx=e=>a(a(c("true",e),([t,n])=>[t,n],()=>a(c("false",e),([t,n])=>[t,n],()=>[])),([t,n])=>[Ps(t),n]),Qx=e=>a(Yr(e),([t,n])=>[vs(t),n]),Yx=e=>a(Xr(["'",'"'],e),([t,n])=>[Cs(t),n]),Xx=e=>a(a(a(c("keyof",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Ls(t),n]),kp=(e,t=[])=>a(a(a(c("[",e),([n,r])=>a(q(r),([o,m])=>a(c("]",m),([p,l])=>[[n,o,p],l]))),([n,r])=>[n,r],()=>a(a(c("[",e),([n,r])=>a(c("]",r),([o,m])=>[[n,o],m])),([n,r])=>[n,r],()=>[])),([n,r])=>kp(r,[...t,n]),()=>[t,e]),eI=e=>a(kp(e),([t,n])=>[As(t),n]),tI=e=>a(a(a(c("extends",e),([t,n])=>a(q(n),([r,o])=>a(c("?",o),([m,p])=>a(q(p),([l,f])=>a(c(":",f),([v,O])=>a(q(O),([_,pe])=>[[t,r,m,l,v,_],pe])))))),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Fs(t),n]),nI=e=>a(a(a(c("(",e),([t,n])=>a(q(n),([r,o])=>a(c(")",o),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>a($p(e),([t,n])=>[t,n],()=>a(bp(e),([t,n])=>[t,n],()=>a(Ax(e),([t,n])=>[t,n],()=>a(Fx(e),([t,n])=>[t,n],()=>a(Dx(e),([t,n])=>[t,n],()=>a(Tp(e),([t,n])=>[t,n],()=>a(Kx(e),([t,n])=>[t,n],()=>a(Ux(e),([t,n])=>[t,n],()=>a(Nx(e),([t,n])=>[t,n],()=>a(Gx(e),([t,n])=>[t,n],()=>a(zx(e),([t,n])=>[t,n],()=>a(hp(e),([t,n])=>[t,n],()=>a(_x(e),([t,n])=>[t,n],()=>a(Bx(e),([t,n])=>[t,n],()=>a(Zx(e),([t,n])=>[t,n],()=>a(Jx(e),([t,n])=>[t,n],()=>a(Qx(e),([t,n])=>[t,n],()=>a(Yx(e),([t,n])=>[t,n],()=>a(Hx(e),([t,n])=>[t,n],()=>a(Vx(e),([t,n])=>[t,n],()=>a(dI(e),([t,n])=>[t,n],()=>a(II(e),([t,n])=>[t,n],()=>a(hI(e),([t,n])=>[t,n],()=>a(TI(e),([t,n])=>[t,n],()=>a(PI(e),([t,n])=>[t,n],()=>a(Lx(e),([t,n])=>[t,n],()=>a(vI(e),([t,n])=>[t,n],()=>[])))))))))))))))))))))))))))),([t,n])=>[Ds(t),n]),rI=e=>a(a(a(c("with",e),([t,n])=>a(Np(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Ks(t),n]),Op=e=>a(a(Xx(e),([t,n])=>a(nI(n),([r,o])=>a(eI(o),([m,p])=>a(tI(p),([l,f])=>a(rI(f),([v,O])=>[[t,r,m,l,v],O]))))),([t,n])=>[Us(t),n]),Pp=e=>a(a(a(c("&",e),([t,n])=>a(Op(n),([r,o])=>a(Pp(o),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),vp=e=>a(a(Op(e),([t,n])=>a(Pp(n),([r,o])=>[[t,r],o])),([t,n])=>[Ns(t),n]),Cp=e=>a(a(a(c("|",e),([t,n])=>a(vp(n),([r,o])=>a(Cp(o),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),ea=e=>a(a(vp(e),([t,n])=>a(Cp(n),([r,o])=>[[t,r],o])),([t,n])=>[Gs(t),n]),aI=e=>a(a(c("readonly",e),([t,n])=>a(ea(n),([r,o])=>[[t,r],o])),([t,n])=>[zs(t),n]),oI=e=>a(a(c("|",e),([t,n])=>a(ea(n),([r,o])=>[[t,r],o])),([t,n])=>[_s(t),n]),iI=e=>a(a(qa(e),([t,n])=>a(c("=",n),([r,o])=>a(q(o),([m,p])=>[[t,r,m],p]))),([t,n])=>[Bs(t),n]),sI=e=>a(a(a(c("infer",e),([t,n])=>a(Z(n),([r,o])=>a(c("extends",o),([m,p])=>a(ea(p),([l,f])=>[[t,r,m,l],f])))),([t,n])=>[t,n],()=>a(a(c("infer",e),([t,n])=>a(Z(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>[])),([t,n])=>[Ws(t),n]),q=e=>a(a(sI(e),([t,n])=>[t,n],()=>a(oI(e),([t,n])=>[t,n],()=>a(aI(e),([t,n])=>[t,n],()=>a(ea(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),mI=e=>a(Yr(e),([t,n])=>[Hs(t),n]),pI=e=>a(Z(e),([t,n])=>[t,n]),uI=e=>a(Xr(["'",'"'],e),([t,n])=>[t,n]),cI=e=>a(a(c("[",e),([t,n])=>a(Z(n),([r,o])=>a(c(":",o),([m,p])=>a(a(Tp(p),([l,f])=>[l,f],()=>a(bp(p),([l,f])=>[l,f],()=>a($p(p),([l,f])=>[l,f],()=>a(hp(p),([l,f])=>[l,f],()=>[])))),([l,f])=>a(c("]",f),([v,O])=>[[t,r,m,l,v],O]))))),([t,n])=>[Vs(t),n]),Rp=e=>a(a(mI(e),([t,n])=>[t,n],()=>a(pI(e),([t,n])=>[t,n],()=>a(uI(e),([t,n])=>[t,n],()=>a(cI(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),Mp=e=>a(a(a(c("readonly",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Zs(t),n]),wp=e=>a(a(a(c("?",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Js(t),n]),Sp=e=>a(a(Mp(e),([t,n])=>a(Rp(n),([r,o])=>a(wp(o),([m,p])=>a(c(":",p),([l,f])=>a(q(f),([v,O])=>[[t,r,m,l,v],O]))))),([t,n])=>[Qs(t),n]),ta=e=>a(a(a(c(",",e),([t,n])=>a(c(`
|
|
3
|
+
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>a(a(c(";",e),([t,n])=>a(c(`
|
|
4
|
+
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>a(a(c(",",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>a(a(c(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>a(a(c(`
|
|
5
|
+
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))))),([t,n])=>[t,n]),jp=(e,t=[])=>a(a(ta(e),([n,r])=>a(Sp(r),([o,m])=>[[n,o],m])),([n,r])=>jp(r,[...t,n]),()=>[t,e]),lI=e=>a(a(a(Sp(e),([t,n])=>a(jp(n),([r,o])=>a(a(ta(o),([m,p])=>[[m],p],()=>[[],o]),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Ys(t),n]),Aa=e=>a(a(c("{",e),([t,n])=>a(lI(n),([r,o])=>a(c("}",o),([m,p])=>[[t,r,m],p]))),([t,n])=>[em(t),n]),dI=e=>a(Aa(e),([t,n])=>[tm(t),n]),fI=e=>a(a(a(Z(e),([t,n])=>a(c("?",n),([r,o])=>a(c(":",o),([m,p])=>a(c("readonly",p),([l,f])=>a(q(f),([v,O])=>[[t,r,m,l,v],O]))))),([t,n])=>[t,n],()=>a(a(Z(e),([t,n])=>a(c(":",n),([r,o])=>a(c("readonly",o),([m,p])=>a(q(p),([l,f])=>[[t,r,m,l],f])))),([t,n])=>[t,n],()=>a(a(Z(e),([t,n])=>a(c("?",n),([r,o])=>a(c(":",o),([m,p])=>a(q(p),([l,f])=>[[t,r,m,l],f])))),([t,n])=>[t,n],()=>a(a(Z(e),([t,n])=>a(c(":",n),([r,o])=>a(q(o),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>[])))),([t,n])=>[nm(t),n]),dp=e=>a(a(fI(e),([t,n])=>[t,n],()=>a(a(Mp(e),([t,n])=>a(q(n),([r,o])=>a(wp(o),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>[])),([t,n])=>[rm(t),n]),qp=e=>a(a(a(c("...",e),([t,n])=>a(dp(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>a(a(dp(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[])),([t,n])=>[am(t),n]),Lp=(e,t=[])=>a(a(c(",",e),([n,r])=>a(qp(r),([o,m])=>[[n,o],m])),([n,r])=>Lp(r,[...t,n]),()=>[t,e]),xI=e=>a(a(a(qp(e),([t,n])=>a(Lp(n),([r,o])=>a(a(c(",",o),([m,p])=>[[m],p],()=>[[],o]),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[om(t),n]),II=e=>a(a(c("[",e),([t,n])=>a(xI(n),([r,o])=>a(c("]",o),([m,p])=>[[t,r,m],p]))),([t,n])=>[im(t),n]),yI=e=>a(a(Z(e),([t,n])=>a(c("?",n),([r,o])=>a(c(":",o),([m,p])=>a(c("readonly",p),([l,f])=>a(q(f),([v,O])=>[[t,r,m,l,v],O]))))),([t,n])=>[sm(t),n]),gI=e=>a(a(Z(e),([t,n])=>a(c(":",n),([r,o])=>a(c("readonly",o),([m,p])=>a(q(p),([l,f])=>[[t,r,m,l],f])))),([t,n])=>[mm(t),n]),$I=e=>a(a(Z(e),([t,n])=>a(c("?",n),([r,o])=>a(c(":",o),([m,p])=>a(q(p),([l,f])=>[[t,r,m,l],f])))),([t,n])=>[pm(t),n]),bI=e=>a(a(Z(e),([t,n])=>a(c(":",n),([r,o])=>a(q(o),([m,p])=>[[t,r,m],p]))),([t,n])=>[um(t),n]),fp=e=>a(a(yI(e),([t,n])=>[t,n],()=>a(gI(e),([t,n])=>[t,n],()=>a($I(e),([t,n])=>[t,n],()=>a(bI(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),Ap=e=>a(a(a(c("...",e),([t,n])=>a(fp(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>a(a(fp(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[])),([t,n])=>[cm(t),n]),Fp=(e,t=[])=>a(a(c(",",e),([n,r])=>a(Ap(r),([o,m])=>[[n,o],m])),([n,r])=>Fp(r,[...t,n]),()=>[t,e]),Dp=e=>a(a(a(Ap(e),([t,n])=>a(Fp(n),([r,o])=>a(a(c(",",o),([m,p])=>[[m],p],()=>[[],o]),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[lm(t),n]),TI=e=>a(a(c("(",e),([t,n])=>a(Dp(n),([r,o])=>a(c(")",o),([m,p])=>a(c("=>",p),([l,f])=>a(q(f),([v,O])=>[[t,r,m,l,v],O]))))),([t,n])=>[dm(t),n]),hI=e=>a(a(c("new",e),([t,n])=>a(c("(",n),([r,o])=>a(Dp(o),([m,p])=>a(c(")",p),([l,f])=>a(c("=>",f),([v,O])=>a(q(O),([_,pe])=>[[t,r,m,l,v,_],pe])))))),([t,n])=>[fm(t),n]),EI=e=>a(a(a(c("+",e),([t,n])=>a(c("readonly",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>a(a(c("-",e),([t,n])=>a(c("readonly",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>a(a(c("readonly",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])))),([t,n])=>[xm(t),n]),kI=e=>a(a(a(c("+",e),([t,n])=>a(c("?",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>a(a(c("-",e),([t,n])=>a(c("?",n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>a(a(c("?",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])))),([t,n])=>[Im(t),n]),OI=e=>a(a(a(c("as",e),([t,n])=>a(q(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[ym(t),n]),PI=e=>a(a(c("{",e),([t,n])=>a(EI(n),([r,o])=>a(c("[",o),([m,p])=>a(Z(p),([l,f])=>a(c("in",f),([v,O])=>a(q(O),([_,pe])=>a(OI(pe),([rt,Pe])=>a(c("]",Pe),([Ne,qe])=>a(kI(qe),([pt,ut])=>a(c(":",ut),([Pt,Ge])=>a(q(Ge),([at,ct])=>a(gp(ct),([Yn,la])=>a(c("}",la),([dn,lt])=>[[t,r,m,l,v,_,rt,Ne,pt,Pt,at,Yn,dn],lt]))))))))))))),([t,n])=>[gm(t),n]),vI=e=>a(Z(e),([t,n])=>[$m(t),n]),CI=e=>a(Ma(e),([t,n])=>[bm(t),n]),RI=e=>a(Yr(e),([t,n])=>[Tm(t),n]),MI=e=>a(a(c("true",e),([t,n])=>[t,n],()=>a(c("false",e),([t,n])=>[t,n],()=>[])),([t,n])=>[hm(t),n]),wI=e=>a(Xr(['"',"'"],e),([t,n])=>[t,n]),SI=e=>a(c("null",e),([t,n])=>[Em(t),n]),jI=e=>a(c("undefined",e),([t,n])=>[void 0,n]),Kp=e=>a(a(Rp(e),([t,n])=>a(c(":",n),([r,o])=>a(Fa(o),([m,p])=>[[t,r,m],p]))),([t,n])=>[km(t),n]),Up=(e,t=[])=>a(a(ta(e),([n,r])=>a(Kp(r),([o,m])=>[[n,o],m])),([n,r])=>Up(r,[...t,n]),()=>[t,e]),qI=e=>a(a(a(Kp(e),([t,n])=>a(Up(n),([r,o])=>a(a(ta(o),([m,p])=>[[m],p],()=>[[],o]),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Om(t),n]),Np=e=>a(a(c("{",e),([t,n])=>a(qI(n),([r,o])=>a(c("}",o),([m,p])=>[[t,r,m],p]))),([t,n])=>[Pm(t),n]),Gp=(e,t=[])=>a(a(c(",",e),([n,r])=>a(Fa(r),([o,m])=>[[n,o],m])),([n,r])=>Gp(r,[...t,n]),()=>[t,e]),LI=e=>a(a(a(Fa(e),([t,n])=>a(Gp(n),([r,o])=>a(a(c(",",o),([m,p])=>[[m],p],()=>[[],o]),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[vm(t),n]),AI=e=>a(a(c("[",e),([t,n])=>a(LI(n),([r,o])=>a(c("]",o),([m,p])=>[[t,r,m],p]))),([t,n])=>[Cm(t),n]),Fa=e=>a(a(CI(e),([t,n])=>[t,n],()=>a(RI(e),([t,n])=>[t,n],()=>a(MI(e),([t,n])=>[t,n],()=>a(wI(e),([t,n])=>[t,n],()=>a(SI(e),([t,n])=>[t,n],()=>a(jI(e),([t,n])=>[t,n],()=>a(Np(e),([t,n])=>[t,n],()=>a(AI(e),([t,n])=>[t,n],()=>[])))))))),([t,n])=>[t,n]),FI=e=>a(c("-?(?:0|[1-9][0-9]*)n",e),([t,n])=>[Rm(t),n]),DI=e=>a(c(".*",e),([t,n])=>[Mm(t),n]),KI=e=>a(c("-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?",e),([t,n])=>[wm(t),n]),UI=e=>a(c("-?(?:0|[1-9][0-9]*)",e),([t,n])=>[Sm(t),n]),NI=e=>a(c("(?!)",e),([t,n])=>[jm(t),n]),GI=e=>a(lp(["-?(?:0|[1-9][0-9]*)n",".*","-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?","-?(?:0|[1-9][0-9]*)","(?!)","(",")","$","|"],e),([t,n])=>[qm(t),n]),zI=e=>a(a(FI(e),([t,n])=>[t,n],()=>a(DI(e),([t,n])=>[t,n],()=>a(KI(e),([t,n])=>[t,n],()=>a(UI(e),([t,n])=>[t,n],()=>a(NI(e),([t,n])=>[t,n],()=>a(_I(e),([t,n])=>[t,n],()=>a(GI(e),([t,n])=>[t,n],()=>[]))))))),([t,n])=>[t,n]),_I=e=>a(a(c("(",e),([t,n])=>a(Da(n),([r,o])=>a(c(")",o),([m,p])=>[[t,r,m],p]))),([t,n])=>[Lm(t),n]),zp=e=>a(a(a(ja(e),([t,n])=>a(c("|",n),([r,o])=>a(zp(o),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>a(a(ja(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[]))),([t,n])=>[Am(t),n]),ja=e=>a(a(zI(e),([t,n])=>a(Da(n),([r,o])=>[[t,r],o])),([t,n])=>[Fm(t),n]),Da=e=>a(a(zp(e),([t,n])=>[t,n],()=>a(ja(e),([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),yi=e=>a(a(c("^",e),([t,n])=>a(Da(n),([r,o])=>a(c("$",o),([m,p])=>[[t,r,m],p]))),([t,n])=>[Dm(t),n]),_p=(e,t=[])=>a(a(c(",",e),([n,r])=>a(q(r),([o,m])=>[[n,o],m])),([n,r])=>_p(r,[...t,n]),()=>[t,e]),BI=e=>a(a(a(q(e),([t,n])=>a(_p(n),([r,o])=>a(a(c(",",o),([m,p])=>[[m],p],()=>[[],o]),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Km(t),n]),Bp=e=>a(a(a(c("extends",e),([t,n])=>a(BI(n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Um(t),n]),WI=e=>a(a(c("interface",e),([t,n])=>a(Z(n),([r,o])=>a(qa(o),([m,p])=>a(Bp(p),([l,f])=>a(Aa(f),([v,O])=>[[t,r,m,l,v],O]))))),([t,n])=>[Nm(t),n]),HI=e=>a(a(c("interface",e),([t,n])=>a(Z(n),([r,o])=>a(Bp(o),([m,p])=>a(Aa(p),([l,f])=>[[t,r,m,l],f])))),([t,n])=>[Gm(t),n]),VI=e=>a(a(c("type",e),([t,n])=>a(Z(n),([r,o])=>a(qa(o),([m,p])=>a(c("=",p),([l,f])=>a(q(f),([v,O])=>[[t,r,m,l,v],O]))))),([t,n])=>[zm(t),n]),ZI=e=>a(a(c("type",e),([t,n])=>a(Z(n),([r,o])=>a(c("=",o),([m,p])=>a(q(p),([l,f])=>[[t,r,m,l],f])))),([t,n])=>[_m(t),n]),JI=e=>a(a(a(c("export",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Bm(t),n]),Wp=e=>a(a(a(c(";",e),([t,n])=>a(c(`
|
|
6
|
+
`,n),([r,o])=>[[t,r],o])),([t,n])=>[t,n],()=>a(a(c(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>a(a(c(`
|
|
7
|
+
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n]),Hp=(e,t=[])=>a(a(Wp(e),([n,r])=>a(Ka(r),([o,m])=>[[n,o],m])),([n,r])=>Hp(r,[...t,n]),()=>[t,e]),QI=e=>a(a(a(Ka(e),([t,n])=>a(Hp(n),([r,o])=>a(a(Wp(o),([m,p])=>[[m],p],()=>[[],o]),([m,p])=>[[t,r,m],p]))),([t,n])=>[t,n],()=>a([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Wm(t),n]),Ka=e=>a(a(JI(e),([t,n])=>a(a(WI(n),([r,o])=>[r,o],()=>a(HI(n),([r,o])=>[r,o],()=>a(VI(n),([r,o])=>[r,o],()=>a(ZI(n),([r,o])=>[r,o],()=>[])))),([r,o])=>a(gp(o),([m,p])=>[[t,r,m],p]))),([t,n])=>[Hm(t),n]),YI=e=>a(a(Ka(e),([t,n])=>a(QI(n),([r,o])=>[[t,r],o])),([t,n])=>[Vm(t),n]),Vp=e=>a(a(YI(e),([t,n])=>[t,n],()=>a(iI(e),([t,n])=>[t,n],()=>a(q(e),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n]);function Zp(e){let t=La(`\`${e}\``);return i.IsEqual(t.length,2)?t[0]:re()}function ey(e){return e.join("|")}function ty(e){return e.slice(1,e.length-1)}function ny(e,t,n){return kt(t,`${n}${e}`)}function ry(e,t){return kt(e,`${t}${ci}`)}function ay(e,t){return kt(e,`${t}${dr}`)}function oy(e,t){return kt(e,`${t}${xr}`)}function iy(e,t){return Kn(P([w("false"),w("true")]),e,t)}function sy(e,t){return kt(e,`${t}${Ir}`)}function my(e,t,n){return kt(t,`${n}${ty(e)}`)}function py(e,t,n){let r=Un(e,{});return Kn(r,t,n)}function uy(e,t,n){let r=$e(e);return Kn(r,t,n)}function Jp(e,t,n,r=[]){return i.ShiftLeft(e,(o,m)=>Jp(m,t,n,[...r,Kn(o,[],"")]),()=>kt(t,`${n}(${ey(r)})`))}function Kn(e,t,n){return le(e)?uy(e.enum,t,n):ye(e)?ay(t,n):A(e)?ny(e.const,t,n):Je(e)?ry(t,n):Me(e)?iy(t,n):ee(e)?oy(t,n):ge(e)?sy(t,n):V(e)?my(e.pattern,t,n):Yp(e)?py(e.parameters[0],t,n):g(e)?Jp(e.anyOf,t,n):Wo}function kt(e,t){return i.ShiftLeft(e,(n,r)=>Kn(n,r,t),()=>t)}function cy(e){return`^${kt(e,"")}$`}function Qp(e){let t=cy(e);return gr(t)}function Un(e,t){return k(e)?u.Update(Qp(e),{},t):Cr(e,t)}function Xp(e,t,n,r){let o=Ce(e,t,n);return Un(o,r)}function Cr(e,t={}){return $("TemplateLiteral",[e],t)}function Yp(e){return ne(e)&&i.HasPropertyKey(e,"action")&&i.IsEqual(e.action,"TemplateLiteral")}function eu(e){return Un(e,{})}function ly(e){let t=Zp(e);return eu(t)}function tu(e,t={}){let n=i.IsString(e)?ly(e):eu(e);return u.Update(n,{},t)}function V(e){return y(e,"TemplateLiteral")}var h={};Rt(h,{ExtendsFalse:()=>E,ExtendsTrue:()=>I,ExtendsUnion:()=>Ua,IsExtendsFalse:()=>dy,IsExtendsTrue:()=>ru,IsExtendsTrueLike:()=>Ye,IsExtendsUnion:()=>nu,Match:()=>J});function Ua(e){return u.Create({"~kind":"ExtendsUnion"},{inferred:e})}function nu(e){return i.IsObject(e)&&i.HasPropertyKey(e,"~kind")&&i.HasPropertyKey(e,"inferred")&&i.IsEqual(e["~kind"],"ExtendsUnion")&&i.IsObject(e.inferred)}function I(e){return u.Create({"~kind":"ExtendsTrue"},{inferred:e})}function ru(e){return i.IsObject(e)&&i.HasPropertyKey(e,"~kind")&&i.HasPropertyKey(e,"inferred")&&i.IsEqual(e["~kind"],"ExtendsTrue")&&i.IsObject(e.inferred)}function E(){return u.Create({"~kind":"ExtendsFalse"},{})}function dy(e){return i.IsObject(e)&&i.HasPropertyKey(e,"~kind")&&i.IsEqual(e["~kind"],"ExtendsFalse")}function Ye(e){return nu(e)||ru(e)}function J(e,t,n){return Ye(e)?t(e.inferred):n()}function fy(e,t,n,r){return J(S(e,n,r),o=>I(u.Assign(u.Assign(e,o),{[t]:n})),()=>E())}function xy(e,t){return I(e)}function Iy(e,t,n,r,o){return J(S(e,t,n),m=>J(S(m,t,r),p=>I(p),()=>E()),()=>J(S(e,t,o),m=>I(m),()=>E()))}function yy(e,t,n){let r=$e(n);return S(e,t,r)}function au(e,t,n){return i.ShiftLeft(n,(r,o)=>J(S(e,t,r),m=>au(m,t,o),()=>E()),()=>I(e))}function gy(e,t,n){let r=Ie(n);return S(e,t,r)}function ou(e,t,n){return i.ShiftLeft(n,(r,o)=>J(S(e,t,r),m=>I(m),()=>ou(e,t,o)),()=>E())}function F(e,t,n){return B(n)?xy(e,t):H(n)?Iy(e,t,n.if,n.then,n.else):le(n)?yy(e,t,n.enum):Y(n)?fy(e,n.name,t,n.extends):M(n)?au(e,t,n.allOf):V(n)?gy(e,t,n.pattern):g(n)?ou(e,t,n.anyOf):Q(n)?I(e):E()}function iu(e,t,n){return Y(n)?F(e,t,n):B(n)?I(e):Q(n)?I(e):Ua(e)}function $y(e,t){let n=jt(e),r=jt(t);return n&&r||!n&&r?!0:!(n&&!r)}function su(e,t,n,r){return G(r)?$y(t,r)?S(e,n,r.items):E():F(e,t,r)}function mu(e,t,n){return Je(n)?I(e):F(e,t,n)}function pu(e,t,n){return Me(n)?I(e):F(e,t,n)}function by(e,t,n,r,o){let m=Y(r)?t:r,p=Y(r)?r:t,l=xe(t),f=xe(r);return!l&&f?E():J(S(e,m,p),v=>Nn(v,n,o),()=>E())}function Ty(e,t,n,r){return i.ShiftLeft(r,(o,m)=>by(e,t,n,o,m),()=>xe(t)?I(e):E())}function hy(e,t,n){return i.ShiftLeft(t,(r,o)=>Ty(e,r,o,n),()=>I(e))}function Nn(e,t,n){return hy(e,t,n)}function na(e,t,n){return Qe(n)?I(e):S(e,t,n)}function uu(e,t,n,r){return B(r)?I(e):Q(r)?I(e):ae(r)?J(Nn(e,t,r.parameters),o=>na(o,n,r.instanceType),()=>E()):E()}function cu(e,t,n,r,o){return J(S(e,t,o),()=>S(e,n,o),()=>S(e,r,o))}function lu(e,t,n){let r=$e(t);return S(e,r,n)}function du(e,t,n,r){return B(r)?I(e):Q(r)?I(e):oe(r)?J(Nn(e,t,r.parameters),o=>na(o,n,r.returnType),()=>E()):E()}function fu(e,t,n){return ye(n)?I(e):ee(n)?I(e):F(e,t,n)}function xu(e,t,n){let r=z(t);return S(e,r,n)}function ra(e,t,n){return t===n?I(e):E()}function Ey(e,t,n){return A(n)?ra(e,t,n.const):Je(n)?I(e):F(e,w(t),n)}function ky(e,t,n){return A(n)?ra(e,t,n.const):Me(n)?I(e):F(e,w(t),n)}function Oy(e,t,n){return A(n)?ra(e,t,n.const):ee(n)?I(e):F(e,w(t),n)}function Py(e,t,n){return A(n)?ra(e,t,n.const):ge(n)?I(e):F(e,w(t),n)}function Iu(e,t,n){return i.IsBigInt(t.const)?Ey(e,t.const,n):i.IsBoolean(t.const)?ky(e,t.const,n):i.IsNumber(t.const)?Oy(e,t.const,n):i.IsString(t.const)?Py(e,t.const,n):re()}function yu(e,t,n){return Y(n)?F(e,t,n):I(e)}function gu(e,t,n){return Zt(n)?I(e):F(e,t,n)}function $u(e,t,n){return ee(n)?I(e):F(e,t,n)}function vy(e,t,n){return xe(t)?xe(n)?I(e):E():I(e)}function Cy(e,t,n){return Y(n)&&De(n.extends)?E():J(S(e,t,n),r=>vy(r,t,n),()=>E())}function Ry(e,t){return e.reduce((n,r)=>r in t?Ye(t[r])?{...n,...t[r].inferred}:re():re(),{})}function My(e,t,n){let r={};for(let p of i.Keys(n))r[p]=p in t?Cy({},t[p],n[p]):xe(n[p])?Y(n[p])?I(u.Assign(e,{[n[p].name]:n[p].extends})):I(e):E();let o=i.Values(r).every(p=>Ye(p)),m=o?Ry(i.Keys(r),r):{};return o?I(m):E()}function wy(e,t,n){let r=My(e,t,n);return Ye(r)?I(u.Assign(e,r.inferred)):E()}function Sy(e,t,n){return wy(e,t,n)}function jy(e,t){return i.Keys(t).reduce((n,r)=>({...n,[r]:i.HasPropertyKey(e,r)?g(n[r])?P([...n[r].anyOf,t[r]]):P([e[r],t[r]]):t[r]}),e)}function bu(e,t,n,r){return i.ShiftLeft(t,(o,m)=>J(S({},e[o],n),p=>bu(e,m,n,jy(r,p)),()=>E()),()=>I(r))}function qy(e,t,n,r){let o=i.Keys(t);return bu(t,o,r,e)}function Tu(e,t,n){return fe(n)?qy(e,t,je(n),be(n)):L(n)?Sy(e,t,n.properties):F(e,T(t),n)}function Ly(e,t){return i.IsEqual(i.Keys(t).length,0)?I(e):E()}function Ay(e,t,n,r,o){return S(e,n,o)}function hu(e,t,n,r){return fe(r)?Ay(e,kr(t),n,kr(je(r)),be(r)):L(r)?Ly(e,r.properties):B(r)?I(e):Q(r)?I(e):E()}function Eu(e,t,n){return ge(n)?I(e):F(e,t,n)}function ku(e,t,n){return yt(n)?I(e):F(e,t,n)}function Ou(e,t,n){let r=Ie(t);return S(e,r,n)}function Na(e,t){return u.Create({"~kind":"Inferrable"},{name:e,type:t},{})}function Gn(e){return i.IsObject(e)&&i.HasPropertyKey(e,"~kind")&&i.HasPropertyKey(e,"name")&&i.HasPropertyKey(e,"type")&&i.IsEqual(e["~kind"],"Inferrable")&&i.IsString(e.name)&&i.IsObject(e.type)}function Ga(e){return Tt(e)?Y(e.items)?G(e.items.extends)?Na(e.items.name,e.items.extends.items):Q(e.items.extends)?Na(e.items.name,e.items.extends):void 0:re():void 0}function aa(e){return Y(e)?Na(e.name,e.extends):void 0}function Pu(e,t){let n=[];for(let r of e){if(!Ye(S({},r,t)))return;n.push(r)}return n}function vu(e,t,n,r){let o=Pu(n,r);return i.IsArray(o)?I(u.Assign(e,{[t]:te(o)})):E()}function oa(e,t,n,r){let o=Pu(n,r);return i.IsArray(o)?I(u.Assign(e,{[t]:P(o)})):E()}function Fy(e){return[...e].reverse()}function za(e,t){return t?Fy(e):e}function Dy(e){let t=e.length>0?e[0]:void 0,n=ne(t)?Ga(t):void 0;return ne(n)}function Ky(e,t,n,r,o,m){return J(S(e,n,o),p=>Cu(p,t,r,m),()=>E())}function Uy(e,t,n,r,o){let m=Ga(r);return Gn(m)?vu(e,m.name,za(n,t),m.type):i.ShiftLeft(n,(p,l)=>Ky(e,t,p,l,r,o),()=>E())}function Ny(e,t,n,r){return i.ShiftLeft(r,(o,m)=>Uy(e,t,n,o,m),()=>i.IsEqual(n.length,0)?I(e):E())}function Cu(e,t,n,r){return Ny(e,t,n,r)}function Gy(e,t,n){let r=Ot(e,N([],[]),n),o=Dy(r);return Cu(e,o,za(t,o),za(r,o))}function zy(e,t,n){for(let r of t){let o=S(e,r,n);if(!Ye(o))return o;e=o.inferred}return I(e)}function _y(e,t,n){let r=aa(n);return Gn(r)?oa(e,r.name,t,r.type):zy(e,t,n)}function Ru(e,t,n){let r=Ot(e,N([],[]),t);return K(n)?Gy(e,r,n.items):G(n)?_y(e,r,n.items):F(e,te(r),n)}function Mu(e,t,n){return Qe(n)?I(e):tn(n)?I(e):F(e,t,n)}function wu(e,t,n){return i.ShiftLeft(n,(r,o)=>J(S(e,t,r),m=>I(m),()=>wu(e,t,o)),()=>E())}function _a(e,t,n){return i.ShiftLeft(t,(r,o)=>J(wu(e,r,n),m=>_a(m,o,n),()=>E()),()=>I(e))}function Su(e,t,n){let r=aa(n);return Gn(r)?oa(e,r.name,t,r.type):g(n)?_a(e,t,n.anyOf):_a(e,t,[n])}function ju(e,t,n){return Y(n)?F(e,t,n):B(n)?I(e):Q(n)?I(e):E()}function qu(e,t,n){return Qe(n)?I(e):F(e,t,n)}function S(e,t,n){return B(t)?iu(e,t,n):G(t)?su(e,t,t.items,n):Je(t)?mu(e,t,n):Me(t)?pu(e,t,n):ae(t)?uu(e,t.parameters,t.instanceType,n):H(t)?cu(e,t.if,t.then,t.else,n):le(t)?lu(e,t.enum,n):oe(t)?du(e,t.parameters,t.returnType,n):ye(t)?fu(e,t,n):M(t)?xu(e,t.allOf,n):A(t)?Iu(e,t,n):De(t)?yu(e,t,n):Zt(t)?gu(e,t,n):ee(t)?$u(e,t,n):L(t)?Tu(e,t.properties,n):fe(t)?hu(e,je(t),be(t),n):ge(t)?Eu(e,t,n):yt(t)?ku(e,t,n):V(t)?Ou(e,t.pattern,n):K(t)?Ru(e,t.items,n):tn(t)?Mu(e,t,n):g(t)?Su(e,t.anyOf,n):Q(t)?ju(e,t,n):Qe(t)?qu(e,t,n):E()}function By(e,t){return z([...e,T(t)])}function Ba(e,t,n){return k(e)?u.Update(By(e,t),{},n):qn(e,t,n)}function Lu(e,t,n,r,o){let m=Ce(e,t,n),p=zn(e,t,r);return Ba(m,p,o)}function qn(e,t,n={}){return $("Interface",[e,t],n)}function on(e){return ne(e)&&i.HasPropertyKey(e,"action")&&i.IsEqual(e.action,"Interface")}function Au(e,t,n={}){return Ba(e,t,n)}function Wy(e,t,n){return e.includes(n)?!0:_n([...e,n],t,t[n])}function Fu(e,t,n){let r=mr(n);return Ut(e,t,r)}function Ut(e,t,n){return i.ShiftLeft(n,(r,o)=>_n(e,t,r)?!0:Ut(e,t,o),()=>!1)}function _n(e,t,n){return ie(n)?Wy(e,t,n.$ref):G(n)?_n(e,t,n.items):ae(n)?Ut(e,t,[...n.parameters,n.instanceType]):oe(n)?Ut(e,t,[...n.parameters,n.returnType]):on(n)?Fu(e,t,n.parameters[1]):M(n)?Ut(e,t,n.allOf):L(n)?Fu(e,t,n.properties):g(n)?Ut(e,t,n.anyOf):K(n)?Ut(e,t,n.items):fe(n)?_n(e,t,be(n)):!1}function Du(e,t,n){return _n(e,t,n)}function Hy(e,t){return t.reduce((n,r)=>Du([r],e,e[r])?[...n,r]:n,[])}function Ku(e){let t=sr(e);return Hy(e,t)}function Vy(e,t,n){return n.includes(t)?n:t in e?Bn(e,e[t],[...n,t]):re()}function Uu(e,t,n){let r=mr(t);return sn(e,r,n)}function sn(e,t,n){return t.reduce((r,o)=>Bn(e,o,r),n)}function Bn(e,t,n){return ie(t)?Vy(e,t.$ref,n):G(t)?Bn(e,t.items,n):ae(t)?sn(e,[...t.parameters,t.instanceType],n):oe(t)?sn(e,[...t.parameters,t.returnType],n):on(t)?Uu(e,t.parameters[1],n):M(t)?sn(e,t.allOf,n):L(t)?Uu(e,t.properties,n):g(t)?sn(e,t.anyOf,n):K(t)?sn(e,t.items,n):fe(t)?Bn(e,be(t),n):n}function Nu(e,t,n){return Bn(e,n,[t])}function Zy(e){return Wt()}function Jy(e){return i.Keys(e).reduce((t,n)=>({...t,[n]:Nt(e[n])}),{})}function Wn(e){return e.reduce((t,n)=>[...t,Nt(n)],[])}function Nt(e){return ie(e)?Zy(e.$ref):G(e)?ve(Nt(e.items),ir(e)):ae(e)?_e(Wn(e.parameters),Nt(e.instanceType)):oe(e)?Be(Wn(e.parameters),Nt(e.returnType)):M(e)?Te(Wn(e.allOf)):L(e)?T(Jy(e.properties)):fe(e)?Er(Xt(e),Nt(be(e))):g(e)?P(Wn(e.anyOf)):K(e)?te(Wn(e.items)):e}function Qy(e,t){return t in e?Nt(e[t]):se()}function Gu(e){return Qy(e.$defs,e.$ref)}function Yy(e,t,n){let r=Ce(e,N([],[]),t),o=zn({},N([],[]),n);return z([...r,T(o)])}function Xy(e,t){return i.Keys(e).filter(r=>t.includes(r)).reduce((r,o)=>{let m=e[o],p=on(m)?Yy(e,m.parameters[0],m.parameters[1]):m;return{...r,[o]:p}},{})}function zu(e,t,n){let r=Nu(e,t,n),o=Xy(e,r);return He(o,t)}function _u(e,t){return t in e?ie(e[t])?_u(e,e[t].$ref):e[t]:D()}function Xe(e,t){return _u(e,t)}function Bu(e){return ce(e)?Gu(e):pr(e)?se():e}function de(e,t,n){let r=Bu(t),o=Bu(n);return S(e,r,o)}var Rn=0,ia=1,Mn=2,br=3;function wn(e,t){let n=[de({},e,t),de({},t,e)];return h.IsExtendsTrueLike(n[0])&&h.IsExtendsTrueLike(n[1])?Rn:h.IsExtendsTrueLike(n[0])&&h.IsExtendsFalse(n[1])?Mn:h.IsExtendsFalse(n[0])&&h.IsExtendsTrueLike(n[1])?br:ia}function Wa(e,t,n=[],r=t){return i.ShiftLeft(t,(o,m)=>{let p=wn(e,o);return i.IsEqual(p,Mn)||i.IsEqual(p,Rn)?r:i.IsEqual(p,ia)?Wa(e,m,[...n,o],r):Wa(e,m,n,r)},()=>[...n,e])}function eg(e,t,n){let r=Se(e);return B(r)?[r]:Q(r)?[r]:De(r)?sa(t,n):L(r)?sa(t,[...n,r]):sa(t,Wa(r,n))}function sa(e,t=[]){return i.ShiftLeft(e,(n,r)=>eg(n,r,t),()=>t)}function ka(e){let t=sa(e);return Yt(t)}function Ha(e,t){return u.Update(Se(e),{},t)}function Wu(e,t,n,r){let o=d(e,t,n);return Ha(o,r)}function Hn(e,t=[]){return xt(e)&&i.IsEqual(e.action,"Conditional")?ie(e.parameters[0])?Hn(e.parameters[2],Hn(e.parameters[3],[...t,e.parameters[0].$ref])):Hn(e.parameters[2],Hn(e.parameters[3],t)):xt(e)&&i.IsEqual(e.action,"Mapped")&&xt(e.parameters[1])&&i.IsEqual(e.parameters[1].action,"KeyOf")&&ie(e.parameters[1].parameters[0])?[...t,e.parameters[1].parameters[0].$ref]:t}function tg(e,t){return e.reduce((n,r)=>[...n,t.includes(r.name)],[])}function Zu(e,t,n=[]){return i.ShiftLeft(e,(r,o)=>i.ShiftLeft(t,(m,p)=>Zu(o,p,[...n,[m,r]]),()=>n),()=>n)}function ng(e){return V(e)?Ie(e.pattern):le(e)?$e(e.enum):e}function rg(e){let t=ng(e);return g(t)?[...t.anyOf]:[t]}function ag(e,t){return e.reduce((n,r)=>[...n,[...r,t]],[])}function Hu(e,t){return t.reduce((n,r)=>[...n,...ag(e,r)],[])}function Vu(e){return e.reduce((t,n)=>i.IsEqual(n[0],!0)?Hu(t,rg(n[1])):Hu(t,[n[1]]),[[]])}function Ju(e,t,n){let r=Hn(n),o=tg(e,r),m=Zu(t,o);return xt(n)&&i.IsEqual(n.action,"Conditional")||xt(n)&&i.IsEqual(n.action,"Mapped")?Vu(m):[t]}function og(){return["(not-resolvable)",D()]}function ig(){return["(not-generic)",D()]}function sg(e,t,n){return[e,It(t,n)]}function mg(e,t,n){return t in e?Qu(e,t,e[t],n):og()}function Qu(e,t,n,r){return Bt(n)?sg(t,n.parameters,n.expression):ie(n)?mg(e,n.$ref,r):ig()}function Yu(e,t,n){return Qu(e,"(anonymous)",t,n)}function pg(e,t,n){if(Y(t)||mn(t)||h.IsExtendsTrueLike(de({},t,n)))return;let r={parameter:e,expect:n,actual:t};throw new Error(`Argument for parameter ${e} does not satisfy constraint`,{cause:r})}function Xu(e,t,n,r,o){let m=d(e,t,o);return pg(n,m,r),u.Assign(e,{[n]:m})}function ug(e,t,n,r,o){let m=d(e,t,n.extends),p=d(e,t,n.equals);return i.ShiftLeft(o,(l,f)=>Va(Xu(e,t,n.name,m,l),t,r,f),()=>Va(Xu(e,t,n.name,m,p),t,r,[]))}function Va(e,t,n,r){return i.ShiftLeft(n,(o,m)=>ug(e,t,o,m,r),()=>e)}function ec(e,t,n,r){return Va(e,t,n,r)}var Za=0,Ja=0;function cg(){if(!i.IsLessThan(Ja,Fe.Get().maxInstantiationCount))throw Error("Type instantiation is excessively deep and possibly infinite")}function lg(){cg(),Ja++,Za++}function dg(){Za--,i.IsEqual(Za,0)&&(Ja=0)}function fg(e){return i.IsGreaterThan(e.callstack.length,0)?e.callstack[e.callstack.length-1]:""}function xg(e,t){return i.IsEqual(fg(e),t)}function Ig(e,t,n,r,o,m){lg();try{let p=ec(e,t,r,m),l=d(p,N([...t.callstack,n.$ref],t.visited),o);return d(p,N([],[]),l)}finally{dg()}}function yg(e,t,n,r,o,m){return m.reduce((p,l)=>{let f=Ig(e,t,n,r,o,l);return[...p,f]},[])}function gg(e,t,n,r,o,m){let p=Ju(r,m,o),l=yg(e,t,n,r,o,p);return i.IsEqual(l.length,1)?l[0]:Ee(l)}function ma(e,t,n,r){let o=Ce(e,t,r),m=Yu(e,n,r),p=m[0],l=m[1];return Bt(l)?xg(t,p)?Ln(it(p),o):gg(e,t,it(p),l.parameters,l.expression,o):Ln(n,o)}function Ln(e,t){return u.Create({"~kind":"Call"},{type:"call",target:e,arguments:t},{})}function tc(e,t){return ma({},N([],[]),e,t)}function mn(e){return y(e,"Call")}function $g(e){return u.Discard(e,["~immutable"])}function nc(e,t){return u.Update($g(e),{},t)}function rc(e,t,n,r){let o=d(e,t,n);return nc(o,r)}function ac(e,t){return e(t)}function oc(e,t){return i.IsString(t)?w(ac(e,t)):w(t)}function ic(e,t){let n=Ie(t);return mt(e,n)}function sc(e,t){let n=t.map(r=>mt(e,r));return P(n)}function mt(e,t){return A(t)?oc(e,t.const):V(t)?ic(e,t.pattern):g(t)?sc(e,t.anyOf):t}function Rr(e,t={}){return $("Capitalize",[e],t)}function mc(e,t={}){return Qa(e,t)}function Mr(e,t={}){return $("Lowercase",[e],t)}function pc(e,t={}){return Ya(e,t)}function wr(e,t={}){return $("Uncapitalize",[e],t)}function uc(e,t={}){return Xa(e,t)}function Sr(e,t={}){return $("Uppercase",[e],t)}function cc(e,t={}){return eo(e,t)}var bg=e=>e[0].toUpperCase()+e.slice(1),Tg=e=>e.toLowerCase(),hg=e=>e[0].toLowerCase()+e.slice(1),Eg=e=>e.toUpperCase();function Qa(e,t){return k([e])?u.Update(mt(bg,e),{},t):Rr(e,t)}function Ya(e,t){return k([e])?u.Update(mt(Tg,e),{},t):Mr(e,t)}function Xa(e,t){return k([e])?u.Update(mt(hg,e),{},t):wr(e,t)}function eo(e,t){return k([e])?u.Update(mt(Eg,e),{},t):Sr(e,t)}function lc(e,t,n,r){let o=d(e,t,n);return Qa(o,r)}function dc(e,t,n,r){let o=d(e,t,n);return Ya(o,r)}function fc(e,t,n,r){let o=d(e,t,n);return Xa(o,r)}function xc(e,t,n,r){let o=d(e,t,n);return eo(o,r)}function jr(e,t,n,r,o={}){return $("Conditional",[e,t,n,r],o)}function Ic(e,t,n,r,o={}){return to({},N([],[]),e,t,n,r,o)}function kg(e,t,n,r,o,m){let p=de(e,n,r);return h.IsExtendsUnion(p)?P([d(p.inferred,t,o),d(e,t,m)]):h.IsExtendsTrue(p)?d(p.inferred,t,o):d(e,t,m)}function to(e,t,n,r,o,m,p){return k([n,r])?u.Update(kg(e,t,n,r,o,m),{},p):jr(n,r,o,m,p)}function yc(e,t,n,r,o,m,p){let l=d(e,t,n),f=d(e,t,r);return to(e,t,l,f,o,m,p)}function qr(e,t={}){return $("ConstructorParameters",[e],t)}function gc(e,t={}){return no(e,t)}function Og(e){let t=ae(e)?e.parameters:[],n=Ot({},N([],[]),t);return te(n)}function no(e,t){return k([e])?u.Update(Og(e),{},t):qr(e,t)}function $c(e,t,n,r){let o=d(e,t,n);return no(o,r)}function Lr(e,t,n={}){return $("Exclude",[e,t],n)}function bc(e,t,n={}){return Vn(e,t,n)}function Vn(e,t,n){return k([e,t])?u.Update(Tr(e,t),{},n):Lr(e,t,n)}function Tc(e,t,n,r,o){let m=d(e,t,n),p=d(e,t,r);return Vn(m,p,o)}function Ar(e,t,n={}){return $("Extract",[e,t],n)}function hc(e,t,n={}){return ro(e,t,n)}function Pg(e,t){let n=de({},e,t);return h.IsExtendsTrueLike(n)?[e]:[]}function Ec(e,t,n=[]){return i.ShiftLeft(e,(r,o)=>Ec(o,t,[...n,...Pg(r,t)]),()=>n)}function kc(e,t){let n=Se(e),r=g(n)?n.anyOf:[n],o=Ec(r,t);return Ee(o)}function ro(e,t,n){return k([e,t])?u.Update(kc(e,t),{},n):Ar(e,t,n)}function Oc(e,t,n,r,o){let m=d(e,t,n),p=d(e,t,r);return ro(m,p,o)}function vg(e){return e.reduce((t,n)=>fr(n)?[...t,w(n)]:t,[])}function pn(e){let t=vg(e);return P(t)}function An(e,t,n={}){return $("Index",[e,t],n)}function Pc(e,t,n={}){let r=i.IsArray(t)?pn(t):t;return ao(e,r,n)}function vc(e,t){let n=Xe(e,t);return Re(n)}function Cc(e,t,n){let r=Ue(e,t,n);return Re(r)}function Cg(e,t){let n=i.Keys(e).filter(O=>!i.HasPropertyKey(t,O)),r=i.Keys(t).filter(O=>!i.HasPropertyKey(e,O)),o=i.Keys(e).filter(O=>i.HasPropertyKey(t,O)),m=n.reduce((O,_)=>({...O,[_]:e[_]}),{}),p=r.reduce((O,_)=>({...O,[_]:t[_]}),{}),l=o.reduce((O,_)=>({...O,[_]:z([e[_],t[_]])}),{}),f=u.Assign(m,p);return u.Assign(f,l)}function Rc(e){return e.reduce((t,n)=>Cg(t,Re(n)),{})}function Mc(e){let t=ji(te(e));return Re(t)}function Rg(e,t){return i.Keys(e).filter(o=>o in t).reduce((o,m)=>({...o,[m]:Ee([e[m],t[m]])}),{})}function wc(e,t){return i.ShiftLeft(e,(n,r)=>wc(r,Rg(t,Re(n))),()=>t)}function Sc(e){return i.ShiftLeft(e,(t,n)=>wc(n,Re(t)),()=>re())}function Re(e){return ce(e)?vc(e.$defs,e.$ref):H(e)?Cc(e.if,e.then,e.else):M(e)?Rc(e.allOf):g(e)?Sc(e.anyOf):K(e)?Mc(e.items):L(e)?e.properties:{}}function un(e){let t=Re(e);return T(t)}var Mg=new RegExp("^(?:0|[1-9][0-9]*)$");function cn(e){let t=`${e}`;return Mg.test(t)?parseInt(t):e}function wg(e){return w(cn(e))}function jc(e){return e.map(t=>qc(t))}function qc(e){return M(e)?Te(jc(e.allOf)):g(e)?P(jc(e.anyOf)):A(e)?wg(e.const):e}function Lc(e,t){let n=qc(t),r=de({},n,ke());return h.IsExtendsTrueLike(r)?e:A(t)&&i.IsEqual(t.const,"length")?ke():D()}function Ac(e,t){let n=Xe(e,t);return Oe(n)}function Fc(e,t,n){let r=Ue(e,t,n);return Oe(r)}function Dc(e){let t=$e(e);return Oe(t)}function Kc(e){let t=z(e);return Oe(t)}function Uc(e){return[`${e}`]}function Nc(e){let t=Ie(e);return Oe(t)}function Gc(e){return e.reduce((t,n)=>[...t,...Oe(n)],[])}function Oe(e){return ce(e)?Ac(e.$defs,e.$ref):H(e)?Fc(e.if,e.then,e.else):le(e)?Dc(e.enum):M(e)?Kc(e.allOf):A(e)?Uc(e.const):V(e)?Nc(e.pattern):g(e)?Gc(e.anyOf):[]}function ln(e){return Oe(e)}function Zn(e,t){return t.map(n=>Jn(e,n))}function Jn(e,t){return G(t)?ve(Jn(e,t.items)):ae(t)?_e(Zn(e,t.parameters),Jn(e,t.instanceType)):oe(t)?Be(Zn(e,t.parameters),Jn(e,t.returnType)):K(t)?te(Zn(e,t.items)):g(t)?P(Zn(e,t.anyOf)):M(t)?Te(Zn(e,t.allOf)):Pr(t)?T(e):t}function zc(e,t){return Jn(e,t)}function Sg(e,t){let n=t in e?e[t]:D();return zc(e,n)}function _c(e,t){return t.reduce((n,r)=>[...n,Sg(e,r)],[])}function jg(e,t){let n=ln(t),r=_c(e,n);return Ee(r)}var qg=new RegExp(bt);function Lg(e){return e.filter(n=>qg.test(n))}function Ag(e){let t=sr(e),n=Lg(t),r=_c(e,n);return Ee(r)}function Bc(e,t){return ee(t)?Ag(e):jg(e,t)}function Fg(e){return w(cn(e))}function Wc(e){return e.map(t=>oo(t))}function oo(e){return M(e)?Te(Wc(e.allOf)):g(e)?P(Wc(e.anyOf)):A(e)?Fg(e.const):e}function Dg(e,t){return e.reduceRight((n,r,o)=>{let m=de({},w(o),t);return h.IsExtendsTrueLike(m)?[r,...n]:n},[])}function Kg(e,t){let n=oo(t),r=Dg(e,n);return gt(r)}function Ug(e){return gt(e)}function Hc(e,t){return A(t)&&i.IsEqual(t.const,"length")?w(e.length):ee(t)||ye(t)?Ug(e):Kg(e,t)}function Vc(e,t){return G(e)?Lc(e.items,t):L(e)?Bc(e.properties,t):K(e)?Hc(e.items,t):D()}function Ng(e){return ce(e)||H(e)||M(e)||g(e)?un(e):e}function ao(e,t,n){return k([e,t])?u.Update(Vc(Ng(e),t),{},n):An(e,t,n)}function Zc(e,t,n,r,o){let m=d(e,t,n),p=d(e,t,r);return ao(m,p,o)}function Fr(e,t={}){return $("InstanceType",[e],t)}function Jc(e,t={}){return io(e,t)}function Gg(e){return ae(e)?e.instanceType:D()}function io(e,t){return k([e])?u.Update(Gg(e),{},t):Fr(e,t)}function Qc(e,t,n,r={}){let o=d(e,t,n);return io(o,r)}function Fn(e,t={}){return $("KeyOf",[e],t)}function Yc(e,t={}){return so(e,t)}function Xc(){return P([ke(),we(),Jt()])}function el(e){return ke()}function zg(e){return e.reduce((n,r)=>fr(r)?[...n,w(cn(r))]:re(),[])}function tl(e){let t=i.Keys(e),n=zg(t);return gt(n)}function nl(e){return Xt(e)}function rl(e){let t=e.map((n,r)=>w(r));return gt(t)}function al(e){return B(e)?Xc():G(e)?el(e.items):L(e)?tl(e.properties):fe(e)?nl(e):K(e)?rl(e.items):D()}function _g(e){return ce(e)||H(e)||M(e)||g(e)?un(e):e}function so(e,t){return k([e])?u.Update(al(_g(e)),{},t):Fn(e,t)}function ol(e,t,n,r){let o=d(e,t,n);return so(o,r)}function jn(e,t,n,r,o={}){return $("Mapped",[e,t,n,r],o)}function il(e,t,n,r,o={}){return mo({},N([],[]),e,t,n,r,o)}function Bg(e){let t=Ie(e);return pa(t)}function Wg(e){return e.reduce((t,n)=>[...t,...pa(n)],[])}function Hg(e){let t=$e(e);return pa(t)}function Vg(e){return i.IsNumber(e)?[w(`${e}`)]:[w(e)]}function pa(e){return le(e)?Hg(e.enum):A(e)?Vg(e.const):V(e)?Bg(e.pattern):g(e)?Wg(e.anyOf):[e]}function sl(e){return pa(e)}function Zg(e){return V(e)?Ie(e.pattern):e}function Jg(e,t,n,r,o,m){let p=u.Assign(e,{[n.name]:r}),l=d(p,t,o),f=Zg(l),v=d(p,t,m);return di(f)||fi(f)?{[f.const]:v}:{}}function Qg(e,t,n,r,o,m){return r.reduce((p,l)=>[...p,Jg(e,t,n,l,o,m)],[])}function Yg(e){return e.reduce((t,n)=>[...t,T(n)],[])}function ml(e,t,n,r,o,m){let p=sl(r),l=Qg(e,t,n,p,o,m),f=Yg(l);return z(f)}function mo(e,t,n,r,o,m,p){return k([r])?u.Update(ml(e,t,n,r,o,m),{},p):jn(n,r,o,m,p)}function pl(e,t,n,r,o,m,p){let l=d(e,t,r);return mo(e,t,n,l,o,m,p)}function Xg(e,t,n){let r=u.Assign(e,t);return i.Keys(t).filter(m=>n.includes(m)).reduce((m,p)=>({...m,[p]:zu(r,p,t[p])}),{})}function e$(e,t,n){let r=u.Assign(e,t);return i.Keys(t).filter(m=>!n.includes(m)).reduce((m,p)=>({...m,[p]:d(r,N([],[]),t[p])}),{})}function t$(e,t,n){let r=Ku(t),o=Xg(e,t,r),m=e$(e,t,r),p={...o,...m};return u.Update(p,{},n)}function ua(e,t,n,r){return t$(e,n,r)}function Dr(e,t={}){return $("NonNullable",[e],t)}function ul(e,t={}){return po(e,t)}function n$(e){let t=P([Vt(),en()]);return Vn(e,t,{})}function po(e,t){return k([e])?u.Update(n$(e),{},t):Dr(e,t)}function cl(e,t,n,r){let o=d(e,t,n);return po(o,r)}function Kr(e,t,n={}){return $("Omit",[e,t],n)}function ll(e,t,n={}){let r=i.IsArray(t)?pn(t):t;return uo(e,r,n)}function ca(e){let t=un(e);return L(t)?t.properties:re()}function r$(e,t){return i.Keys(e).reduce((r,o)=>t.includes(o)?r:{...r,[o]:e[o]},{})}function dl(e,t){let n=ca(e),r=ln(t),o=r$(n,r);return T(o)}function uo(e,t,n){return k([e,t])?u.Update(dl(e,t),{},n):Kr(e,t,n)}function fl(e,t,n,r,o){let m=d(e,t,n),p=d(e,t,r);return uo(m,p,o)}function Ur(e,t={}){return $("Parameters",[e],t)}function xl(e,t={}){return co(e,t)}function a$(e){let t=oe(e)?e.parameters:[],n=Ot({},N([],[]),t);return te(n)}function co(e,t){return k([e])?u.Update(a$(e),{},t):Ur(e,t)}function Il(e,t,n,r){let o=d(e,t,n);return co(o,r)}function Nr(e,t={}){return $("Partial",[e],t)}function yl(e,t={}){return lo(e,t)}function gl(e,t){let n=Xe(e,t),r=et(n);return He(u.Assign(e,{[t]:r}),t)}function $l(e,t,n){let r=Ue(e,t,n);return et(r)}function bl(e){let t=z(e);return et(t)}function Tl(e){let t=e.map(n=>et(n));return P(t)}function hl(e){let t=i.Keys(e).reduce((r,o)=>({...r,[o]:wt(e[o])}),{});return T(t)}function et(e){return ce(e)?gl(e.$defs,e.$ref):H(e)?$l(e.if,e.then,e.else):M(e)?bl(e.allOf):g(e)?Tl(e.anyOf):L(e)?hl(e.properties):T({})}function lo(e,t){return k([e])?u.Update(et(e),{},t):Nr(e,t)}function El(e,t,n,r){let o=d(e,t,n);return lo(o,r)}function Gr(e,t,n={}){return $("Pick",[e,t],n)}function kl(e,t,n={}){let r=i.IsArray(t)?pn(t):t;return fo(e,r,n)}function o$(e,t){return i.Keys(e).reduce((r,o)=>t.includes(o)?u.Assign(r,{[o]:e[o]}):r,{})}function Ol(e,t){let n=ca(e),r=ln(t),o=o$(n,r);return T(o)}function fo(e,t,n){return k([e,t])?u.Update(Ol(e,t),{},n):Gr(e,t,n)}function Pl(e,t,n,r,o){let m=d(e,t,n),p=d(e,t,r);return fo(m,p,o)}function zr(e,t={}){return $("ReadonlyObject",[e],t)}function xo(e,t={}){return Io(e,t)}var vl=xo;function Cl(e){return Ht(ve(e))}function Rl(e,t){let n=Xe(e,t),r=tt(n);return He(u.Assign(e,{[t]:r}),t)}function Ml(e,t,n){let r=Ue(e,t,n);return tt(r)}function wl(e){let t=z(e);return tt(t)}function Sl(e){let t=i.Keys(e).reduce((r,o)=>({...r,[o]:qt(e[o])}),{});return T(t)}function jl(e){return Ht(te(e))}function ql(e){let t=e.map(n=>tt(n));return P(t)}function tt(e){return G(e)?Cl(e.items):ce(e)?Rl(e.$defs,e.$ref):H(e)?Ml(e.if,e.then,e.else):M(e)?wl(e.allOf):L(e)?Sl(e.properties):K(e)?jl(e.items):g(e)?ql(e.anyOf):e}function Io(e,t){return k([e])?u.Update(tt(e),{},t):zr(e)}function Ll(e,t,n,r){let o=d(e,t,n);return Io(o,r)}function Al(e,t,n,r){return t.visited.includes(r)?n:r in e?d(e,N(t.callstack,[...t.visited,r]),e[r]):n}function Fl(e,t){let n=Xe(e,t),r=nt(n);return He(u.Assign(e,{[t]:r}),t)}function Dl(e,t,n){let r=Ue(e,t,n);return nt(r)}function Kl(e){let t=z(e);return nt(t)}function Ul(e){let t=e.map(n=>nt(n));return P(t)}function Nl(e){let t=i.Keys(e).reduce((r,o)=>({...r,[o]:$r(e[o])}),{});return T(t)}function nt(e){return ce(e)?Fl(e.$defs,e.$ref):H(e)?Dl(e.if,e.then,e.else):M(e)?Kl(e.allOf):g(e)?Ul(e.anyOf):L(e)?Nl(e.properties):T({})}function _r(e,t={}){return $("Required",[e],t)}function Gl(e,t={}){return yo(e,t)}function yo(e,t){return k([e])?u.Update(nt(e),{},t):_r(e,t)}function zl(e,t,n,r){let o=d(e,t,n);return yo(o,r)}function Br(e,t={}){return $("ReturnType",[e],t)}function _l(e,t={}){return go(e,t)}function i$(e){return oe(e)?e.returnType:D()}function go(e,t){return k([e])?u.Update(i$(e),{},t):Br(e,t)}function Bl(e,t,n,r={}){let o=d(e,t,n);return go(o,r)}function Wr(e,t){return $("With",[e,t],{})}function Wl(e,t){return $o(e,t)}function $o(e,t){return k([e])?u.Update(e,{},t):Wr(e,t)}function Hl(e,t,n,r){let o=d(e,t,n);return $o(o,r)}function s$(e){return Tt(e)?K(e.items)?bo(e.items.items):Y(e.items)?[e]:ie(e.items)?[e]:[D()]:[e]}function bo(e){return e.reduce((n,r)=>[...n,...s$(r)],[])}function N(e,t){return{callstack:e,visited:t}}function k(e){return i.ShiftLeft(e,(t,n)=>ie(t)?!1:k(n),()=>!0)}function zn(e,t,n){return i.Keys(n).reduce((r,o)=>({...r,[o]:d(e,t,n[o])}),{})}function Ot(e,t,n){let r=Ce(e,t,n);return bo(r)}function Ce(e,t,n){return n.map(r=>d(e,t,r))}function m$(e,t){let n=xe(e)?hn(t,{}):t,r=Lt(e)?Tn(n,{}):n;return jt(e)?Qn(r,{}):r}function p$(e,t,n,r,o){return i.IsEqual(n,"AddImmutable")?Vl(e,t,r[0],o):i.IsEqual(n,"RemoveImmutable")?rc(e,t,r[0],o):i.IsEqual(n,"AddReadonly")?Go(e,t,r[0],o):i.IsEqual(n,"RemoveReadonly")?Ci(e,t,r[0],o):i.IsEqual(n,"AddOptional")?zo(e,t,r[0],o):i.IsEqual(n,"RemoveOptional")?wi(e,t,r[0],o):i.IsEqual(n,"Capitalize")?lc(e,t,r[0],o):i.IsEqual(n,"Conditional")?yc(e,t,r[0],r[1],r[2],r[3],o):i.IsEqual(n,"ConstructorParameters")?$c(e,t,r[0],o):i.IsEqual(n,"Evaluate")?Wu(e,t,r[0],o):i.IsEqual(n,"Exclude")?Tc(e,t,r[0],r[1],o):i.IsEqual(n,"Extract")?Oc(e,t,r[0],r[1],o):i.IsEqual(n,"Index")?Zc(e,t,r[0],r[1],o):i.IsEqual(n,"InstanceType")?Qc(e,t,r[0],o):i.IsEqual(n,"Interface")?Lu(e,t,r[0],r[1],o):i.IsEqual(n,"KeyOf")?ol(e,t,r[0],o):i.IsEqual(n,"Lowercase")?dc(e,t,r[0],o):i.IsEqual(n,"Mapped")?pl(e,t,r[0],r[1],r[2],r[3],o):i.IsEqual(n,"Module")?ua(e,t,r[0],o):i.IsEqual(n,"NonNullable")?cl(e,t,r[0],o):i.IsEqual(n,"Pick")?Pl(e,t,r[0],r[1],o):i.IsEqual(n,"Parameters")?Il(e,t,r[0],o):i.IsEqual(n,"Partial")?El(e,t,r[0],o):i.IsEqual(n,"Omit")?fl(e,t,r[0],r[1],o):i.IsEqual(n,"ReadonlyObject")?Ll(e,t,r[0],o):i.IsEqual(n,"Record")?Vi(e,t,r[0],r[1],o):i.IsEqual(n,"Required")?zl(e,t,r[0],o):i.IsEqual(n,"ReturnType")?Bl(e,t,r[0],o):i.IsEqual(n,"TemplateLiteral")?Xp(e,t,r[0],o):i.IsEqual(n,"Uncapitalize")?fc(e,t,r[0],o):i.IsEqual(n,"Uppercase")?xc(e,t,r[0],o):i.IsEqual(n,"With")?Hl(e,t,r[0],r[1]):$(n,r,o)}function u$(e,t,n){let r=ie(n)?Al(e,t,n,n.$ref):G(n)?ve(d(e,t,n.items),ir(n)):mn(n)?ma(e,t,n.target,n.arguments):ae(n)?_e(Ce(e,t,n.parameters),d(e,t,n.instanceType),_o(n)):oe(n)?Be(Ce(e,t,n.parameters),d(e,t,n.returnType),Bo(n)):H(n)?St(d(e,t,n.if),d(e,t,n.then),d(e,t,n.else),Qo(n)):M(n)?Te(Ce(e,t,n.allOf),ni(n)):L(n)?T(zn(e,t,n.properties),Zo(n)):fe(n)?Zi(je(n),d(e,t,be(n))):Tt(n)?Dt(d(e,t,n.items)):K(n)?te(Ot(e,t,n.items),vi(n)):g(n)?P(Ce(e,t,n.anyOf),Ii(n)):n;return m$(n,r)}function d(e,t,n){return xt(n)?p$(e,t,n.action,n.parameters,n.options):u$(e,t,n)}function To(e,t){return d(e,N([],[]),t)}function c$(e){return u.Update(e,{"~immutable":!0},{})}function Qn(e,t){return u.Update(c$(e),{},t)}function Vl(e,t,n,r){let o=d(e,t,n);return Qn(o,r)}function Zm(e,t={}){return $("AddImmutable",[e],t)}function Ht(e,t={}){return Qn(e,t)}function Jm(e,t={}){return $("Evaluate",[e],t)}function Zl(e,t={}){return Ha(e,t)}function Qm(e,t={}){return $("Module",[e],t)}function Jl(e,t={}){return ua({},N([],[]),e,t)}function Ql(...e){let[t,n,r]=Ve.Match(e,{2:(p,l)=>i.IsString(p)?[{},p,l]:[p,l,{}],3:(p,l,f)=>[p,l,f],1:p=>[{},p,{}]}),o=Vp(n),m=i.IsArray(o)&&i.IsEqual(o.length,2)?d(t,N([],[]),o[0]):D();return u.Update(m,{},r)}var x={};Rt(x,{Any:()=>Wt,Array:()=>ve,BigInt:()=>Pn,Boolean:()=>lr,Call:()=>tc,Capitalize:()=>mc,Codec:()=>cr,Conditional:()=>Ic,Constructor:()=>_e,ConstructorParameters:()=>gc,Cyclic:()=>He,Decode:()=>ii,DecodeBuilder:()=>On,Dependent:()=>St,Encode:()=>si,EncodeBuilder:()=>kn,Enum:()=>ti,Evaluate:()=>Zl,Exclude:()=>bc,Extends:()=>de,ExtendsResult:()=>h,Extract:()=>hc,Function:()=>Be,Generic:()=>It,Identifier:()=>vn,Immutable:()=>mi,Index:()=>Pc,Infer:()=>En,InstanceType:()=>Jc,Instantiate:()=>To,Integer:()=>At,Interface:()=>Au,Intersect:()=>Te,IsAny:()=>B,IsArray:()=>G,IsBigInt:()=>Je,IsBoolean:()=>Me,IsCall:()=>mn,IsCodec:()=>ur,IsConstructor:()=>ae,IsCyclic:()=>ce,IsDependent:()=>H,IsEnum:()=>le,IsEnumValue:()=>ei,IsFunction:()=>oe,IsGeneric:()=>Bt,IsIdentifier:()=>li,IsImmutable:()=>jt,IsInfer:()=>Y,IsInteger:()=>ye,IsIntersect:()=>M,IsKind:()=>y,IsLiteral:()=>A,IsNever:()=>De,IsNull:()=>Zt,IsNumber:()=>ee,IsObject:()=>L,IsOptional:()=>xe,IsParameter:()=>xi,IsReadonly:()=>Lt,IsRecord:()=>fe,IsRef:()=>ie,IsRefine:()=>ya,IsRest:()=>Tt,IsSchema:()=>ne,IsString:()=>ge,IsSymbol:()=>yt,IsTemplateLiteral:()=>V,IsThis:()=>Pr,IsTuple:()=>K,IsUndefined:()=>tn,IsUnion:()=>g,IsUnknown:()=>Q,IsUnsafe:()=>pr,IsVoid:()=>Qe,KeyOf:()=>Yc,Literal:()=>w,Lowercase:()=>pc,Mapped:()=>il,Module:()=>Jl,Never:()=>D,NonNullable:()=>ul,Null:()=>Vt,Number:()=>ke,Object:()=>T,Omit:()=>ll,Optional:()=>Ho,Parameter:()=>Ft,Parameters:()=>xl,Partial:()=>yl,Pick:()=>kl,Readonly:()=>pi,ReadonlyObject:()=>xo,ReadonlyType:()=>vl,Record:()=>Er,RecordKey:()=>Xt,RecordPattern:()=>je,RecordValue:()=>be,Ref:()=>it,Refine:()=>ui,Required:()=>Gl,Rest:()=>Dt,ReturnType:()=>_l,Script:()=>Ql,String:()=>we,Symbol:()=>Jt,TemplateLiteral:()=>tu,This:()=>Or,Tuple:()=>te,Uncapitalize:()=>uc,Undefined:()=>en,Union:()=>P,Unknown:()=>se,Unsafe:()=>Jo,Uppercase:()=>cc,Void:()=>vr,With:()=>Wl});var ho=Co({pluginId:"memory-engine",operations:{status:{kind:"query",description:"Cognitive health metrics for the memory graph.",input:x.Object({},{additionalProperties:!1}),output:x.Object({atoms_active:x.Integer(),durable_atoms:x.Integer(),bonds:x.Integer(),isolated:x.Integer(),pending:x.Integer(),missing_compact:x.Integer(),by_type:x.Record(x.String(),x.Integer()),recommendations:x.Array(x.String())},{additionalProperties:!0})},search:{kind:"query",description:"FTS search over memory atoms with optional type/domain filters.",input:x.Object({query:x.String({maxLength:500,minLength:1}),limit:x.Optional(x.Integer({maximum:100})),type:x.Optional(x.String({maxLength:40})),domain:x.Optional(x.String({maxLength:200}))},{additionalProperties:!1}),output:x.Object({results:x.Array(x.Object({id:x.String(),title:x.String(),domain:x.Optional(x.String()),type:x.Optional(x.String())}))},{additionalProperties:!0})},atom:{kind:"query",description:"Full atom detail with bonds.",input:x.Object({id:x.String({maxLength:200})},{additionalProperties:!1}),output:x.Object({},{additionalProperties:!0})},domains:{kind:"query",description:"List distinct domains with atom counts.",input:x.Object({},{additionalProperties:!1}),output:x.Object({domains:x.Array(x.Object({domain:x.String(),count:x.Integer()}))},{additionalProperties:!0})},curator_dry:{kind:"action",description:"Run curator in dry-run mode.",input:x.Object({max_atoms:x.Optional(x.Integer({maximum:200}))},{additionalProperties:!1}),output:x.Object({},{additionalProperties:!0})},curator_apply:{kind:"action",description:"Run curator with auto_apply (safe actions only).",input:x.Object({max_atoms:x.Optional(x.Integer({maximum:200}))},{additionalProperties:!1}),output:x.Object({},{additionalProperties:!0})},backups_list:{kind:"query",description:"List available backups.",input:x.Object({},{additionalProperties:!1}),output:x.Object({backups:x.Array(x.Object({file:x.String(),size_bytes:x.Integer(),created:x.String()}))},{additionalProperties:!0})},backup_now:{kind:"action",description:"Create a database backup now.",input:x.Object({},{additionalProperties:!1}),output:x.Object({},{additionalProperties:!0})},questions_list:{kind:"query",description:"List pending human questions.",input:x.Object({limit:x.Optional(x.Integer({maximum:50}))},{additionalProperties:!1}),output:x.Object({questions:x.Array(x.Object({id:x.String(),question:x.String(),question_type:x.Optional(x.String()),status:x.String()}))},{additionalProperties:!0})},question_answer:{kind:"action",description:"Answer a pending question (resolve, optionally archive atom).",input:x.Object({question_id:x.String({maxLength:200}),answer:x.String({maxLength:2e3}),action:x.Optional(x.String({maxLength:40}))},{additionalProperties:!1}),output:x.Object({},{additionalProperties:!0})},atom_soft_delete:{kind:"action",description:"Soft-delete an atom (status='deleted', reversible).",input:x.Object({id:x.String({maxLength:200})},{additionalProperties:!1}),output:x.Object({},{additionalProperties:!0})},atom_update_domain:{kind:"action",description:"Move an atom to a different domain.",input:x.Object({id:x.String({maxLength:200}),new_domain:x.String({maxLength:200})},{additionalProperties:!1}),output:x.Object({},{additionalProperties:!0})}},events:{}});var bZ={id:ho.pluginId,activate(e){e.ui.registerNavigation({id:"memory-engine",label:"Memory Engine",page:{id:"memory-engine"},icon:"brain"}),e.ui.registerPage({id:"memory-engine",label:"Memory Engine",mount(t,n){let r=Ro(ho,n.host),o=document.createElement("div");o.style.cssText="padding:16px;font-family:system-ui,sans-serif;max-width:1100px;";let m=document.createElement("h1");m.textContent="Memory Engine",m.style.margin="0 0 12px 0";let p=document.createElement("div");p.style.cssText="display:flex;gap:4px;border-bottom:1px solid rgba(127,127,127,0.3);margin-bottom:16px;";let l={},f=(b,C)=>{let U=document.createElement("button");U.textContent=C,U.dataset.tab=b,U.style.cssText="padding:8px 16px;border:none;background:transparent;color:inherit;cursor:pointer;font-size:14px;border-bottom:2px solid transparent;",U.onclick=()=>{for(let ue of Object.keys(l))l[ue].style.display=ue===b?"block":"none";for(let ue of p.querySelectorAll("button"))ue.style.borderBottomColor=ue===U?"accent":"transparent"},p.append(U);let X=document.createElement("div");X.dataset.page=b,X.style.display="none",l[b]=X,o.append(X)};f("overview","Panoramica"),f("atoms","Atomi"),f("curator","Curator"),f("backup","Backup"),f("questions","Domande");let v=b=>{let C=document.createElement("div");return C.textContent=b,C.style.opacity="0.6",C},O=l.overview,_=document.createElement("div");_.style.cssText="display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-bottom:16px;";let pe=b=>{let C=document.createElement("div");C.style.cssText="background:rgba(127,127,127,0.1);border-radius:8px;padding:10px 14px;";let U=document.createElement("div");U.textContent=b,U.style.cssText="font-size:11px;opacity:0.7;text-transform:uppercase;letter-spacing:0.5px;";let X=document.createElement("div");return X.textContent="\u2026",X.style.cssText="font-size:24px;font-weight:600;",X.dataset.stat=b,C.append(U,X),C};_.append(pe("Atomi attivi"),pe("Durevoli"),pe("Bond"),pe("Isolati"),pe("Pending"),pe("Da compattare"));let rt=document.createElement("div");rt.style.cssText="padding:12px;border-radius:8px;background:rgba(127,127,127,0.08);font-size:13px;";let Pe=(b,C)=>{let U=_.querySelector('[data-stat="'+b+'"]');U&&(U.textContent=String(C))};O.append(_,rt);let Ne=l.atoms,qe=document.createElement("div");qe.style.cssText="display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap;";let pt=document.createElement("input");pt.placeholder="Cerca nella memoria\u2026",pt.setAttribute("aria-label","Cerca atomi"),pt.style.cssText="flex:1;min-width:200px;padding:8px 12px;border-radius:6px;border:1px solid rgba(127,127,127,0.4);background:transparent;color:inherit;";let ut=document.createElement("select");ut.style.cssText="padding:8px;border-radius:6px;border:1px solid rgba(127,127,127,0.4);background:transparent;color:inherit;";for(let b of["","fact","decision","procedure","preference","project","note","log"]){let C=document.createElement("option");C.value=b,C.textContent=b||"tutti i tipi",ut.append(C)}let Pt=document.createElement("select");Pt.style.cssText=ut.style.cssText;let Ge=document.createElement("button");Ge.textContent="Cerca",Ge.style.cssText="padding:8px 16px;border-radius:6px;border:1px solid rgba(127,127,127,0.4);background:rgba(127,127,127,0.15);color:inherit;cursor:pointer;",qe.append(pt,ut,Pt,Ge);let at=document.createElement("div");at.style.cssText="display:flex;flex-direction:column;gap:6px;";let ct=document.createElement("div");ct.style.cssText="margin-top:12px;padding:12px;border-radius:8px;background:rgba(127,127,127,0.08);font-size:12px;overflow:auto;white-space:pre-wrap;display:none;max-height:300px;",Ne.append(qe,at,ct);let Yn=async()=>{let b=pt.value.trim();if(b){at.textContent="\u2026";try{let C={query:b};ut.value&&(C.type=ut.value),Pt.value&&(C.domain=Pt.value);let U=await r.invoke("search",C);if(at.textContent="",!U.results?.length){at.append(v("Nessun risultato."));return}for(let X of U.results){let ue=document.createElement("div");ue.style.cssText="display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-radius:6px;border:1px solid rgba(127,127,127,0.25);cursor:pointer;";let ot=document.createElement("div");ot.textContent=X.title,ot.style.fontWeight="500";let ze=document.createElement("div");ze.textContent=(X.type||"")+" \xB7 "+(X.domain||""),ze.style.cssText="font-size:11px;opacity:0.6;white-space:nowrap;margin-left:12px;",ue.append(ot,ze),ue.onclick=async()=>{try{let In=await r.invoke("atom",{id:X.id});ct.textContent=JSON.stringify(In,null,2),ct.style.display="block"}catch(In){ct.textContent=String(In),ct.style.display="block"}},at.append(ue)}}catch(C){at.textContent="errore: "+String(C)}}};Ge.onclick=Yn,pt.onkeydown=b=>{b.key==="Enter"&&Yn()};let la=l.curator,dn=document.createElement("div");dn.style.cssText="display:flex;gap:8px;margin-bottom:12px;";let lt=document.createElement("button");lt.textContent="Dry-run",lt.style.cssText=Ge.style.cssText;let Gt=document.createElement("button");Gt.textContent="Applica",Gt.style.cssText=Ge.style.cssText+"font-weight:600;",dn.append(lt,Gt);let fn=document.createElement("pre");fn.style.cssText="padding:12px;border-radius:8px;background:rgba(127,127,127,0.08);font-size:12px;white-space:pre-wrap;",la.append(dn,fn);let Eo=async b=>{(b?Gt:lt).disabled=!0,fn.textContent="\u2026";try{let C=await r.invoke(b?"curator_apply":"curator_dry",{});fn.textContent=(b?"APPLICATO":"DRY-RUN")+" \u2014 compact: "+C.compact+" \xB7 bond suggeriti: "+C.bonds_suggested+(b?" \xB7 bond applicati: "+C.bonds_applied:"")+" \xB7 isolati classificati: "+C.isolated_classified+" \xB7 promotion: "+C.promotions+" \xB7 merge: "+C.merges,await vo()}catch(C){fn.textContent=String(C)}finally{(b?Gt:lt).disabled=!1}};lt.onclick=()=>Eo(!1),Gt.onclick=()=>Eo(!0);let Yl=l.backup,ko=document.createElement("div"),zt=document.createElement("button");zt.textContent="Crea backup ora",zt.style.cssText=Ge.style.cssText;let xn=document.createElement("span");xn.style.cssText="font-size:12px;opacity:0.8;margin-left:8px;",ko.append(zt,xn);let vt=document.createElement("div");vt.style.cssText="display:flex;flex-direction:column;gap:6px;margin-top:12px;",Yl.append(ko,vt);let Oo=async()=>{vt.textContent="\u2026";try{let b=await r.invoke("backups_list",{});if(vt.textContent="",!b.backups?.length){vt.append(v("Nessun backup."));return}for(let C of b.backups){let U=document.createElement("div");U.style.cssText="display:flex;justify-content:space-between;padding:8px 12px;border-radius:6px;border:1px solid rgba(127,127,127,0.25);font-size:13px;";let X=document.createElement("span");X.textContent=C.file;let ue=document.createElement("span");ue.textContent=(C.size_bytes/1048576).toFixed(1)+" MB \xB7 "+C.created.slice(0,16).replace("T"," "),ue.style.opacity="0.6",U.append(X,ue),vt.append(U)}}catch(b){vt.textContent=String(b)}};zt.onclick=async()=>{zt.disabled=!0,xn.textContent="\u2026";try{let b=await r.invoke("backup_now",{});xn.textContent=b.ok?"OK: "+(b.size_bytes/1048576).toFixed(1)+" MB":"KO: "+b.reason,await Oo()}catch(b){xn.textContent=String(b)}finally{zt.disabled=!1}};let Xl=l.questions,Ct=document.createElement("div");Ct.style.cssText="display:flex;flex-direction:column;gap:8px;",Xl.append(Ct);let Po=async()=>{Ct.textContent="\u2026";try{let b=await r.invoke("questions_list",{});if(Ct.textContent="",!b.questions?.length){Ct.append(v("Nessuna domanda in attesa."));return}for(let C of b.questions){let U=document.createElement("div");U.style.cssText="padding:12px;border-radius:8px;border:1px solid rgba(127,127,127,0.25);";let X=document.createElement("div");X.textContent=C.question,X.style.cssText="font-size:14px;margin-bottom:8px;";let ue=document.createElement("div");ue.style.cssText="display:flex;gap:8px;";let ot=document.createElement("input");ot.placeholder="La tua risposta\u2026",ot.style.cssText="flex:1;padding:6px 10px;border-radius:6px;border:1px solid rgba(127,127,127,0.4);background:transparent;color:inherit;";let ze=document.createElement("button");ze.textContent="Rispondi",ze.style.cssText=Ge.style.cssText,ze.onclick=async()=>{if(ot.value.trim()){ze.disabled=!0;try{await r.invoke("question_answer",{question_id:C.id,answer:ot.value.trim()}),await Po()}catch(In){X.textContent+=" [errore: "+String(In)+"]",ze.disabled=!1}}},ue.append(ot,ze),U.append(X,ue),Ct.append(U)}}catch(b){Ct.textContent=String(b)}},vo=async()=>{try{let b=await r.invoke("status",{});if(n.signal.aborted)return;Pe("Atomi attivi",b.atoms_active),Pe("Durevoli",b.durable_atoms),Pe("Bond",b.bonds),Pe("Isolati",b.isolated),Pe("Pending",b.pending),Pe("Da compattare",b.missing_compact),rt.textContent="\u{1F4A1} "+(b.recommendations||[]).join(" \xB7 ")}catch(b){rt.textContent=String(b)}};return p.querySelector("button")?.click(),o.prepend(m,p),t.append(o),vo(),Oo(),Po(),r.invoke("domains",{}).then(b=>{for(let C of b.domains||[]){let U=document.createElement("option");U.value=C.domain,U.textContent=C.domain+" ("+C.count+")",Pt.append(U)}}).catch(()=>{}),{dispose:()=>o.remove()}}})}};export{bZ as default};
|