eklavya 1.26.0 → 1.27.1
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/README.md +48 -42
- package/dist/artifacts.js +214 -0
- package/dist/artifacts.js.map +1 -0
- package/dist/assets/artifact-template.html +144 -0
- package/dist/assets/dashboard.html +131 -11
- package/dist/assets/tokens.css +6 -4
- package/dist/assets/tutor/SKILL.md +7 -0
- package/dist/cli-memory.js +6 -3
- package/dist/cli-memory.js.map +1 -1
- package/dist/cli.js +85 -2
- package/dist/cli.js.map +1 -1
- package/dist/config.js +3 -0
- package/dist/config.js.map +1 -1
- package/dist/dashboard.js +41 -1
- package/dist/dashboard.js.map +1 -1
- package/dist/hooks/memory-lib.js +1 -1
- package/dist/hooks/memory-lib.js.map +1 -1
- package/dist/hooks/session-start.js +10 -2
- package/dist/hooks/session-start.js.map +1 -1
- package/dist/install-lock.js +155 -0
- package/dist/install-lock.js.map +1 -0
- package/dist/install.js +64 -45
- package/dist/install.js.map +1 -1
- package/dist/memory/reservation.js +15 -5
- package/dist/memory/reservation.js.map +1 -1
- package/dist/memory/worker.js +72 -31
- package/dist/memory/worker.js.map +1 -1
- package/dist/migrations/015_event_link_indexes.sql +24 -0
- package/dist/paths.js +8 -0
- package/dist/paths.js.map +1 -1
- package/dist/plugin/.claude-plugin/plugin.json +1 -1
- package/dist/plugin/agents/explainer.md +57 -0
- package/dist/plugin/agents/tutor.md +7 -0
- package/dist/plugin/cli/CLAUDE.md +60 -108
- package/dist/plugin/hooks/CLAUDE.md +118 -357
- package/dist/plugin/hooks/run.mjs +104 -21
- package/dist/plugin/skills/CLAUDE.md +106 -291
- package/dist/plugin/skills/tutor/SKILL.md +7 -0
- package/dist/tools/config_tools.js +4 -0
- package/dist/tools/config_tools.js.map +1 -1
- package/dist/tools/record_attempt.js +25 -1
- package/dist/tools/record_attempt.js.map +1 -1
- package/dist/update.js +7 -83
- package/dist/update.js.map +1 -1
- package/dist/user-skill/eklavya/SKILL.md +8 -0
- package/dist/user-skill/eklavya-artifacts/SKILL.md +135 -0
- package/package.json +1 -1
|
@@ -97,7 +97,7 @@
|
|
|
97
97
|
the viewport, so it never opens off-screen on a phone or a short window. */
|
|
98
98
|
.picker { position:fixed; z-index:40; min-width:220px; max-width:calc(100vw - 16px);
|
|
99
99
|
background:var(--panel); border:1px solid var(--line-2); padding:var(--space-1) 0;
|
|
100
|
-
box-shadow:
|
|
100
|
+
box-shadow:var(--shadow-lg); overflow-y:auto; }
|
|
101
101
|
.picker[hidden] { display:none; }
|
|
102
102
|
.picker__label { font-family:var(--font-mono); font-size:10px; letter-spacing:var(--tracking-caps);
|
|
103
103
|
text-transform:uppercase; color:var(--faint); padding:var(--space-2) var(--space-4) var(--space-1); margin:0; }
|
|
@@ -105,7 +105,7 @@
|
|
|
105
105
|
background:none; border:0; color:var(--dim); font:inherit; font-size:14px;
|
|
106
106
|
padding:var(--space-2) var(--space-4); cursor:pointer; }
|
|
107
107
|
.picker button:hover, .picker button:focus-visible { background:var(--mass); color:var(--ink); box-shadow:none; outline:none; }
|
|
108
|
-
.picker button:focus-visible { box-shadow:inset 2px 0 0 var(--spot); }
|
|
108
|
+
.picker button:focus-visible { box-shadow:inset 2px 0 0 var(--spot); } /* inset: the picker scrolls, so an outset ring would clip */
|
|
109
109
|
.picker button[aria-checked="true"] { color:var(--ink); }
|
|
110
110
|
.picker button span { flex:1; }
|
|
111
111
|
.picker .check { width:15px; height:15px; color:var(--spot); visibility:hidden; }
|
|
@@ -119,6 +119,8 @@
|
|
|
119
119
|
transition:color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease); }
|
|
120
120
|
nav.side__nav a:hover { color:var(--ink); background:var(--mass); }
|
|
121
121
|
nav.side__nav a[aria-current="page"] { color:var(--ink); border-left-color:var(--spot); background:var(--mass); }
|
|
122
|
+
/* --faint misses 4.5:1 on --mass in ink */
|
|
123
|
+
nav.side__nav a[aria-current="page"] i, nav.side__nav a:hover i { color:var(--dim); }
|
|
122
124
|
nav.side__nav a svg { width:17px; height:17px; flex:none; color:var(--faint); }
|
|
123
125
|
nav.side__nav a[aria-current="page"] svg { color:var(--spot); }
|
|
124
126
|
nav.side__nav a i { margin-left:auto; font-style:normal; font-family:var(--font-mono);
|
|
@@ -266,10 +268,10 @@
|
|
|
266
268
|
.meter.mute > i { background:var(--faint-2); }
|
|
267
269
|
|
|
268
270
|
.pill { display:inline-block; font-family:var(--font-mono); font-size:11px; padding:2px 8px;
|
|
269
|
-
border-radius:
|
|
271
|
+
border-radius:0; background:var(--mass); color:var(--dim); white-space:nowrap; }
|
|
270
272
|
.pill.ok { background:var(--spot-soft); color:var(--spot); }
|
|
271
273
|
.pill.due { color:var(--warning); }
|
|
272
|
-
.pill.new { color:var(--
|
|
274
|
+
.pill.new { color:var(--dim); }
|
|
273
275
|
|
|
274
276
|
.grade { font-family:var(--font-mono); font-size:11.5px; padding:2px 8px; white-space:nowrap;
|
|
275
277
|
background:var(--mass); color:var(--dim); }
|
|
@@ -286,7 +288,7 @@
|
|
|
286
288
|
.seg > span { display:block; height:100%; }
|
|
287
289
|
.seg__key { display:flex; gap:var(--space-5); flex-wrap:wrap; margin-top:var(--space-3);
|
|
288
290
|
font-size:12.5px; color:var(--dim); }
|
|
289
|
-
.seg__key b { display:inline-block; width:9px; height:9px; margin-right:var(--space-2); }
|
|
291
|
+
.seg__key b { display:inline-block; width:9px; height:9px; margin-right:var(--space-2); border:1px solid var(--line-2); }
|
|
290
292
|
|
|
291
293
|
/* ---------- charts ---------- */
|
|
292
294
|
.legend { display:flex; gap:var(--space-5); font-size:12.5px; color:var(--dim);
|
|
@@ -298,6 +300,7 @@
|
|
|
298
300
|
.axis { font-family:var(--font-mono); font-size:10px; fill:var(--faint); }
|
|
299
301
|
.hit { fill:transparent; cursor:pointer; }
|
|
300
302
|
.hit:hover + .col, .hit:focus-visible + .col { opacity:.72; }
|
|
303
|
+
.hit:focus-visible { outline:2px solid var(--spot); outline-offset:-2px; }
|
|
301
304
|
.tip { position:absolute; pointer-events:none; opacity:0; transform:translate(-50%,-100%);
|
|
302
305
|
background:var(--bg); border:1px solid var(--line-2); color:var(--ink);
|
|
303
306
|
padding:var(--space-3); font-size:var(--text-xs); line-height:1.6; white-space:nowrap;
|
|
@@ -393,7 +396,7 @@
|
|
|
393
396
|
background:none; border:1px solid var(--line-2); color:var(--ink); width:34px; height:34px; cursor:pointer; }
|
|
394
397
|
.side__close svg { width:16px; height:16px; }
|
|
395
398
|
.side__brand { padding-right:64px; }
|
|
396
|
-
.scrim { position:fixed; inset:0; z-index:25; background:
|
|
399
|
+
.scrim { position:fixed; inset:0; z-index:25; background:color-mix(in srgb, var(--bg) 70%, transparent); }
|
|
397
400
|
.scrim.is-open { display:block; }
|
|
398
401
|
body.drawer-open { overflow:hidden; }
|
|
399
402
|
main { padding:var(--space-6) var(--space-5) var(--space-16); }
|
|
@@ -566,6 +569,7 @@ const T = {
|
|
|
566
569
|
session: { page:1 },
|
|
567
570
|
memory: { page:1, q:'', tag:'all', since:'', until:'' },
|
|
568
571
|
reuse: { page:1, only:'all' },
|
|
572
|
+
artifacts:{ page:1, q:'' },
|
|
569
573
|
};
|
|
570
574
|
const PER = 20;
|
|
571
575
|
|
|
@@ -1118,7 +1122,7 @@ function viewLearningDashboard() {
|
|
|
1118
1122
|
${card('Where you stand', 'The catalogue is a library, not a to-do list — untouched concepts are not debt.',
|
|
1119
1123
|
segbar([
|
|
1120
1124
|
{ label:'Mastered', n:mastered.length, color:'var(--spot)' },
|
|
1121
|
-
{ label:'Learning', n:seen.length - mastered.length, color:'var(--
|
|
1125
|
+
{ label:'Learning', n:seen.length - mastered.length, color:'color-mix(in srgb, var(--spot) 45%, var(--mass))' },
|
|
1122
1126
|
{ label:'Not asked', n:Math.max(0, scoped.length - seen.length), color:'var(--mass)' },
|
|
1123
1127
|
]) + `<p style="margin:var(--space-4) 0 0;color:var(--faint);font-size:13.5px">
|
|
1124
1128
|
A concept is mastered at score 0.7 with two or more passes. Score decays about
|
|
@@ -1698,7 +1702,7 @@ function viewDomain(name) {
|
|
|
1698
1702
|
</div>`,
|
|
1699
1703
|
card(null, null, segbar([
|
|
1700
1704
|
{ label:'Mastered', n:seen.filter((c) => c.mastered).length, color:'var(--spot)' },
|
|
1701
|
-
{ label:'Learning', n:seen.filter((c) => !c.mastered).length, color:'var(--
|
|
1705
|
+
{ label:'Learning', n:seen.filter((c) => !c.mastered).length, color:'color-mix(in srgb, var(--spot) 45%, var(--mass))' },
|
|
1702
1706
|
{ label:'Not asked', n:all.length - seen.length, color:'var(--mass)' },
|
|
1703
1707
|
])),
|
|
1704
1708
|
card(null, null, table([{t:'Concept'},{t:'Tier'},{t:'Score'},{t:'Asked',n:1},{t:'State'},{t:'From your code'}], rows)
|
|
@@ -2162,8 +2166,8 @@ function viewHealth() {
|
|
|
2162
2166
|
/* ============================================================
|
|
2163
2167
|
Workflows and routes
|
|
2164
2168
|
|
|
2165
|
-
|
|
2166
|
-
|
|
2169
|
+
Three workflows, one shell. The registry below is the only description of
|
|
2170
|
+
any of them: the sidebar, the picker, the route resolver and the page renderer all
|
|
2167
2171
|
read it, so the selector, the highlighted item and the screen cannot disagree
|
|
2168
2172
|
about where the reader is.
|
|
2169
2173
|
|
|
@@ -2171,7 +2175,106 @@ function viewHealth() {
|
|
|
2171
2175
|
workflow, the page, the highlighted item and the project scope, so a refresh,
|
|
2172
2176
|
a pasted link or Back/Forward rebuilds the same screen from nothing.
|
|
2173
2177
|
============================================================ */
|
|
2178
|
+
/* ============================================================
|
|
2179
|
+
Artifacts — the pages an agent wrote under ~/.eklavya/artifacts/.
|
|
2180
|
+
`S.artifacts` is read from the files on every load; opening one is a plain
|
|
2181
|
+
link to `/artifacts/<id>`, which the server serves sandboxed, in a new tab.
|
|
2182
|
+
============================================================ */
|
|
2183
|
+
const ARTIFACT_KINDS = ['all', 'explainer', 'artifact'];
|
|
2184
|
+
const artifactsInScope = () => (S.artifacts ?? []).filter((a) => inScope(a.project));
|
|
2185
|
+
const artifactUrl = (a) => '/artifacts/' + a.id.split('/').map(encodeURIComponent).join('/');
|
|
2186
|
+
|
|
2187
|
+
function artifactRow(a) {
|
|
2188
|
+
const known = a.concept && S.concepts.some((c) => c.slug === a.concept);
|
|
2189
|
+
const concept = !a.concept ? '<span class="slug">—</span>'
|
|
2190
|
+
: known ? `<a class="link slug" data-go="${esc(LH('concept', a.concept))}">${esc(a.concept)}</a>`
|
|
2191
|
+
: `<span class="slug">${esc(a.concept)}</span>`;
|
|
2192
|
+
return `<tr>
|
|
2193
|
+
<td style="min-width:260px"><a class="link title" href="${esc(artifactUrl(a))}" target="_blank" rel="noopener">${esc(a.title)}</a>
|
|
2194
|
+
${a.description ? `<div class="ctx">${esc(a.description)}</div>` : ''}</td>
|
|
2195
|
+
<td><span class="pill">${esc(a.kind)}</span></td>
|
|
2196
|
+
<td>${concept}</td>
|
|
2197
|
+
<td class="num slug" style="white-space:nowrap">${esc(stamp(a.created))}</td></tr>`;
|
|
2198
|
+
}
|
|
2199
|
+
|
|
2200
|
+
function viewArtifacts(param) {
|
|
2201
|
+
const t = T.artifacts;
|
|
2202
|
+
const kind = ARTIFACT_KINDS.includes(param) ? param : 'all';
|
|
2203
|
+
const all = artifactsInScope();
|
|
2204
|
+
const q = t.q.trim().toLowerCase();
|
|
2205
|
+
const list = all.filter((a) => {
|
|
2206
|
+
if (kind !== 'all' && a.kind !== kind) return false;
|
|
2207
|
+
if (q && ![a.title, a.description, a.concept ?? '', pname(a.project), a.id].join(' ').toLowerCase().includes(q)) return false;
|
|
2208
|
+
return true;
|
|
2209
|
+
});
|
|
2210
|
+
const p = page('artifacts', list.length);
|
|
2211
|
+
// The page's slice, grouped by project in the order it arrives (newest first).
|
|
2212
|
+
const groups = new Map();
|
|
2213
|
+
for (const a of slice(list, p)) {
|
|
2214
|
+
const id = pid(a.project);
|
|
2215
|
+
if (!groups.has(id)) groups.set(id, []);
|
|
2216
|
+
groups.get(id).push(a);
|
|
2217
|
+
}
|
|
2218
|
+
const counts = { all: all.length, explainer: all.filter((a) => a.kind === 'explainer').length };
|
|
2219
|
+
counts.artifact = all.length - counts.explainer;
|
|
2220
|
+
const chip = (k, label) => `<button class="chip" data-go="${esc(AH('dashboard', k === 'all' ? null : k))}" aria-pressed="${kind === k}">${label} ${counts[k]}</button>`;
|
|
2221
|
+
const cols = [{t:'Page'},{t:'Kind'},{t:'Concept'},{t:'Written',n:1}];
|
|
2222
|
+
const body = !list.length
|
|
2223
|
+
? `<p class="empty">${all.length ? 'Nothing matches that search.' : 'No artifacts yet. Ask for an Eklavya artifact, or turn on explain_on_wrong, and they land here.'}</p>`
|
|
2224
|
+
: [...groups].map(([id, rows]) =>
|
|
2225
|
+
`<h3 class="slug" style="margin:var(--space-5) 0 var(--space-2)">${esc(projectById(id)?.name ?? (id === '~' ? 'no project' : base(id)))}</h3>`
|
|
2226
|
+
+ table(cols, rows.map(artifactRow))).join('') + pager('artifacts', list.length, p);
|
|
2227
|
+
return [
|
|
2228
|
+
`<div>
|
|
2229
|
+
<h1 class="page__title">Artifacts</h1>
|
|
2230
|
+
<p class="page__sub">Pages your agent wrote for you — explainers after a missed question, and anything you asked
|
|
2231
|
+
to have turned into a page. Each opens in a new tab, from <code>~/.eklavya/artifacts/</code>.</p>
|
|
2232
|
+
</div>`,
|
|
2233
|
+
tiles([
|
|
2234
|
+
['Artifacts', all.length, 'in scope'],
|
|
2235
|
+
['Explainers', counts.explainer, 'written after a question', null, counts.explainer ? AH('dashboard', 'explainer') : null],
|
|
2236
|
+
['Projects', new Set(all.map((a) => pid(a.project))).size, 'with at least one page', null, AH('projects')],
|
|
2237
|
+
]),
|
|
2238
|
+
card(null, null,
|
|
2239
|
+
`<div class="filters">
|
|
2240
|
+
<div class="grow"><input type="search" id="aq" value="${esc(t.q)}" placeholder="Search title, description, concept or project…" aria-label="Search artifacts"></div>
|
|
2241
|
+
</div>
|
|
2242
|
+
<div class="chips">${chip('all','All')}${chip('explainer','Explainers')}${chip('artifact','Other pages')}</div>
|
|
2243
|
+
<div style="margin-top:var(--space-4)">${body}</div>`),
|
|
2244
|
+
].join('');
|
|
2245
|
+
}
|
|
2246
|
+
|
|
2247
|
+
function viewArtifactProjects() {
|
|
2248
|
+
const by = new Map();
|
|
2249
|
+
for (const a of artifactsInScope()) {
|
|
2250
|
+
const id = pid(a.project);
|
|
2251
|
+
const r = by.get(id) ?? { id, n: 0, explainers: 0, last: a.created };
|
|
2252
|
+
r.n += 1; if (a.kind === 'explainer') r.explainers += 1;
|
|
2253
|
+
if (a.created > r.last) r.last = a.created;
|
|
2254
|
+
by.set(id, r);
|
|
2255
|
+
}
|
|
2256
|
+
// ponytail: a project the inventory has never seen (a directory with no
|
|
2257
|
+
// Eklavya activity) cannot be a scope, so its row is not a link. Upgrade:
|
|
2258
|
+
// teach `projectInventory` to count artifact projects.
|
|
2259
|
+
const rows = [...by.values()].sort((a, b) => (a.last < b.last ? 1 : -1)).map((r) => {
|
|
2260
|
+
const p = projectById(r.id);
|
|
2261
|
+
return `<tr${p ? ` class="row" data-go="${esc(AH('dashboard', null, { project: r.id }))}"` : ''}>
|
|
2262
|
+
<td style="min-width:220px"><span class="title">${esc(p?.name ?? base(r.id))}</span><div class="slug">${esc(r.id)}</div></td>
|
|
2263
|
+
<td class="num">${r.n}</td><td class="num">${r.explainers || '—'}</td>
|
|
2264
|
+
<td class="num slug">${esc(ago(r.last))}</td></tr>`;
|
|
2265
|
+
});
|
|
2266
|
+
return [
|
|
2267
|
+
`<div>
|
|
2268
|
+
<h1 class="page__title">Projects</h1>
|
|
2269
|
+
<p class="page__sub">Artifacts are filed by the project they were written in — the main checkout, for a worktree.
|
|
2270
|
+
Open one to see only its pages.</p>
|
|
2271
|
+
</div>`,
|
|
2272
|
+
card(null, null, table([{t:'Project'},{t:'Pages',n:1},{t:'Explainers',n:1},{t:'Last written',n:1}], rows)),
|
|
2273
|
+
].join('');
|
|
2274
|
+
}
|
|
2275
|
+
|
|
2174
2276
|
const ICONS = {
|
|
2277
|
+
artifacts: '<path d="M6 3h9l4 4v14H6z"/><path d="M14 3v5h5"/><path d="M9 13h7M9 17h5"/>',
|
|
2175
2278
|
learning: '<path d="M4 19V6a2 2 0 0 1 2-2h13v13H6a2 2 0 0 0-2 2z"/><path d="M6 21h13v-4"/><path d="M9 8h6"/>',
|
|
2176
2279
|
memory: '<ellipse cx="12" cy="6" rx="8" ry="3"/><path d="M4 6v6c0 1.7 3.6 3 8 3s8-1.3 8-3V6"/><path d="M4 12v6c0 1.7 3.6 3 8 3s8-1.3 8-3v-6"/>',
|
|
2177
2280
|
dashboard: '<path d="M3 12l9-9 9 9"/><path d="M5 10v10h14V10"/>',
|
|
@@ -2230,6 +2333,16 @@ const WORKFLOWS = {
|
|
|
2230
2333
|
health: { label: 'Health', view: () => viewHealth() },
|
|
2231
2334
|
},
|
|
2232
2335
|
},
|
|
2336
|
+
artifacts: {
|
|
2337
|
+
name: 'Artifacts',
|
|
2338
|
+
groups: [
|
|
2339
|
+
{ id: 'library', label: 'Library', items: ['projects'] },
|
|
2340
|
+
],
|
|
2341
|
+
pages: {
|
|
2342
|
+
dashboard: { label: 'Dashboard', view: (p) => viewArtifacts(p) },
|
|
2343
|
+
projects: { label: 'Projects', view: () => viewArtifactProjects() },
|
|
2344
|
+
},
|
|
2345
|
+
},
|
|
2233
2346
|
};
|
|
2234
2347
|
|
|
2235
2348
|
/**
|
|
@@ -2247,6 +2360,7 @@ function href(wf, page, param, q = {}) {
|
|
|
2247
2360
|
}
|
|
2248
2361
|
const LH = (page, param, q) => href('learning', page, param, q);
|
|
2249
2362
|
const MH = (page, param, q) => href('memory', page, param, q);
|
|
2363
|
+
const AH = (page, param, q) => href('artifacts', page, param, q);
|
|
2250
2364
|
/** A session opened from Memory stays in Memory, and from Learning in Learning. */
|
|
2251
2365
|
const sessHref = (id) => href(CUR.wf, 'session', id);
|
|
2252
2366
|
|
|
@@ -2355,6 +2469,7 @@ function navCounts(wf) {
|
|
|
2355
2469
|
domains: new Set(conceptsInScope().map((c) => c.domain)).size,
|
|
2356
2470
|
};
|
|
2357
2471
|
}
|
|
2472
|
+
if (wf === 'artifacts') return { projects: new Set(artifactsInScope().map((a) => pid(a.project))).size };
|
|
2358
2473
|
return {
|
|
2359
2474
|
timeline: sum((p) => p.memory.entries),
|
|
2360
2475
|
sessions: sum((p) => p.memory.sessions),
|
|
@@ -2385,7 +2500,7 @@ function renderNav(wf, active) {
|
|
|
2385
2500
|
const id = `grp-${wf}-${g.id}`;
|
|
2386
2501
|
return `<div class="nav__group">
|
|
2387
2502
|
<button type="button" class="nav__toggle" id="tog-${wf}-${g.id}" data-group="${g.id}" aria-expanded="${open}" aria-controls="${id}">
|
|
2388
|
-
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" aria-hidden="true"><path d="M6 9l6 6 6-6"/></svg>${esc(g.label)}
|
|
2503
|
+
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M6 9l6 6 6-6"/></svg>${esc(g.label)}
|
|
2389
2504
|
</button>
|
|
2390
2505
|
<div class="nav__items" id="${id}" role="group" aria-label="${esc(g.label)}"${open ? '' : ' hidden'}>${g.items.map(item).join('')}</div>
|
|
2391
2506
|
</div>`;
|
|
@@ -2694,6 +2809,11 @@ $('view').addEventListener('input', (e) => {
|
|
|
2694
2809
|
T.concepts.page = 1;
|
|
2695
2810
|
render({ id:'q', pos:e.target.selectionStart });
|
|
2696
2811
|
}
|
|
2812
|
+
if (e.target.id === 'aq') {
|
|
2813
|
+
T.artifacts.q = e.target.value;
|
|
2814
|
+
T.artifacts.page = 1;
|
|
2815
|
+
render({ id:'aq', pos:e.target.selectionStart });
|
|
2816
|
+
}
|
|
2697
2817
|
if (e.target.id === 'mq') {
|
|
2698
2818
|
T.memory.q = e.target.value;
|
|
2699
2819
|
T.memory.page = 1;
|
package/dist/assets/tokens.css
CHANGED
|
@@ -40,10 +40,9 @@
|
|
|
40
40
|
--vd-900: #052E2B;
|
|
41
41
|
|
|
42
42
|
/* ---------- SEMANTIC (real errors and warnings only) ----------
|
|
43
|
-
Kept off the accent hue so state never reads as branding.
|
|
44
|
-
redefined per ground below: an orange that carries on ink is
|
|
45
|
-
cream, which fails as text and as a chart fill alike. */
|
|
46
|
-
--error: #E5484D;
|
|
43
|
+
Kept off the accent hue so state never reads as branding. --warning and
|
|
44
|
+
--error are redefined per ground below: an orange that carries on ink is
|
|
45
|
+
2.3:1 on cream, which fails as text and as a chart fill alike. */
|
|
47
46
|
--info: #4A9EFF;
|
|
48
47
|
|
|
49
48
|
/* ---------- TYPE FAMILIES ----------
|
|
@@ -144,6 +143,7 @@
|
|
|
144
143
|
--glow-low: rgba(25,150,136,.10);
|
|
145
144
|
--shot-op: .28; /* the arrow scene, as ambient art */
|
|
146
145
|
--warning: #E8920C;
|
|
146
|
+
--error: #FF6166; /* 4.82:1 on its own 12% tint over --panel */
|
|
147
147
|
--code-bg: var(--mass); /* the well behind a code block */
|
|
148
148
|
--shadow-lg: 0 12px 28px rgba(0,0,0,.45);
|
|
149
149
|
--ring: 0 0 0 2px var(--bg), 0 0 0 4px var(--spot);
|
|
@@ -173,6 +173,7 @@
|
|
|
173
173
|
--glow-low: rgba(14,110,102,.05);
|
|
174
174
|
--shot-op: .5;
|
|
175
175
|
--warning: #7A4B00; /* 5.21:1 on --mass */
|
|
176
|
+
--error: #A8201A; /* 4.70:1 on its own 12% tint over --panel */
|
|
176
177
|
/* A syntax theme's dimmest token (comments) lands at 3.9:1 on --mass. The
|
|
177
178
|
well is lightened rather than the theme repainted, which lifts every
|
|
178
179
|
token at once; the frame's border is what still reads it as a block. */
|
|
@@ -197,4 +198,5 @@
|
|
|
197
198
|
--term-spot: var(--vd-300);
|
|
198
199
|
--term-cmd: #8ECF7A;
|
|
199
200
|
--term-str: #E6C060;
|
|
201
|
+
--term-err: #E5484D;
|
|
200
202
|
}
|
|
@@ -168,6 +168,13 @@ tool exists to prevent. **Read `references/grading.md` before you grade** — bo
|
|
|
168
168
|
scales, how long feedback may be, the sequence a blank earns, and what
|
|
169
169
|
`already_taught` changes.
|
|
170
170
|
|
|
171
|
+
**A missed answer can come back with `explain`.** That is `explain_on_wrong` at
|
|
172
|
+
work: follow its `instruction` exactly. The page is written in the background
|
|
173
|
+
and opens by itself, so give the verdict, say the page is on its way, and go
|
|
174
|
+
back to the task — no longer explanation, no waiting. When the developer asks
|
|
175
|
+
for something to be explained as a page ("explain this to me", "make me a page
|
|
176
|
+
on this"), start the same background explainer whatever the setting says.
|
|
177
|
+
|
|
171
178
|
## The dials
|
|
172
179
|
|
|
173
180
|
**Mode** is how hard to push, **focus** is what to teach, **cadence** is when to
|
package/dist/cli-memory.js
CHANGED
|
@@ -451,11 +451,14 @@ function memoryPrune() {
|
|
|
451
451
|
try {
|
|
452
452
|
const { config } = loadConfig();
|
|
453
453
|
if (!config.memory.retention_days) {
|
|
454
|
-
process.stdout.write('memory.retention_days is not set, so raw evidence is kept until deleted by hand.\n');
|
|
454
|
+
process.stdout.write('memory.retention_days is not set for this project, so its raw evidence is kept until deleted by hand.\n');
|
|
455
455
|
return;
|
|
456
456
|
}
|
|
457
|
-
|
|
458
|
-
|
|
457
|
+
// This project only, under this project's resolved retention: another
|
|
458
|
+
// project may keep its evidence (retention unset) or a different window.
|
|
459
|
+
const project = currentProject();
|
|
460
|
+
const removed = pruneEvidence(db, config, { project });
|
|
461
|
+
process.stdout.write(`Deleted ${removed} raw evidence events older than ${config.memory.retention_days} days in ${project}.\n`);
|
|
459
462
|
}
|
|
460
463
|
finally {
|
|
461
464
|
db.close();
|
package/dist/cli-memory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-memory.js","sourceRoot":"","sources":["../src/cli-memory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli-memory.js","sourceRoot":"","sources":["../src/cli-memory.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAW,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACnH,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EACL,cAAc,EACd,YAAY,EACZ,cAAc,EACd,SAAS,EACT,WAAW,EACX,SAAS,EACT,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,QAAQ,GAET,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAmB,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC/F,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACL,SAAS,EACT,aAAa,EACb,aAAa,EACb,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,YAAY,GAGb,MAAM,oBAAoB,CAAC;AAE5B,yEAAyE;AACzE,SAAS,IAAI,CAAC,OAAe;IAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,YAAY,GAChB,kHAAkH;IAClH,iDAAiD,CAAC;AAEpD,SAAS,IAAI,CAAC,IAAc,EAAE,IAAY,EAAE,QAAiB;IAC3D,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,IAAI,CAAC,KAAK,CAAC,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,IAAI,CAAC,GAAG,IAAI,iBAAiB,CAAC,CAAC;IAClF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,UAAU,CAAC,IAAc,EAAE,IAAY,EAAE,QAAgB;IAChE,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7B,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IACvC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACtB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,IAAI,CAAC,GAAG,IAAI,2BAA2B,CAAC,CAAC;IAC5E,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACvB,CAAC;AAED,mFAAmF;AACnF,SAAS,cAAc;IACrB,OAAO,WAAW,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC;AACvE,CAAC;AAED;;;;GAIG;AACH,SAAS,aAAa,CAAC,EAAM,EAAE,OAAe;IAC5C,MAAM,IAAI,GAAG,EAAE;SACZ,OAAO,CACN;+EACyE,CAC1E;SACA,GAAG,EAAsC,CAAC;IAC7C,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACvD,OAAO;QACL,eAAe,IAAI,uBAAuB;QAC1C,GAAG,CAAC,QAAQ;YACV,CAAC,CAAC;gBACE,eAAe,QAAQ,UAAU,IAAI,CAAC,MAAM,kCAAkC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;gBAChK,6GAA6G;aAC9G;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,6CAA6C;AAC7C,SAAS,KAAK,CAAC,GAA8B,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;IAC7D,IAAI,CAAC,GAAG;QAAE,OAAO,GAAG,CAAC;IACrB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IACrE,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC;AACrG,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,UAAU,CAAC,EAAM;IAC/B,MAAM,CAAC,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;IAC3B,IAAI,CAAC,CAAC;QAAE,OAAO,cAAc,CAAC;IAC9B,OAAO;QACL,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,UAAU;QACnC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;QAC3C,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI;QAChD,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI;QACxC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;QACzD,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,4BAA4B,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAC,aAAa,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM;KAClH;SACE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,KAAK,CAAC,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,SAAS,SAAS,CAAC,EAAM;IACvB,MAAM,IAAI,GAAG,EAAE;SACZ,OAAO,CACN;qEAC+D,CAChE;SACA,GAAG,EAA6D,CAAC;IACpE,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,GAAG,GAA2B;QAClC,IAAI,EAAE,yBAAyB;QAC/B,KAAK,EAAE,qBAAqB;QAC5B,OAAO,EAAE,2BAA2B;KACrC,CAAC;IACF,OAAO,IAAI;SACR,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,IAAI,cAAc,GAAG,GAAG,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,WAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE,EAAE,CAAC;SACvI,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,YAAY;IACnB,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;QAC7B,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;QACjC,MAAM,OAAO,GAAG,WAAW,CAAC;YAC1B,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,eAAe,EAAE,MAAM,CAAC,SAAS;YACjC,QAAQ,EAAE,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;SACzD,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG;YACZ,eAAe,OAAO,EAAE;YACxB,eAAe,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,+BAA+B,EAAE;YAChG,eAAe,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,UAAU,YAAY,CAAC,EAAE,CAAC,WAAW;YAC7E,GAAG,aAAa,CAAC,EAAE,EAAE,OAAO,CAAC;YAC7B,eAAe,iBAAiB,CAAC,EAAE,EAAE,OAAO,CAAC,0BAA0B,iBAAiB,CAAC,EAAE,CAAC,WAAW;YACvG,eAAe,KAAK,CAAC,OAAO,cAAc,KAAK,CAAC,MAAM,aAAa,KAAK,CAAC,MAAM,UAC7E,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,WAAW,cAAc,CAAC,CAAC,CAAC,EAC9D,EAAE;YACF,eAAe,KAAK,CAAC,MAAM,IAAI,GAAG,EAAE;YACpC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,SAAS,CAAC,EAAE,CAAC,yCAAyC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjG,eAAe,UAAU,CAAC,EAAE,CAAC,EAAE;YAC/B,qEAAqE;YACrE,qEAAqE;YACrE,yDAAyD;YACzD,eACE,MAAM,CAAC,SAAS,CAAC,QAAQ;gBACvB,CAAC,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,wCAAwC;gBAC9G,CAAC,CAAC,oCACN,EAAE;YACF,eAAe,aAAa,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE;YACzC,gBAAgB,YAAY,EAAE,EAAE;YAChC,eAAe,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,SAAS,sBAAsB,MAAM,CAAC,IAAI,gBAAgB,MAAM,CAAC,SAAS,SAAS;YAC7H,WAAW,CAAC,OAAO,CAAC;SACrB,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,IAAc;IAClC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9G,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;QAAE,IAAI,CAAC,sGAAsG,CAAC,CAAC;IAEhI,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAe,CAAC;IACrF,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACnE,IAAI,CAAC,6CAA6C,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;YACnC,OAAO,EAAE,cAAc,EAAE;YACzB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YAC5C,KAAK,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC;SACvC,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YACtC,OAAO;QACT,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI;gBAC/F,QAAQ,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,YAAY,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,GACnF,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,oBAAoB,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAC5E,IAAI,CACP,CAAC;QACJ,CAAC;IACH,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,IAAc;IACpC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,QAAQ,CAAC,EAAE,EAAE;YACxB,OAAO,EAAE,cAAc,EAAE;YACzB,KAAK,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC;YACtC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,IAAI;SACrC,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;YACjE,OAAO;QACT,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,IAAI,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,KAAK,IAAI,CAC7F,CAAC;QACJ,CAAC;IACH,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,IAAc;IAChC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QAAE,IAAI,CAAC,iCAAiC,CAAC,CAAC;IAEnE,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAChC,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;QAE5C,MAAM,IAAI,GAAG,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG;YACZ,IAAI,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,KAAK,EAAE;YAC9B,cAAc,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;YACjE,cAAc,KAAK,CAAC,OAAO,EAAE;YAC7B,cAAc,KAAK,CAAC,WAAW,EAAE;YACjC,cAAc,KAAK,CAAC,SAAS,EAAE;YAC/B,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,mBAAmB,KAAK,CAAC,aAAa,yCAAyC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjH,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,kBAAkB,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACzE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,cAAe,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1F,EAAE;YACF,KAAK,CAAC,SAAS,IAAI,gBAAgB;SACpC,CAAC;QAEF,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAc,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,IAAI,KAAK,CAAC,MAAM;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QAE5E,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,aAAa,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;QAC/C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,KAAK,CAAC,IAAI,CACR,KAAK,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,GAClE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAClC,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CACrD,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,KAAK,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAC;QAE7G,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,IAAc;IACnC,yEAAyE;IACzE,oDAAoD;IACpD,IAAI,kBAAkB,EAAE;QAAE,OAAO;IACjC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;IAChC,4EAA4E;IAC5E,6EAA6E;IAC7E,6EAA6E;IAC7E,4EAA4E;IAC5E,4EAA4E;IAC5E,0EAA0E;IAC1E,2EAA2E;IAC3E,oDAAoD;IACpD,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAEhD,4EAA4E;IAC5E,8EAA8E;IAC9E,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IAC5C,IAAI,KAAoB,CAAC;IACzB,IAAI,CAAC;QACH,KAAK,GAAG,MAAM;YACZ,CAAC,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;gBAC7C,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,IAAI;YACR,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,wEAAwE;QACxE,0CAA0C;QAC1C,KAAK,GAAG,IAAI,CAAC;IACf,CAAC;IACD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;QAChC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,mCAAmC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,iDAAiD,CAC9H,CAAC;QACJ,CAAC;QACD,EAAE,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;IACT,CAAC;IAED,yEAAyE;IACzE,gEAAgE;IAChE,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAElD,2EAA2E;IAC3E,0CAA0C;IAC1C,MAAM,IAAI,GAAG,IAAI,eAAe,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACpC,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAU;QAAE,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAExF,eAAe,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;QACjC,OAAO;QACP,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC,MAAM;KACtC,CAAC,CAAC,IAAI,CACL,CAAC,MAAM,EAAE,EAAE;QACT,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,OAAO,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,MAAM,CAAC,SAAS,cAAc,MAAM,CAAC,OAAO,aAAa,MAAM,CAAC,MAAM,cAAc,MAAM,CAAC,OAAO,GAC7J,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,8CAA8C,CAAC,CAAC,CAAC,EACtE,IAAI,CACL,CAAC;QACJ,CAAC;QACD,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC,EACD,CAAC,GAAU,EAAE,EAAE;QACb,EAAE,CAAC,KAAK,EAAE,CAAC;QACX,IAAI,CAAC,2BAA2B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IACjD,CAAC,CACF,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,aAAa,CAAC,IAAc;IACnC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACvE,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACpC,MAAM,GAAG,GAAoB;QAC3B,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;QACnC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;QAChC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;QAChC,KAAK,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;KACvD,CAAC;IACF,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAC/F,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC;IAElH,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC;QACH,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YACvC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;gBAC9C,OAAO;YACT,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;gBACvB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,EAAE,IAAI;oBACvH,UAAU,CAAC,CAAC,MAAM,aAAa,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAC1H,CAAC;YACJ,CAAC;YACD,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,uGAAuG;oBACrG,6FAA6F,CAChG,CAAC;YACJ,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,0BAA0B,MAAM,oEAAoE,CAAC,CAAC;QAC1H,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;YAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,iBAAiB,CAAC,EAAE,EAAE,GAAG,CAAC,uDAAuD,CAAC,CAAC;QACzH,CAAC;aAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,cAAc,CAAC,EAAE,EAAE,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACrF,CAAC;aAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,cAAc,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YACrC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,OAAO,kBAAkB,IAAI,CAAC,MAAM,uBAAuB,CAAC,CAAC;QACtG,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,+HAA+H,CAAC,CAAC;QACxI,CAAC;IACH,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,UAAU;IACjB,IAAI,kBAAkB,EAAE;QAAE,OAAO;IACjC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,KAAK,UAAU,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;QACnC,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACrB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,4BAA4B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,GACpE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,6BAA6B,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAClE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,kCAAkC;gBACjF,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,2EAA2E,CAAC,CACxG,CAAC;QACJ,CAAC;QACD,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;YAC9B,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,0GAA0G,CAC3G,CAAC;QACJ,CAAC;QACD,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,YAAY,CAAC,IAAc;IAClC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;YACvF,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,mEAAmE,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAC7F,CAAC;YACF,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAC1B,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACX,IAAI,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI;YACvB,QAAQ,EAAE,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ;YACnC,UAAU,EAAE,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU;YACzC,QAAQ,EAAE,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ;SACpC,CAAC,EACF,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CACrD,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB;YACE,gBAAgB,OAAO,CAAC,MAAM,OAAO,KAAK,CAAC,MAAM,EAAE;YACnD,gBAAgB,KAAK,CAAC,IAAI,EAAE;YAC5B,gBAAgB,KAAK,CAAC,QAAQ,EAAE;YAChC,gBAAgB,KAAK,CAAC,UAAU,EAAE;YAClC,gBAAgB,KAAK,CAAC,QAAQ,+CAA+C;YAC7E,EAAE;YACF,8DAA8D;YAC9D,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,SAAS,WAAW;IAClB,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,yGAAyG,CAC1G,CAAC;YACF,OAAO;QACT,CAAC;QACD,sEAAsE;QACtE,yEAAyE;QACzE,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QACvD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,WAAW,OAAO,mCAAmC,MAAM,CAAC,MAAM,CAAC,cAAc,YAAY,OAAO,KAAK,CAC1G,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,wEAAwE;AACxE,SAAS,iBAAiB,CAAC,MAA0B;IACnD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,cAAc,CAAU,EAAE,CAAC;QAClE,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,SAAS;QAC5B,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,KAAK,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;QAC7C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACxG,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,cAAc,CAAC,IAAc;IACpC,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YAC/B,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC7B,IAAI,EAAE,IAAI,CAAC;gBAAE,IAAI,CAAC,kDAAkD,CAAC,CAAC;YACtE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;YACvG,CAAC,EAAE,CAAC;QACN,CAAC;aAAM,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,YAAY,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACzB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,IAAI,CAAC,oCAAoC,CAAC,CAAC;YAC/E,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC;YACpD,2EAA2E;YAC3E,uEAAuE;YACvE,2EAA2E;YAC3E,IAAI,CAAC,IAAI;gBAAE,IAAI,CAAC,gCAAgC,OAAO,CAAC,GAAG,EAAE,kCAAkC,CAAC,CAAC;YACjG,GAAG,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC,EAAE,CAAC;QACN,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,qFAAqF;AACrF,SAAS,WAAW,CAAC,CAAe;IAClC,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IACtE,OAAO;QACL,YAAY,CAAC,CAAC,UAAU,EAAE;QAC1B,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CACb,CAAC,CAAC,EAAE,EAAE,CACJ,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,gBAAgB,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,MAAM,WACnI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAC1G,EAAE,CACL;QACD,2BAA2B,CAAC,CAAC,OAAO,QAAQ,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE;QAC3E,YAAY;QACZ,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE;YAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YACnC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,0EAA0E,EAAE,CAAC;QACtK,CAAC,CAAC,CACH;QACD,OAAO;YACL,CAAC,CAAC,eAAe,OAAO,6EAA6E;YACrG,CAAC,CAAC,2CAA2C;KAChD,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,IAAc;IACxC,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CACzF,CAAC;IACF,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,IAAI,CAAC,MAAM;QAAE,IAAI,CAAC,6GAA6G,CAAC,CAAC;IACjI,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IAEtC,IAAI,CAAC;QACH,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;YACpB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;gBACxC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC5D,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;oBAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACnE,CAAC;oBAAS,CAAC;gBACT,EAAE,CAAC,KAAK,EAAE,CAAC;YACb,CAAC;YACD,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;QAChC,oEAAoE;QACpE,uEAAuE;QACvE,6DAA6D;QAC7D,MAAM,MAAM,GAA6B,EAAE,CAAC;QAC5C,MAAM,UAAU,GAAG,EAAE,GAAG,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,CAAC;QACrF,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9D,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAC5C,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,IAAI,KAAK,KAAK,CAAC,MAAM,gDAAgD,IAAI,aAAa,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAClI,CAAC;QACF,MAAM,KAAK,GAAG;YACZ,YAAY,KAAK,CAAC,UAAU,EAAE;YAC9B,YAAY,KAAK,CAAC,aAAa,IAAI,aAAa,qCAAqC,KAAK,CAAC,YAAY,GAAG;YAC1G,YAAY,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE;YACpG,SAAS;YACT,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC;YAChH,WAAW;YACX,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;YACnF,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC;SAChC,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE9C,IAAI,CAAC,KAAK,CAAC,SAAS;YAAE,IAAI,CAAC,KAAK,KAAK,CAAC,OAAO,IAAI,8BAA8B,EAAE,CAAC,CAAC;QACnF,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC3C,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC;YACxF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB;gBACE,EAAE;gBACF,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,cAAc,IAAI,OAAO,EAAE,EAAE,CAAC;gBAC7D,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,qBAAqB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxE,GAAG,WAAW;gBACd,oEAAoE;gBACpE,EAAE;aACH,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;YACF,OAAO;QACT,CAAC;QAED,CAAC;YACC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC3B,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,EAAE,CACnE,eAAe,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,EAAE,CAAC,CACvG,CAAC;YACF,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAC9B,CAAC,CAAC,EAAE,EAAE,CACJ,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,sBAAsB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CACrH,CAAC;YACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB;gBACE,EAAE;gBACF,aAAa,MAAM,CAAC,QAAQ,EAAE;gBAC9B,GAAG,IAAI;gBACP,yBAAyB,MAAM,CAAC,UAAU,8DAA8D;gBACxG,qBAAqB,MAAM,CAAC,KAAK,oEAAoE;gBACrG,iBAAiB,MAAM,CAAC,SAAS,UAAU;gBAC3C,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,MAAM,CAAC,OAAO,wDAAwD,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClH,iBAAiB,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;gBACjG,GAAG,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC;gBACrE,qEAAqE;gBACrE,iDAAiD;gBACjD,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM;oBAC5B,CAAC,CAAC;wBACE,iBAAiB,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;wBACjD,gHAAgH;qBACjH;oBACH,CAAC,CAAC,EAAE,CAAC;gBACP,EAAE;aACH,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;YACF,IAAI,WAAW,CAAC,MAAM;gBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5E,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,sEAAsE;YACtE,8DAA8D;YAC9D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,WAAW,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChE,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;gBAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,WAAW;YAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClD,2EAA2E;QAC3E,4EAA4E;QAC5E,6EAA6E;QAC7E,4DAA4D;QAC5D,IAAI,CAAC,sCAAsC,MAAM,MAAO,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;IACnF,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,IAAc;IAClC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IAClD,IAAI,CAAC,GAAG;QAAE,IAAI,CAAC,+CAA+C,CAAC,CAAC;IAChE,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACvC,4EAA4E;IAC5E,sEAAsE;IACtE,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,IAAI,CAAC,0BAA0B,GAAG,8CAA8C,CAAC,CAAC;IAEpH,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;QAClC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnE,yEAAyE;QACzE,sEAAsE;QACtE,kEAAkE;QAClE,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC5H,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,SAAS,GAAG,MAAO,OAAO,CAAC,OAAqB,CAAC,MAAM,4BAA4B,qBAAqB,IAAI,CAC7G,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,aAAa,CAAC,IAAc;IACnC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IACnD,IAAI,CAAC,IAAI;QAAE,IAAI,CAAC,sCAAsC,CAAC,CAAC;IAExD,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAChD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB;YACE,YAAY,IAAI,2BAA2B,CAAC,CAAC,aAAa,IAAI;YAC9D,gBAAgB,CAAC,CAAC,OAAO,CAAC,QAAQ,cAAc,CAAC,CAAC,OAAO,CAAC,OAAO,eAAe;YAChF,gBAAgB,CAAC,CAAC,QAAQ,CAAC,QAAQ,cAAc,CAAC,CAAC,QAAQ,CAAC,OAAO,eAAe;YAClF,gBAAgB,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,KAAK,mBAAmB;YAC5D,gBAAgB,CAAC,CAAC,QAAQ,CAAC,QAAQ,cAAc,CAAC,CAAC,QAAQ,CAAC,OAAO,kBAAkB,CAAC,CAAC,YAAY,WAAW;YAC9G,gBAAgB,CAAC,CAAC,SAAS,6CAA6C;YACxE,4FAA4F;YAC5F,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,WAAW;YAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,GAAG,CAAC;IACZ,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,UAAU,CAAC,IAAc;IAChC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IACnB,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;QACzD,IAAI,CAAC,gEAAgE,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,IAAI,CAAC;IAE9C,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QAEhC,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;YACrB,MAAM,CAAC,GAAG,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YAC7C,MAAM,KAAK,GAAG;gBACZ,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,wBAAwB,EAAE;gBAC5D,eAAe,CAAC,CAAC,MAAM,IAAI,uCAAuC,EAAE;gBACpE,eAAe,CAAC,CAAC,SAAS,IAAI,GAAG,EAAE;gBACnC,eAAe,CAAC,CAAC,cAAc,EAAE;gBACjC,eAAe,CAAC,CAAC,OAAO,gBAAgB,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,UAAU;gBAC5E,eAAe,CAAC,CAAC,cAAc,cAAc;gBAC7C,eACE,CAAC,CAAC,KAAK,CAAC,MAAM;oBACZ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBACpE,CAAC,CAAC,eACN,EAAE;aACH,CAAC;YACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9C,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5F,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,IAAI,CACF,MAAM,CAAC,MAAM,KAAK,UAAU;gBAC1B,CAAC,CAAC,kEAAkE;gBACpE,CAAC,CAAC,mFAAmF,CACxF,CAAC;QACJ,CAAC;QAED,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;YACnB,MAAM,CAAC,GAAG,MAAiC,CAAC;YAC5C,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,aAAa,CAAC,CAAC,MAAM,OAAO,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,MAAM,gBAClD,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GACxB,KAAK,CAAC,CAAC,OAAO,UAAU,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,OAAO,mBAAmB,CAC5F,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,CAAC,GAAG,MAAiC,CAAC;QAC5C,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,eAAe,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,OAAO,aAAa,CAAC,CAAC,UAAU,YAC5D,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAC5B,MAAM,CAAC,CAAC,OAAO,mBAAmB,CAAC,CAAC,SAAS,iBAAiB,CAC/D,CAAC;QACF,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,oFAAoF,CACrF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACrB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,+CAA+C,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,6CAA6C,CACjH,CAAC;QACJ,CAAC;IACH,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAc;IAC1C,MAAM,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAC5B,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,QAAQ;YACX,OAAO,YAAY,EAAE,CAAC;QACxB,KAAK,QAAQ;YACX,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;QAC5B,KAAK,UAAU;YACb,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC;QAC9B,KAAK,MAAM;YACT,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;QAC1B,KAAK,QAAQ;YACX,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;QAC5B,KAAK,SAAS;YACZ,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;QAC7B,KAAK,MAAM;YACT,OAAO,UAAU,EAAE,CAAC;QACtB,KAAK,SAAS;YACZ,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;QAC7B,KAAK,OAAO;YACV,OAAO,WAAW,EAAE,CAAC;QACvB,KAAK,QAAQ;YACX,uEAAuE;YACvE,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;YACxB,OAAO;QACT,KAAK,QAAQ;YACX,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;QAC5B,KAAK,SAAS;YACZ,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;QAC7B,KAAK,MAAM;YACT,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;QAC1B;YACE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC"}
|
package/dist/cli.js
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
import fs from 'node:fs';
|
|
8
8
|
import path from 'node:path';
|
|
9
9
|
import { fileURLToPath } from 'node:url';
|
|
10
|
+
import { parseArgs } from 'node:util';
|
|
10
11
|
import { dbPath, eklavyaHome } from './paths.js';
|
|
11
12
|
import { readStdinBounded, stripBom, STATUSLINE_STDIN } from './stdin.js';
|
|
12
13
|
import { loadConfig, writeConfigFile, readConfigFile, configFileProblem, findRepoConfig, mainRepoRoot, migrateLegacyRepoConfig, } from './config.js';
|
|
@@ -44,10 +45,16 @@ Usage:
|
|
|
44
45
|
stored under ~/.eklavya/projects/, never in the repo)
|
|
45
46
|
e.g. quiz.enabled true|false, quiz.enforced true|false,
|
|
46
47
|
focus project|concept|learn, cadence interleaved|end,
|
|
47
|
-
difficulty auto|easy|medium|hard
|
|
48
|
+
difficulty auto|easy|medium|hard,
|
|
49
|
+
explain_on_wrong true|false
|
|
48
50
|
add --topic <topic> when setting focus to "learn"
|
|
49
51
|
eklavya dashboard [--port <n>] Serve the learning dashboard and open it in your browser
|
|
50
52
|
(--no-open serves it and just prints the URL)
|
|
53
|
+
eklavya artifacts new <title> Start a page under ~/.eklavya/artifacts/<project>/ from the
|
|
54
|
+
Eklavya template and print its path [--description <text>]
|
|
55
|
+
[--kind artifact|explainer] [--concept <slug>] [--open]
|
|
56
|
+
eklavya artifacts list [--json] Every artifact, newest first [--here: this project only]
|
|
57
|
+
eklavya artifacts open <path|id> Open one in your browser
|
|
51
58
|
eklavya statusline Print the dials for a status bar (one line, or nothing)
|
|
52
59
|
eklavya doctor Check the install, apply concept packs, and say what to fix
|
|
53
60
|
eklavya db-path Print the database location
|
|
@@ -69,7 +76,7 @@ Memory:
|
|
|
69
76
|
List unfinished jobs by project, marking observer helper sessions;
|
|
70
77
|
or set aside, delete or bring back the ones you select with
|
|
71
78
|
--helpers, --project <key>, --session <id> or --batch <id>
|
|
72
|
-
eklavya memory prune Delete raw evidence past memory.retention_days
|
|
79
|
+
eklavya memory prune Delete this project's raw evidence past its memory.retention_days
|
|
73
80
|
eklavya memory import <source.db> Import a Claude Mem database [--dry-run] [--verify] [--resume]
|
|
74
81
|
--dry-run reads the source and reports; it writes nothing
|
|
75
82
|
--verify checks every source row by id is here and where each
|
|
@@ -91,6 +98,7 @@ Config keys: focus, focus_topic, cadence, difficulty, level_up_after,
|
|
|
91
98
|
level_up_accuracy, pass_threshold, max_questions_per_task,
|
|
92
99
|
min_minutes_between_quizzes, min_minutes_between_checkpoints,
|
|
93
100
|
max_new_concepts_per_session, max_stop_blocks_per_session, quiet,
|
|
101
|
+
explain_on_wrong,
|
|
94
102
|
auto_update (global only)
|
|
95
103
|
Config namespaces (nested; edit ~/.eklavya/config.json or this project's file directly):
|
|
96
104
|
quiz.{enabled, enforced} — whether questions happen, and whether they gate
|
|
@@ -717,6 +725,79 @@ async function dashboardCommand(argv) {
|
|
|
717
725
|
process.exit(1);
|
|
718
726
|
});
|
|
719
727
|
}
|
|
728
|
+
/**
|
|
729
|
+
* `eklavya artifacts`: the file side of the eklavya-artifacts skill and the
|
|
730
|
+
* explainer agent. `new` is the one place a page's path and metadata are
|
|
731
|
+
* decided, so a model never has to work out the project folder itself.
|
|
732
|
+
*/
|
|
733
|
+
async function artifactsCommand(argv) {
|
|
734
|
+
const { createArtifact, listArtifacts, resolveArtifact, artifactProject } = await import('./artifacts.js');
|
|
735
|
+
const [sub, ...rest] = argv;
|
|
736
|
+
if (sub === 'new') {
|
|
737
|
+
// `parseArgs` rather than a hand loop: an agent writes `--kind=explainer`
|
|
738
|
+
// as often as `--kind explainer`, and a flag that is silently dropped
|
|
739
|
+
// files the page under the wrong kind. Unknown flags and missing values
|
|
740
|
+
// fail loudly; `--` ends the flags, for a title that starts with dashes.
|
|
741
|
+
let parsed;
|
|
742
|
+
try {
|
|
743
|
+
parsed = parseArgs({
|
|
744
|
+
args: rest,
|
|
745
|
+
allowPositionals: true,
|
|
746
|
+
options: {
|
|
747
|
+
description: { type: 'string' },
|
|
748
|
+
kind: { type: 'string' },
|
|
749
|
+
concept: { type: 'string' },
|
|
750
|
+
open: { type: 'boolean' },
|
|
751
|
+
},
|
|
752
|
+
});
|
|
753
|
+
}
|
|
754
|
+
catch (err) {
|
|
755
|
+
fail(`eklavya artifacts new: ${err instanceof Error ? err.message : String(err)}`);
|
|
756
|
+
}
|
|
757
|
+
const { values, positionals } = parsed;
|
|
758
|
+
const title = positionals.join(' ').trim();
|
|
759
|
+
if (!title)
|
|
760
|
+
fail('eklavya artifacts new: give the page a title');
|
|
761
|
+
const kind = values.kind ?? 'artifact';
|
|
762
|
+
if (kind !== 'artifact' && kind !== 'explainer')
|
|
763
|
+
fail('eklavya artifacts new: --kind is artifact or explainer');
|
|
764
|
+
const made = createArtifact({ title, description: values.description, kind, concept: values.concept ?? null });
|
|
765
|
+
process.stdout.write(`${made.path}\n`);
|
|
766
|
+
if (values.open)
|
|
767
|
+
(await import('./dashboard.js')).openInBrowser(made.path);
|
|
768
|
+
return;
|
|
769
|
+
}
|
|
770
|
+
if (sub === 'list') {
|
|
771
|
+
const here = rest.includes('--here') ? artifactProject() : null;
|
|
772
|
+
const rows = listArtifacts().filter((r) => !here || r.project === here);
|
|
773
|
+
if (rest.includes('--json')) {
|
|
774
|
+
process.stdout.write(`${JSON.stringify(rows, null, 2)}\n`);
|
|
775
|
+
return;
|
|
776
|
+
}
|
|
777
|
+
if (!rows.length) {
|
|
778
|
+
process.stdout.write('No artifacts yet.\n');
|
|
779
|
+
return;
|
|
780
|
+
}
|
|
781
|
+
for (const r of rows) {
|
|
782
|
+
process.stdout.write(`${new Date(r.created).toLocaleDateString('en-CA')} ${r.kind === 'explainer' ? 'explainer' : 'artifact '} ${r.title}\n`);
|
|
783
|
+
process.stdout.write(` ${path.join(eklavyaHome(), 'artifacts', r.id)}\n`);
|
|
784
|
+
}
|
|
785
|
+
return;
|
|
786
|
+
}
|
|
787
|
+
if (sub === 'open') {
|
|
788
|
+
const target = rest[0];
|
|
789
|
+
if (!target)
|
|
790
|
+
fail('eklavya artifacts open: name the file or its id');
|
|
791
|
+
// A path the caller already has, or an id from `list --json`.
|
|
792
|
+
const file = fs.existsSync(target) ? path.resolve(target) : resolveArtifact(target);
|
|
793
|
+
if (!file)
|
|
794
|
+
fail(`eklavya artifacts open: no artifact at ${target}`);
|
|
795
|
+
(await import('./dashboard.js')).openInBrowser(file);
|
|
796
|
+
process.stdout.write(`${file}\n`);
|
|
797
|
+
return;
|
|
798
|
+
}
|
|
799
|
+
fail('Usage: eklavya artifacts new <title> | list [--json] [--here] | open <path|id>');
|
|
800
|
+
}
|
|
720
801
|
/**
|
|
721
802
|
* `eklavya update`: the background updater's run, in the foreground. With
|
|
722
803
|
* `--background` it is the run the SessionStart hook starts: nobody is
|
|
@@ -823,6 +904,8 @@ async function main() {
|
|
|
823
904
|
return dashboardCommand(rest);
|
|
824
905
|
case 'memory':
|
|
825
906
|
return (await import('./cli-memory.js')).memoryCommand(rest);
|
|
907
|
+
case 'artifacts':
|
|
908
|
+
return artifactsCommand(rest);
|
|
826
909
|
case 'doctor':
|
|
827
910
|
return doctor();
|
|
828
911
|
case 'db-path':
|