isorite 0.12.1 → 0.14.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/README.md +6 -5
- package/dist/main.js +6018 -8942
- package/docs/setup-for-agents.md +44 -102
- package/docs/setup.md +27 -90
- package/docs/terminal.md +54 -55
- package/guide/AGENTS.md +4 -0
- package/guide/atlas/find-what-it-rests-on.md +9 -0
- package/guide/atlas/the-atlas.md +21 -0
- package/guide/atlas/the-switches/satellites.svg +17 -0
- package/guide/atlas/the-switches.md +27 -0
- package/guide/iso/agents-md.md +13 -0
- package/guide/iso/artifacts/the-guide.csv +8 -0
- package/guide/iso/artifacts/the-guide.html +35 -0
- package/guide/iso/artifacts.md +15 -0
- package/guide/iso/ask-iso.md +7 -0
- package/guide/iso/give-it-notes.md +9 -0
- package/guide/iso/in-hand.md +18 -0
- package/guide/iso/iso-writes-marked.md +15 -0
- package/guide/iso/iso.md +17 -0
- package/guide/iso/let-it-write.md +11 -0
- package/guide/iso/write-agents-md.md +11 -0
- package/guide/notes/a-note-is-markdown.md +17 -0
- package/guide/notes/a-notes-details.md +23 -0
- package/guide/notes/diagrams-and-code.md +43 -0
- package/guide/notes/every-change-is-kept.md +14 -0
- package/guide/notes/folders.md +11 -0
- package/guide/notes/go-back-a-version.md +9 -0
- package/guide/notes/link-your-notes.md +9 -0
- package/guide/notes/links-and-their-kinds.md +23 -0
- package/guide/notes/make-move-delete.md +9 -0
- package/guide/notes/write-in-your-notes.md +9 -0
- package/guide/out-of-the-base/web-and-code-links.md +13 -0
- package/guide/questions-and-problems/ask-a-question.md +9 -0
- package/guide/questions-and-problems/how-iso-reads-you.md +9 -0
- package/guide/questions-and-problems/problems.md +15 -0
- package/guide/questions-and-problems/questions.md +27 -0
- package/guide/questions-and-problems/resolve-a-question.md +9 -0
- package/guide/questions-and-problems/why-markdown-links.md +7 -0
- package/guide/solve-this-one.md +11 -0
- package/guide/start-here.md +39 -0
- package/guide/terminal/let-the-agent-remember.md +9 -0
- package/guide/terminal/memory.md +13 -0
- package/guide/terminal/your-own-agent.md +24 -0
- package/guide/your-notes.md +6 -0
- package/guide/your-own-base/keeping-a-base-well.md +16 -0
- package/guide/your-own-base/starting-a-base.md +21 -0
- package/package.json +4 -7
- package/web/_app/immutable/assets/0.BPP604gH.css +1 -0
- package/web/_app/immutable/assets/4.fOHsAKBF.css +1 -0
- package/web/_app/immutable/assets/drawn.D6lJzDcc.css +1 -0
- package/web/_app/immutable/chunks/{D5XlJBy8.js → B-DzK7Gb.js} +1 -1
- package/web/_app/immutable/chunks/{BuUzVkG2.js → B35sQTcK.js} +1 -1
- package/web/_app/immutable/chunks/{Dh1lBxfx.js → BA78_vo5.js} +1 -1
- package/web/_app/immutable/chunks/{tUSDgbpy.js → BCGaqnao.js} +1 -1
- package/web/_app/immutable/chunks/{DT2w6KyY.js → BGW1TKtR.js} +1 -1
- package/web/_app/immutable/chunks/{EMo1IeTW.js → BK31dpt6.js} +1 -1
- package/web/_app/immutable/chunks/BPrp4s2r.js +1 -0
- package/web/_app/immutable/chunks/{DlXrOzlh.js → BT_btfh0.js} +1 -1
- package/web/_app/immutable/chunks/{Xm0YTnxV.js → BWE_HS0c.js} +1 -1
- package/web/_app/immutable/chunks/{BLmF1B2i.js → BXBhaEho.js} +1 -1
- package/web/_app/immutable/chunks/{BAclEN0O.js → Bb_N98K9.js} +1 -1
- package/web/_app/immutable/chunks/{gPtCGHiy.js → Bd-WxALw.js} +1 -1
- package/web/_app/immutable/chunks/{BA8Hpxhg.js → BhEqJU15.js} +1 -1
- package/web/_app/immutable/chunks/{DkxkvOjx.js → BiATTH-R.js} +1 -1
- package/web/_app/immutable/chunks/{D5vocsTl.js → Bj-5n5Pb.js} +1 -1
- package/web/_app/immutable/chunks/{DRX-TQzj.js → BqipEJXw.js} +1 -1
- package/web/_app/immutable/chunks/{DXTK-eyo.js → BvPxdlBc.js} +1 -1
- package/web/_app/immutable/chunks/{DfCZPwp1.js → C2npZzkn.js} +1 -1
- package/web/_app/immutable/chunks/{DF89zyH-.js → C5Z-Y7Lu.js} +1 -1
- package/web/_app/immutable/chunks/{CD6xPodA.js → C8h1oeAZ.js} +1 -1
- package/web/_app/immutable/chunks/{CFEI5lV9.js → CAlIuau0.js} +1 -1
- package/web/_app/immutable/chunks/{9z49435t.js → CFf_dAzX.js} +1 -1
- package/web/_app/immutable/chunks/{rq7JUohF.js → CIYFNih-.js} +1 -1
- package/web/_app/immutable/chunks/{D3-rqfsM.js → CMIt1Ma8.js} +1 -1
- package/web/_app/immutable/chunks/{-2Meesge.js → CMikI1NP.js} +3 -3
- package/web/_app/immutable/chunks/{CxAq1aod.js → CPSlCQsu.js} +74 -74
- package/web/_app/immutable/chunks/{Czz9qOh8.js → CT4_O9X_.js} +1 -1
- package/web/_app/immutable/chunks/{DX4bJJO0.js → CTDYUZPz.js} +1 -1
- package/web/_app/immutable/chunks/{By4S_gy5.js → CdY1G_wk.js} +1 -1
- package/web/_app/immutable/chunks/{DBC2xjOo.js → CdmC_l9F.js} +1 -1
- package/web/_app/immutable/chunks/{DbNETcPs.js → Cf-5I5_6.js} +1 -1
- package/web/_app/immutable/chunks/Cl5gQm2e.js +1 -0
- package/web/_app/immutable/chunks/{BWVMfAMh.js → CryuQgNh.js} +1 -1
- package/web/_app/immutable/chunks/{CT_Ry4q8.js → Ct_EK1xu.js} +1 -1
- package/web/_app/immutable/chunks/{BymwHy7o.js → CtkUy_15.js} +1 -1
- package/web/_app/immutable/chunks/{Dpa4Syyy.js → CzYPMYd4.js} +1 -1
- package/web/_app/immutable/chunks/{RlApGeew.js → D1LK3xRu.js} +1 -1
- package/web/_app/immutable/chunks/{DXK7PB4g.js → D6sVhEz3.js} +1 -1
- package/web/_app/immutable/chunks/{94XMxKlw.js → DBLoWLMb.js} +1 -1
- package/web/_app/immutable/chunks/{rghE0CVz.js → DCZYeMlH.js} +1 -1
- package/web/_app/immutable/chunks/{RFxekmX-.js → DDAG55ce.js} +1 -1
- package/web/_app/immutable/chunks/DFKYo3Wx.js +1 -0
- package/web/_app/immutable/chunks/{CyFLqlvP.js → DFuPQaNa.js} +1 -1
- package/web/_app/immutable/chunks/{BXAOBcPb.js → DHJ8FcFD.js} +1 -1
- package/web/_app/immutable/chunks/{Bt7VOT5H.js → DKqMzyyE.js} +1 -1
- package/web/_app/immutable/chunks/{Bq2GBAJ0.js → DRcTlHZP.js} +1 -1
- package/web/_app/immutable/chunks/{C_amgxV1.js → DjUnonHY.js} +1 -1
- package/web/_app/immutable/chunks/{whhiiiga.js → Djr0h_v1.js} +1 -1
- package/web/_app/immutable/chunks/{vfDvz3qP.js → DrVtdHUW.js} +1 -1
- package/web/_app/immutable/chunks/DxVFSMVD.js +523 -0
- package/web/_app/immutable/chunks/{BBHd0LvJ.js → DymLl-qY.js} +1 -1
- package/web/_app/immutable/chunks/{DSYLdqdc.js → Dzi94aDH.js} +1 -1
- package/web/_app/immutable/chunks/{CmExTt6_.js → NyWzYSz1.js} +1 -1
- package/web/_app/immutable/chunks/{oWM_kgYq.js → PsfIQCJ1.js} +1 -1
- package/web/_app/immutable/chunks/{Cl5zRP_n.js → TanDZqdf.js} +1 -1
- package/web/_app/immutable/chunks/{D95RKsvN.js → UDPiRmKc.js} +1 -1
- package/web/_app/immutable/chunks/X3aTZRe_.js +1 -0
- package/web/_app/immutable/chunks/{BTclWEfx.js → ZwM5k8r0.js} +1 -1
- package/web/_app/immutable/chunks/e2LGvGEb.js +3 -0
- package/web/_app/immutable/chunks/ej_0XxR7.js +1 -0
- package/web/_app/immutable/chunks/{CjtKPNlv.js → kG4HctVa.js} +1 -1
- package/web/_app/immutable/chunks/{CQd9D8Nc.js → l1LsK1sB.js} +1 -1
- package/web/_app/immutable/entry/app.BzA5QYtw.js +2 -0
- package/web/_app/immutable/entry/start.BOh0Gj31.js +1 -0
- package/web/_app/immutable/nodes/0.BmaxMLzC.js +2 -0
- package/web/_app/immutable/nodes/1.IQDu8pD1.js +1 -0
- package/web/_app/immutable/nodes/2.D2Oi-ADx.js +1 -0
- package/web/_app/immutable/nodes/3.CF1W85jb.js +1 -0
- package/web/_app/immutable/nodes/4.BMYBn904.js +15 -0
- package/web/_app/immutable/nodes/5.1vm6WZdM.js +1 -0
- package/web/_app/immutable/nodes/6.C9ia8cDm.js +1 -0
- package/web/_app/version.json +1 -1
- package/web/index.html +16 -19
- package/dist/core.js +0 -2464
- package/plugin/assets/mark-lapis.png +0 -0
- package/plugin/assets/mark-quartz.png +0 -0
- package/plugin/assets/wordmark-lapis.png +0 -0
- package/plugin/assets/wordmark-quartz.png +0 -0
- package/plugin/isorite.ts +0 -65
- package/plugin/logo.ts +0 -99
- package/plugin/notepage.tsx +0 -165
- package/plugin/notes.ts +0 -10
- package/plugin/noteview.ts +0 -60
- package/plugin/oneatlas.ts +0 -83
- package/plugin/palette.ts +0 -21
- package/plugin/play.ts +0 -104
- package/plugin/server.ts +0 -76
- package/plugin/sources.ts +0 -18
- package/plugin/tui.tsx +0 -556
- package/plugin/wordmark.ts +0 -180
- package/web/_app/immutable/assets/0.DqoJ_jEe.css +0 -1
- package/web/_app/immutable/assets/4.CUdclsPi.css +0 -1
- package/web/_app/immutable/assets/5.rBvyRuST.css +0 -1
- package/web/_app/immutable/assets/Drawing.Q7J9MyIo.css +0 -1
- package/web/_app/immutable/assets/NoteEditor.S3q5lmKq.css +0 -1
- package/web/_app/immutable/assets/Timeline.LsRXYIBv.css +0 -1
- package/web/_app/immutable/chunks/9TpKhtgt.js +0 -1
- package/web/_app/immutable/chunks/BMcDEv5V.js +0 -1
- package/web/_app/immutable/chunks/BqrMZ9MX.js +0 -1
- package/web/_app/immutable/chunks/ChbZenhA.js +0 -7
- package/web/_app/immutable/chunks/CnR51TY0.js +0 -1
- package/web/_app/immutable/chunks/DMzXaGgk.js +0 -523
- package/web/_app/immutable/chunks/DshHzxgH.js +0 -1
- package/web/_app/immutable/chunks/Iqr2CudW.js +0 -3
- package/web/_app/immutable/chunks/wQPxmN7w.js +0 -1
- package/web/_app/immutable/entry/app.Z7pwf_yI.js +0 -2
- package/web/_app/immutable/entry/start.B_WWh0TE.js +0 -1
- package/web/_app/immutable/nodes/0.zgVqViQf.js +0 -26
- package/web/_app/immutable/nodes/1.D06ogNcd.js +0 -1
- package/web/_app/immutable/nodes/2.Xq8_UpCY.js +0 -1
- package/web/_app/immutable/nodes/3.CgpZ3cDm.js +0 -1
- package/web/_app/immutable/nodes/4.DQfZbhoQ.js +0 -2
- package/web/_app/immutable/nodes/5.BqLxxB44.js +0 -9
- package/web/_app/immutable/nodes/6.Dg2_pK7R.js +0 -1
- package/web/_app/immutable/nodes/7.BpxHVHoY.js +0 -1
- /package/web/_app/immutable/assets/{7.C00vyVPo.css → 6.C00vyVPo.css} +0 -0
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Concept
|
|
3
|
+
title: Several bases, and the agent's memory
|
|
4
|
+
description: One isorite holds several bases at once; one lent to every session is the agent's memory.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
A server can hold several bases at once. Each one you open (`isorite serve`, `acp` or `mcp`) is listed, and the base's name before the first pane's name switches between them: one base to a tab, so two tabs show two side by side.
|
|
8
|
+
|
|
9
|
+
A base can be **lent** to every session: [your agent](/terminal/your-own-agent.md "uses") may look in it as well as in the base the session is for, by naming it (`base: "memory"`, or a note as `memory:tools/opencode`), and write in it, its words [marked as its own](/iso/iso-writes-marked.md "uses"). Notes don't link from one base to another.
|
|
10
|
+
|
|
11
|
+
`isorite memory` makes one such base: `~/isorite-memory`, a private git repository, lent to every session. It is the agent's memory across projects: how you like to work, your tools and how they are set up, what went wrong before. Its [AGENTS.md](/iso/agents-md.md "uses") says what to keep and how, and is yours to change.
|
|
12
|
+
|
|
13
|
+
Open the memory in a tab beside a project's and you watch it learn: what the agent reads there lights on its Atlas, and what it writes appears, marked as its own, with what you had asked it.
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Concept
|
|
3
|
+
title: Your own agent
|
|
4
|
+
description: Claude, Codex, OpenCode, omp, Hermes or any agent that speaks ACP, attached to a base, and how each differs.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
isorite attaches to the agent you already use. It reads your notes and cites them; the notes it reads light on the Atlas; what it changes is marked as its own, as [Iso's changes are](/iso/iso-writes-marked.md "uses"). There are three ways in:
|
|
8
|
+
|
|
9
|
+
- **Here, in Iso's pane.** With no conversation yet, choose an agent of the [ACP registry](https://agentclientprotocol.com/get-started/registry) or give an agent's command, and isorite starts it for this base. Ask it in the pane. It runs on your machine, in the base's repository, set up as it is for its own terminal (its key, its model).
|
|
10
|
+
- **From an ACP front end** (Toad in the terminal, Zed, JetBrains): give it `isorite acp --agent "<the agent's command>"` as its agent. The conversation is live in the front end and in the pane at once, asked from either.
|
|
11
|
+
- **In the agent's own terminal**: give it isorite's MCP in the project's config; the pane offers the lines and writes them when you say so. Only what it does through isorite's tools is seen.
|
|
12
|
+
|
|
13
|
+
Notes in the tray go before the next prompt, from either place. Sessions isorite carried are kept with the base, and listed in the pane's drawer with the agent's own, and with Iso's conversations from before isorite attached your agent, to read. It is given the base's [AGENTS.md](/iso/agents-md.md "uses"), and with [a memory](/terminal/memory.md "see also") lent to it, it remembers across projects.
|
|
14
|
+
|
|
15
|
+
What it may do in the project around the base, edit its files and run commands, is set by the [switches](/atlas/the-switches.md "see also") in Iso's pane: what it asks to do that is switched off is refused.
|
|
16
|
+
|
|
17
|
+
## How each differs
|
|
18
|
+
|
|
19
|
+
- **Claude** (`@agentclientprotocol/claude-agent-acp`): looks through isorite's tools and cites in isorite's form. It asks before each of isorite's tools until you answer *always*, or allow `mcp__isorite` in its settings. Its key and model are its own (`ANTHROPIC_API_KEY`, or a gateway with `ANTHROPIC_BASE_URL`).
|
|
20
|
+
- **Codex** (`@agentclientprotocol/codex-acp`): asks to be signed in first. Started from the pane, isorite signs it in with its API key (`CODEX_API_KEY` or `OPENAI_API_KEY`); with ChatGPT's sign-in, sign in from a front end or its own terminal. A provider of your own goes in `~/.codex/config.toml`. Its calls to isorite's tools show as commands.
|
|
21
|
+
- **OpenCode** (`opencode acp`) and **omp** (`omp acp`): mostly read the Markdown files with their own tools; isorite counts a file of the base read as the note read. OpenCode sends no titles: a session's comes from its list.
|
|
22
|
+
- **Hermes** (`hermes acp`, not in the registry: give its command): reads the files with its own tools too, and says only when a tool began, so a read counts when its turn ends. It is given isorite's tools but not told how to cite, so its answers seldom link to a note. Its model is set in `~/.hermes/config.yaml`.
|
|
23
|
+
|
|
24
|
+
An agent can write a link to a note in its own way (`physics/units.md`, a path on disk): when its turn ends, isorite puts each link to a note that is there in its own form, so it lights and opens as any other.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Concept
|
|
3
|
+
title: Keeping a base well
|
|
4
|
+
description: One idea a note, linked by what it rests on, in your own words.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
What isorite asks of a base, and what [Iso](/iso/iso.md "uses") is told to keep to:
|
|
8
|
+
|
|
9
|
+
- **One idea a note**, with a title that names the idea and a description that says it in a line.
|
|
10
|
+
- **Look before you write.** If a note says it already, extend that note.
|
|
11
|
+
- **Link by what it rests on**: "requires" for what must be understood first, "uses" for what it draws on. See [links and their kinds](/notes/links-and-their-kinds.md "requires").
|
|
12
|
+
- **In your own words.** Iso puts no words in your notes you did not ask for, and its own stay marked until you make them yours.
|
|
13
|
+
- **Leave an open question open.** It marks where your understanding stops: see [questions](/questions-and-problems/questions.md "uses").
|
|
14
|
+
- **Check, do not solve.** A problem is yours to solve; Iso checks your solution.
|
|
15
|
+
|
|
16
|
+
A note that holds two ideas, or two notes that hold one, are yours to split or merge.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: Concept
|
|
3
|
+
title: Starting a base
|
|
4
|
+
description: Installing isorite, making a base, and attaching your agent.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
isorite runs on your own machine, with Node 24 or later:
|
|
8
|
+
|
|
9
|
+
```sh
|
|
10
|
+
npm install -g isorite
|
|
11
|
+
cd ~/code/my-project
|
|
12
|
+
isorite
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
`isorite` opens the project's base in the browser. With none it offers to make a `notes/` folder, and from any other folder it lists the bases it knows and the guide. A folder of Markdown you have already is a base as it is.
|
|
16
|
+
|
|
17
|
+
isorite calls no model itself: it attaches to the agent you already use, set up as it is for its own terminal, with its own key and model. From Iso's pane, choose one, or give isorite's MCP to the agent in its own terminal: see [your own agent](/terminal/your-own-agent.md "see also"). `isorite doctor` checks what isorite needs, and offers the project's MCP config. The steps are in the guide on GitHub: [setting up](https://github.com/lachlanjs/isorite/blob/main/docs/setup.md).
|
|
18
|
+
|
|
19
|
+
`isorite guide` (or choosing the guide from the list `isorite` shows) puts this guide in a folder of your own, where your own agent can be attached.
|
|
20
|
+
|
|
21
|
+
Then [keep it well](/your-own-base/keeping-a-base-well.md "see also").
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "isorite",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.14.0",
|
|
4
4
|
"description": "An agentic harness for understanding: your notes as a knowledge base, an Atlas of them, an agent that reads them, and study.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -21,13 +21,14 @@
|
|
|
21
21
|
"markdown",
|
|
22
22
|
"study",
|
|
23
23
|
"agent",
|
|
24
|
-
"
|
|
24
|
+
"mcp",
|
|
25
|
+
"acp"
|
|
25
26
|
],
|
|
26
27
|
"files": [
|
|
27
28
|
"dist",
|
|
28
29
|
"web",
|
|
29
30
|
"notes",
|
|
30
|
-
"
|
|
31
|
+
"guide",
|
|
31
32
|
"docs",
|
|
32
33
|
"README.md",
|
|
33
34
|
"LICENSE"
|
|
@@ -35,14 +36,10 @@
|
|
|
35
36
|
"dependencies": {
|
|
36
37
|
"@hono/node-server": "^2.1.4",
|
|
37
38
|
"@huggingface/tokenizers": "^0.2.0",
|
|
38
|
-
"@opencode/client": "2.0.32",
|
|
39
|
-
"@opentui/core": "0.5.17",
|
|
40
|
-
"@opentui/solid": "0.5.17",
|
|
41
39
|
"hono": "^4.13.13",
|
|
42
40
|
"markdown-it": "^14.2.0",
|
|
43
41
|
"playwright-core": "^1.63.0",
|
|
44
42
|
"smol-toml": "^1.9.1",
|
|
45
|
-
"solid-js": "1.9.15",
|
|
46
43
|
"yaml": "^2.9.1",
|
|
47
44
|
"zod": "^4.6.7"
|
|
48
45
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@font-face{font-family:Ioskeley Mono;font-style:normal;font-weight:100 550;font-display:swap;src:url(../../../fonts/ioskeley-mono-latin-regular.woff2)format("woff2")}@font-face{font-family:Ioskeley Mono;font-style:italic;font-weight:100 550;font-display:swap;src:url(../../../fonts/ioskeley-mono-latin-italic.woff2)format("woff2")}@font-face{font-family:Ioskeley Mono;font-style:normal;font-weight:551 900;font-display:swap;src:url(../../../fonts/ioskeley-mono-latin-bold.woff2)format("woff2")}@font-face{font-family:Ioskeley Mono;font-style:italic;font-weight:551 900;font-display:swap;src:url(../../../fonts/ioskeley-mono-latin-bolditalic.woff2)format("woff2")}@font-face{font-family:Departure Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../../../fonts/departure-mono-latin-regular.woff2)format("woff2")}@font-face{font-family:Charter;font-style:normal;font-weight:400;font-display:swap;src:url(../../../fonts/charter-regular.woff2)format("woff2")}@font-face{font-family:Charter;font-style:italic;font-weight:400;font-display:swap;src:url(../../../fonts/charter-italic.woff2)format("woff2")}@font-face{font-family:Charter;font-style:normal;font-weight:700;font-display:swap;src:url(../../../fonts/charter-bold.woff2)format("woff2")}@font-face{font-family:Charter;font-style:italic;font-weight:700;font-display:swap;src:url(../../../fonts/charter-bold-italic.woff2)format("woff2")}@font-face{font-family:Math Charter;font-style:normal;font-weight:400;font-display:swap;src:url(../../../fonts/charter-regular.woff2)format("woff2");unicode-range:U+30-39,U+41-5A,U+61-7A;size-adjust:92.6%}@font-face{font-family:Math Charter;font-style:italic;font-weight:400;font-display:swap;src:url(../../../fonts/charter-italic.woff2)format("woff2");unicode-range:U+30-39,U+41-5A,U+61-7A;size-adjust:92.6%}@font-face{font-family:Math Charter;font-style:normal;font-weight:700;font-display:swap;src:url(../../../fonts/charter-bold.woff2)format("woff2");unicode-range:U+30-39,U+41-5A,U+61-7A;size-adjust:92.6%}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ground-0:#07101c;--ground-1:#0c1828;--ground-2:#122238;--ground-3:#1a3150;--line:#23395a;--line-strong:#5c7ba6;--text:#e9eef5;--text-soft:#b4c0d2;--text-faint:#8796ad;--lattice:#6ba6ff;--lattice-deep:#2d6be0;--growth:#f0be4a;--growth-deep:#c28f1e;--malachite:#5fd3a4;--malachite-deep:#1f8f68;--rose:#ff8fa6;--soft:16%;--requires:#b79cff;--builds:#ff9e64;--lattice-soft:color-mix(in srgb, var(--lattice) var(--soft), var(--ground-1));--growth-soft:color-mix(in srgb, var(--growth) var(--soft), var(--ground-1));--malachite-soft:color-mix(in srgb, var(--malachite) var(--soft), var(--ground-1));--rose-soft:color-mix(in srgb, var(--rose) var(--soft), var(--ground-1));--font-text:"Charter", "Bitstream Charter", Georgia, serif;--font-ui:"Ioskeley Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--font-mono:var(--font-ui);--font-pixel:"Departure Mono", "Ioskeley Mono", ui-monospace, monospace;--text-size:18px;--measure:680px;--sheen:255 248 225;--sheen-k:1;--t-ack:.12s;--t-change:.26s;--t-result:.6s;--ease-out:cubic-bezier(.2, .7, .2, 1);--ease-in:cubic-bezier(.6, 0, .8, .3);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px}:root[data-ground=quartz]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ground-0:#f2f0ea;--ground-1:#f8f7f3;--ground-2:#fff;--ground-3:#e6e4dc;--line:#d3d0c5;--line-strong:#7f7d70;--text:#0e1726;--text-soft:#3b475b;--text-faint:#5b677a;--lattice:#1e4fb8;--lattice-deep:#2a62d8;--growth:#8c6200;--growth-deep:#d9a21b;--malachite:#0b6b4a;--malachite-deep:#2fa37a;--rose:#a81e48;--requires:#6a3fc0;--builds:#b5521b;--soft:10%;--sheen:14 23 38;--sheen-k:.55}@media (prefers-color-scheme:light){:root:not([data-ground=lapis]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ground-0:#f2f0ea;--ground-1:#f8f7f3;--ground-2:#fff;--ground-3:#e6e4dc;--line:#d3d0c5;--line-strong:#7f7d70;--text:#0e1726;--text-soft:#3b475b;--text-faint:#5b677a;--lattice:#1e4fb8;--lattice-deep:#2a62d8;--growth:#8c6200;--growth-deep:#d9a21b;--malachite:#0b6b4a;--malachite-deep:#2fa37a;--rose:#a81e48;--requires:#6a3fc0;--builds:#b5521b;--soft:10%;--sheen:14 23 38;--sheen-k:.55}}*,:before,:after{box-sizing:border-box}html,body{height:100%}body{background:var(--ground-0);color:var(--text);font:13px/1.5 var(--font-ui);-webkit-text-size-adjust:100%;margin:0}h1,h2,h3,p{margin:0}a{color:var(--lattice);text-decoration:none}a:hover{color:var(--lattice-deep);text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--lattice);outline-offset:2px}:focus-visible:not(input,textarea,select,[contenteditable]){outline:none}.brackets{z-index:1000;pointer-events:none;--b:var(--text);--l:7px;--w:1.5px;background:linear-gradient(var(--b), var(--b)) top left / var(--l) var(--w) no-repeat, linear-gradient(var(--b), var(--b)) top left / var(--w) var(--l) no-repeat, linear-gradient(var(--b), var(--b)) top right / var(--l) var(--w) no-repeat, linear-gradient(var(--b), var(--b)) top right / var(--w) var(--l) no-repeat, linear-gradient(var(--b), var(--b)) bottom left / var(--l) var(--w) no-repeat, linear-gradient(var(--b), var(--b)) bottom left / var(--w) var(--l) no-repeat, linear-gradient(var(--b), var(--b)) bottom right / var(--l) var(--w) no-repeat, linear-gradient(var(--b), var(--b)) bottom right / var(--w) var(--l) no-repeat;position:fixed}:root{--chosen-cut:polygon(4px 0, 100% 0, 100% calc(100% - 4px), calc(100% - 4px) 100%, 0 100%, 0 4px)}canvas.lustre{z-index:999;pointer-events:none;image-rendering:pixelated;position:fixed}.vein-row{--glint:.18;position:relative}.vein-row:before,.vein-row:after{content:"";background:var(--lattice);pointer-events:none;position:absolute;left:0}.vein-row:before{transform-origin:top;width:3px;top:0;bottom:0;transform:scaleY(0)}.vein-row:after{transform-origin:0;height:1px;bottom:-1px;right:0;transform:scaleX(0)}.vein-row:hover:before,.vein-row.on:before{transition:transform var(--t-ack) var(--ease-out);transform:scaleY(1)}.vein-row:hover:after,.vein-row.on:after{transition:transform var(--t-change) var(--ease-out) .1s;transform:scaleX(1)}.vein-row.on{background:var(--ground-2)}.vein{color:inherit;background-position:0 100%;background-repeat:no-repeat;background-image:linear-gradient(var(--text-soft), var(--text-soft));background-size:100% 1px;padding-bottom:1px;text-decoration:none;position:relative}.vein.requires{background-image:linear-gradient(var(--lattice), var(--lattice));background-size:100% 2px}.vein.also{background-image:linear-gradient(90deg, var(--text-soft) 50%, transparent 50%);background-repeat:repeat-x;background-size:3px 1px}.vein.web{background-image:linear-gradient(90deg, var(--text-soft) 60%, transparent 60%);background-repeat:repeat-x;background-size:8px 1px}.vein:after{content:"";pointer-events:none;background:linear-gradient(90deg, transparent, rgb(var(--sheen) / .95), transparent) no-repeat -40% 0 / 30% 100%;height:2px;position:absolute;bottom:0;left:0;right:0}.vein *{color:inherit}.vein:hover,.vein.lit{color:var(--lattice);text-decoration:none}.vein:hover:after,.vein.lit:after{transition:background-position var(--t-result) var(--ease-out);background-position:140% 0}@media (prefers-reduced-motion:reduce){.vein-row:before,.vein-row:after,.vein:after{transition:none!important}}::selection{background:color-mix(in srgb, var(--lattice) 40%, transparent)}.soft{color:var(--text-soft)}.faint{color:var(--text-faint)}.grow{flex:1 1 0;min-width:0}.pixel{font-family:var(--font-pixel);font-weight:400;line-height:1}.serif{font-family:var(--font-text)}.label{color:var(--text-faint);font-size:12px}.hidden-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.shell{flex-direction:column;min-height:100dvh;display:flex}.page{flex:auto;min-width:0}.logo{flex:none;display:block;overflow:visible}.logo path{fill:none;stroke:var(--text);stroke-width:.7px;stroke-linecap:round;stroke-linejoin:round}.logo .iso{fill:var(--growth);stroke:none}.logo .right{fill:var(--malachite);stroke:none}.btn,.chip{--cut:6px;--c:calc(var(--cut) * .7071);--fill:var(--ground-3);white-space:nowrap;color:var(--text);background:linear-gradient(var(--fill), var(--fill)) center / calc(100% - 2 * var(--cut)) 100% no-repeat, linear-gradient(135deg, transparent var(--c), var(--fill) 0) left top / var(--cut) var(--cut) no-repeat, linear-gradient(var(--fill), var(--fill)) left bottom / var(--cut) calc(100% - var(--cut)) no-repeat, linear-gradient(var(--fill), var(--fill)) right top / var(--cut) calc(100% - var(--cut)) no-repeat, linear-gradient(315deg, transparent var(--c), var(--fill) 0) right bottom / var(--cut) var(--cut) no-repeat;border:0;align-items:center;gap:8px;display:inline-flex}.btn{height:32px;padding:0 14px;font-size:13px}a.btn:hover{color:var(--text);text-decoration:none}.btn:hover:not(:disabled){--fill:var(--line)}.btn:disabled{color:var(--text-faint);cursor:default}.btn.tall{height:44px;padding:0 18px}.btn.primary{--fill:var(--lattice);color:var(--ground-0);font-weight:700}.btn.primary:hover:not(:disabled){--fill:var(--lattice-deep)}.btn.danger{--fill:var(--rose);color:var(--ground-0);font-weight:700}.btn.keep,.btn.edit,.btn.remove{color:#07101c;font-weight:700}.btn.keep{--fill:#7dddb5}.btn.edit{--fill:#f2c968}.btn.remove{--fill:#f7a8ba}.btn.quiet{--fill:transparent;color:var(--text-soft);padding:0 8px}.btn.quiet:hover:not(:disabled){--fill:var(--ground-2);color:var(--text)}.chip{--cut:4px;height:22px;color:var(--text-soft);padding:0 8px;font-size:12px}.chip.lattice{--fill:var(--lattice-soft);color:var(--lattice)}.chip.growth{--fill:var(--growth-soft);color:var(--growth)}.chip.malachite{--fill:var(--malachite-soft);color:var(--malachite)}.chip.rose{--fill:var(--rose-soft);color:var(--rose)}.frame{--cut:10px;--edge:var(--line-strong);--inside:var(--ground-1);isolation:isolate;background:0 0;border:0;position:relative}.frame:before,.frame:after{content:"";z-index:-2;background:var(--edge);pointer-events:none;--k:var(--cut);clip-path:polygon(var(--k) 0, calc(100% - var(--k)) 0, 100% var(--k), 100% calc(100% - var(--k)), calc(100% - var(--k)) 100%, var(--k) 100%, 0 calc(100% - var(--k)), 0 var(--k));position:absolute;inset:0}.frame:after{z-index:-1;inset:var(--px,1px);background:var(--inside);--k:max(0px, calc(var(--cut) - .586 * var(--px,1px)))}.frame>.frame-title{color:var(--text-faint);background:var(--behind,var(--ground-0));white-space:nowrap;padding:0 6px;font-size:12px;line-height:18px;position:absolute;top:-9px;left:22px}.field{background:var(--ground-2);border:0;border-bottom:1px solid var(--line-strong);min-width:0;height:32px;padding:0 10px}.field::placeholder{color:var(--text-faint)}.field:focus-visible{border-bottom-color:var(--lattice);box-shadow:0 1px 0 var(--lattice);outline:none}.sq{background:var(--lattice);flex:none;width:8px;height:8px;display:inline-block}.sq.empty{border:1px solid var(--line-strong);background:0 0}.dia{background:var(--growth);flex:none;width:8px;height:8px;display:inline-block;transform:rotate(45deg)}.dia.open{border:1.5px solid var(--growth);background:0 0}.dots{background-image:radial-gradient(var(--line) 1px, transparent 1.2px);background-size:24px 24px}.prose{font:var(--text-size)/1.6 var(--font-text)}.prose>:first-child{margin-top:0}.prose p,.prose table{margin:0 0 1em}.prose .table-wrap{margin:0 0 1em;overflow-x:auto}.prose table{border-collapse:collapse;font:14px/1.45 var(--font-ui);min-width:60%;margin:0}.prose th,.prose td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 12px 8px 0}.prose th{border-bottom:2px solid var(--text-faint);font-weight:700}.prose .katex-display{padding:4px 0;overflow:auto hidden}.prose eqn,.prose section.eqno{display:block}.prose section.eqno{align-items:center;display:flex}.prose section.eqno>eqn{flex:1}:root{--tok-k:var(--lattice);--tok-k-weight:400;--tok-s:var(--malachite);--tok-n:var(--growth);--tok-t:var(--requires);--tok-c:var(--text-faint)}:root[data-code=ink]{--tok-k:var(--text);--tok-k-weight:700;--tok-s:var(--text-soft);--tok-n:var(--text);--tok-t:var(--text)}.tok-k{color:var(--tok-k);font-weight:var(--tok-k-weight)}.tok-s{color:var(--tok-s)}.tok-n{color:var(--tok-n)}.tok-t{color:var(--tok-t)}.tok-c{color:var(--tok-c);font-style:normal}.code-block{position:relative}.code-block>pre{font:13px/20px var(--font-mono);background:var(--ground-1);border-left:2px solid var(--line-strong);margin:0;padding:12px 16px;overflow-x:auto}.code-block>pre>code{font:inherit}.prose>.code-block,.prose>.diagram{margin:0 0 20px}.code-block>.code-lang{font:12px/16px var(--font-ui);color:var(--text-faint);pointer-events:none;position:absolute;top:8px;right:12px}.code-block>.code-copy{background:var(--ground-1);width:28px;height:28px;color:var(--text-faint);cursor:pointer;opacity:0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:4px;right:4px}.code-block>.code-copy svg{fill:none;stroke:currentColor;stroke-width:1.4px;width:16px;height:16px}.code-block:hover>.code-copy,.code-block>.code-copy:focus-visible{opacity:1}.code-block:hover>.code-copy+.code-lang{visibility:hidden}.code-block:has(>.code-copy:focus-visible)>.code-lang{visibility:hidden}.code-block>.code-copy:hover{color:var(--text)}.code-block>.code-copy.done{color:var(--malachite);opacity:1}@media (hover:none){.code-block>.code-copy{opacity:1}.code-block>.code-copy+.code-lang{visibility:hidden}}.diagram{--pele-bg:var(--ground-0);--pele-fg:var(--text);--pele-muted:var(--text-faint);--pele-line:var(--line-strong);--pele-surface:var(--ground-1);--pele-surface-alt:var(--ground-3);--pele-border:var(--line-strong);--pele-accent:var(--lattice);--pele-font:var(--font-ui);--pele-font-mono:var(--font-mono);--pele-radius:0;--pele-error:var(--rose);--pele-critical:var(--rose);--pele-series-1:var(--lattice);--pele-series-2:var(--growth);--pele-series-3:var(--malachite);--pele-series-4:var(--rose);--pele-series-5:var(--requires);--pele-series-6:var(--builds);--pele-series-7:var(--lattice-deep);--pele-series-8:var(--growth-deep);max-width:100%;font:12px/1.4 var(--font-ui);overflow:auto hidden}.diagram svg{max-width:none;display:block}.prose .diagram{margin:0 0 1em}.diagram>pre{font:13px/20px var(--font-mono);white-space:pre-wrap;color:var(--text-soft);margin:0}.katex{font-size:1.05em}.katex,.katex .mathit,.katex .mathbf,.katex .mainrm{font-family:Math Charter,KaTeX_Main,serif}.katex .mathnormal,.katex .boldsymbol{font-family:Math Charter,KaTeX_Math,serif}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(./KaTeX_AMS-Regular.BQhdFMY1.woff2)format("woff2"),url(./KaTeX_AMS-Regular.DMm9YOAa.woff)format("woff"),url(./KaTeX_AMS-Regular.DRggAlZN.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(./KaTeX_Caligraphic-Bold.Dq_IR9rO.woff2)format("woff2"),url(./KaTeX_Caligraphic-Bold.BEiXGLvX.woff)format("woff"),url(./KaTeX_Caligraphic-Bold.ATXxdsX0.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(./KaTeX_Caligraphic-Regular.Di6jR-x-.woff2)format("woff2"),url(./KaTeX_Caligraphic-Regular.CTRA-rTL.woff)format("woff"),url(./KaTeX_Caligraphic-Regular.wX97UBjC.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(./KaTeX_Fraktur-Bold.CL6g_b3V.woff2)format("woff2"),url(./KaTeX_Fraktur-Bold.BsDP51OF.woff)format("woff"),url(./KaTeX_Fraktur-Bold.BdnERNNW.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(./KaTeX_Fraktur-Regular.CTYiF6lA.woff2)format("woff2"),url(./KaTeX_Fraktur-Regular.Dxdc4cR9.woff)format("woff"),url(./KaTeX_Fraktur-Regular.CB_wures.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(./KaTeX_Main-Bold.Cx986IdX.woff2)format("woff2"),url(./KaTeX_Main-Bold.Jm3AIy58.woff)format("woff"),url(./KaTeX_Main-Bold.waoOVXN0.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(./KaTeX_Main-BoldItalic.DxDJ3AOS.woff2)format("woff2"),url(./KaTeX_Main-BoldItalic.SpSLRI95.woff)format("woff"),url(./KaTeX_Main-BoldItalic.DzxPMmG6.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(./KaTeX_Main-Italic.NWA7e6Wa.woff2)format("woff2"),url(./KaTeX_Main-Italic.BMLOBm91.woff)format("woff"),url(./KaTeX_Main-Italic.3WenGoN9.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(./KaTeX_Main-Regular.B22Nviop.woff2)format("woff2"),url(./KaTeX_Main-Regular.Dr94JaBh.woff)format("woff"),url(./KaTeX_Main-Regular.ypZvNtVU.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(./KaTeX_Math-BoldItalic.CZnvNsCZ.woff2)format("woff2"),url(./KaTeX_Math-BoldItalic.iY-2wyZ7.woff)format("woff"),url(./KaTeX_Math-BoldItalic.B3XSjfu4.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(./KaTeX_Math-Italic.t53AETM-.woff2)format("woff2"),url(./KaTeX_Math-Italic.DA0__PXp.woff)format("woff"),url(./KaTeX_Math-Italic.flOr_0UB.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(./KaTeX_SansSerif-Bold.D1sUS0GD.woff2)format("woff2"),url(./KaTeX_SansSerif-Bold.DbIhKOiC.woff)format("woff"),url(./KaTeX_SansSerif-Bold.CFMepnvq.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(./KaTeX_SansSerif-Italic.C3H0VqGB.woff2)format("woff2"),url(./KaTeX_SansSerif-Italic.DN2j7dab.woff)format("woff"),url(./KaTeX_SansSerif-Italic.YYjJ1zSn.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(./KaTeX_SansSerif-Regular.DDBCnlJ7.woff2)format("woff2"),url(./KaTeX_SansSerif-Regular.CS6fqUqJ.woff)format("woff"),url(./KaTeX_SansSerif-Regular.BNo7hRIc.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(./KaTeX_Script-Regular.D3wIWfF6.woff2)format("woff2"),url(./KaTeX_Script-Regular.D5yQViql.woff)format("woff"),url(./KaTeX_Script-Regular.C5JkGWo-.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(./KaTeX_Size1-Regular.mCD8mA8B.woff2)format("woff2"),url(./KaTeX_Size1-Regular.C195tn64.woff)format("woff"),url(./KaTeX_Size1-Regular.Dbsnue_I.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(./KaTeX_Size2-Regular.Dy4dx90m.woff2)format("woff2"),url(./KaTeX_Size2-Regular.oD1tc_U0.woff)format("woff"),url(./KaTeX_Size2-Regular.B7gKUWhC.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC)format("woff2"),url(./KaTeX_Size3-Regular.CTq5MqoE.woff)format("woff"),url(./KaTeX_Size3-Regular.DgpXs0kz.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(./KaTeX_Size4-Regular.Dl5lxZxV.woff2)format("woff2"),url(./KaTeX_Size4-Regular.BF-4gkZK.woff)format("woff"),url(./KaTeX_Size4-Regular.DWFBv043.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(./KaTeX_Typewriter-Regular.CO6r4hn1.woff2)format("woff2"),url(./KaTeX_Typewriter-Regular.C0xS9mPB.woff)format("woff"),url(./KaTeX_Typewriter-Regular.D3Ib7_Hf.ttf)format("truetype")}.katex{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,math,Times New Roman,serif;position:relative}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.18.10"}.katex .katex-mathml{clip-path:inset(50%);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.katex-newline{display:block}.katex .katex-base{white-space:nowrap;width:min-content;position:relative}.katex .katex-base,.katex .katex-strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;table-layout:fixed;display:inline-table}.katex .vlist-r{display:table-row}.katex .vlist{vertical-align:bottom;display:table-cell;position:relative}.katex .vlist>span{height:0;display:block;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{width:0;overflow:hidden}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{vertical-align:bottom;width:2px;min-width:2px;font-size:1px;display:table-cell}.katex .katex-vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .katex-thinbox{flex-direction:row;width:0;max-width:0;display:inline-flex}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .katex-hdashline,.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-rule,.katex .katex-underline .underline-line,.katex .mfrac .frac-line{min-height:1px}.katex .mspace{display:inline-block}.katex .katex-smash{line-height:0;display:inline}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.katex-inner,.katex .llap>.katex-inner,.katex .rlap>.katex-inner{position:absolute}.katex .clap>.katex-fix,.katex .llap>.katex-fix,.katex .rlap>.katex-fix{display:inline-block}.katex .llap>.katex-inner{right:0}.katex .clap>.katex-inner,.katex .rlap>.katex-inner{left:0}.katex .clap>.katex-inner>span{margin-left:-50%;margin-right:50%}.katex .katex-rule{border:0 solid;display:inline-block;position:relative}.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .katex-hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.katex-root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .katex-sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .katex-sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .katex-sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .katex-sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .katex-sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .katex-sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .katex-sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .katex-sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .katex-sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .katex-sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .katex-sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .katex-sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .katex-sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .katex-sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .katex-sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .katex-sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .katex-sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .katex-sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .katex-sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .katex-sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .katex-sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .katex-sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .katex-sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .katex-sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .katex-sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .katex-sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .katex-sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .katex-sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .katex-sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .katex-sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .katex-sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .katex-sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .katex-sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .katex-sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .katex-sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .katex-sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .katex-sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .katex-sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .katex-sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .katex-sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .katex-sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .katex-sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .katex-sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .katex-sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .katex-sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .katex-sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .katex-sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .katex-sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .katex-sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .katex-sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .katex-sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .katex-sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .katex-sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .katex-sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .katex-sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .katex-sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .katex-sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .katex-sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .katex-sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .katex-sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .katex-sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .katex-sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .katex-sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .katex-sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .katex-sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .katex-sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .katex-sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .katex-sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .katex-sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .katex-sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .katex-sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .katex-sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .katex-sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .katex-sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .katex-sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .katex-sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .katex-sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .katex-sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .katex-sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .katex-sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .katex-sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .katex-sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .katex-sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .katex-sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .katex-sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .katex-sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .katex-sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .katex-sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .katex-sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .katex-sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .katex-sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .katex-sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .katex-sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .katex-sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .katex-sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .katex-sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .katex-sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .katex-sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .katex-sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .katex-sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .katex-sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .katex-sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .katex-sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .katex-sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .katex-sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .katex-sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .katex-sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .katex-sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .katex-sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .katex-sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .katex-sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .katex-sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .katex-sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .katex-sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .katex-sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .katex-sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .katex-sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .katex-sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .katex-sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .katex-sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .katex-sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{width:.12em;display:inline-block}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .katex-accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .katex-accent .accent-body{position:relative}.katex .katex-accent .accent-body:not(.accent-full){width:0}.katex .katex-overlay{display:block}.katex .mtable .vertical-separator{min-width:1px;display:inline-block}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .katex-stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .katex-stretchy:after,.katex .katex-stretchy:before{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{width:50.2%;position:absolute;left:0;overflow:hidden}.katex .halfarrow-right{width:50.2%;position:absolute;right:0;overflow:hidden}.katex .brace-left{width:25.1%;position:absolute;left:0;overflow:hidden}.katex .brace-center{width:50%;position:absolute;left:25%;overflow:hidden}.katex .brace-right{width:25.1%;position:absolute;right:0;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .katex-sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .reflectbox{display:inline-block;transform:scaleX(-1)}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{text-align:left;display:inline-block;position:absolute;right:calc(50% + .3em)}.katex .cd-label-right{text-align:right;display:inline-block;position:absolute;left:calc(50% + .3em)}.katex-display{text-align:center;margin:1em 0;display:block}.katex-display>.katex{text-align:center;white-space:nowrap;display:block}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.katex-tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.katex-tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}.n.svelte-m50bdg{left:calc(var(--x) * var(--u));top:calc(var(--y) * var(--u));width:calc(var(--w) * var(--u));height:calc(var(--h) * var(--u));color:var(--text-soft);--glint:.3;background:var(--ground-2);border:var(--px) solid var(--line-strong);text-decoration:none;transition:opacity .15s;position:absolute;overflow:hidden}.n.svelte-m50bdg:hover{color:var(--text);text-decoration:none}.n.file.svelte-m50bdg{color:var(--text-faint);background:var(--ground-0);border-style:dashed;border-color:var(--line-strong);gap:6px}.n.file.svelte-m50bdg .glyph{color:var(--text-soft)}.inner.svelte-m50bdg{width:calc(100% * var(--k));height:calc(100% * var(--k));transform-origin:0 0;transform:scale(var(--ik));font:11px/14px var(--font-ui);align-items:center;gap:6px;padding:0 6px;display:flex;position:absolute;top:0;left:0;container-type:size}.t.svelte-m50bdg{overflow-wrap:normal;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;min-width:0;display:none;overflow:hidden}.atlas-world.labels .t.svelte-m50bdg{display:-webkit-box}@container (width>=130px){.inner.svelte-m50bdg>:where(.svelte-m50bdg){font-size:13px;line-height:17px}}@container (width>=175px){.inner.svelte-m50bdg>:where(.svelte-m50bdg){font-size:15px;line-height:20px}}@container (width>=235px){.inner.svelte-m50bdg>:where(.svelte-m50bdg){font-size:18px;line-height:24px}}@container (width>=310px){.inner.svelte-m50bdg>:where(.svelte-m50bdg){font-size:22px;line-height:28px}}@container (width<=72px){.inner.svelte-m50bdg>:where(.svelte-m50bdg):first-child{margin-left:-2px}.inner.svelte-m50bdg>:where(.svelte-m50bdg):last-child{margin-right:-2px}.inner.svelte-m50bdg>:where(.svelte-m50bdg){font-size:10px;line-height:12px}.t.svelte-m50bdg{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere}}@container (height<=48px){.t.svelte-m50bdg{-webkit-line-clamp:2;line-clamp:2}}@container (height<=32px){.t.svelte-m50bdg{-webkit-line-clamp:1;line-clamp:1}}@container (height<=17px) or (width<=40px){.atlas-world.labels .t.svelte-m50bdg{display:none}}.question.svelte-m50bdg,.problem.svelte-m50bdg{overflow:visible}.notch.svelte-m50bdg{box-sizing:content-box;background:var(--behind);fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px;padding:0 2px;position:absolute;top:-7px;left:9px}.question.svelte-m50bdg .notch:where(.svelte-m50bdg){color:var(--rose)}.problem.svelte-m50bdg .notch:where(.svelte-m50bdg){color:var(--text-soft)}.problem.done.svelte-m50bdg .notch:where(.svelte-m50bdg){color:var(--malachite)}.question.svelte-m50bdg .t:where(.svelte-m50bdg),.problem.svelte-m50bdg .t:where(.svelte-m50bdg){overflow:hidden}.prospect.svelte-m50bdg{background:var(--ground-0);border:calc(1.5 * var(--px)) dotted var(--rose);color:var(--text-faint)}.dim.svelte-m50bdg{opacity:.5}.p-key.svelte-m50bdg{outline:calc(1.5 * var(--px)) dashed var(--growth);outline-offset:calc(3 * var(--px))}.p-sem.svelte-m50bdg{outline:calc(2 * var(--px)) dotted var(--growth);outline-offset:calc(3 * var(--px))}.p-link.svelte-m50bdg{outline:calc(1.5 * var(--px)) solid var(--growth);outline-offset:calc(3 * var(--px))}.p-used.svelte-m50bdg{outline:calc(1.5 * var(--px)) solid var(--growth);outline-offset:calc(3 * var(--px));background:var(--growth-soft);color:var(--text)}.at.svelte-m50bdg,.req.svelte-m50bdg,.bld.svelte-m50bdg{color:var(--text);outline:calc(2 * var(--px)) solid var(--text);outline-offset:calc(2 * var(--px))}.req.svelte-m50bdg{outline-color:color-mix(in srgb, var(--requires) var(--lit,100%), transparent)}.req.far.svelte-m50bdg{outline-width:var(--px);color:var(--text-soft)}.use.svelte-m50bdg{color:var(--text);outline:var(--px) solid var(--text-soft);outline-offset:calc(2 * var(--px))}.also.svelte-m50bdg{color:var(--text-soft);outline:var(--px) dotted var(--text-faint);outline-offset:calc(2 * var(--px))}.bld.svelte-m50bdg{outline-color:var(--builds)}.here.svelte-m50bdg{box-shadow:inset calc(3 * var(--px)) 0 0 var(--text);color:var(--text)}.mo-you.svelte-m50bdg{outline:calc(2.5 * var(--px)) solid var(--lattice);outline-offset:calc(3 * var(--px));z-index:3}.mo-iso.svelte-m50bdg{outline:calc(2.5 * var(--px)) solid var(--growth);outline-offset:calc(3 * var(--px));z-index:3}.given.svelte-m50bdg{background:var(--growth-soft);border-color:var(--growth);color:var(--text)}.held.svelte-m50bdg{background:var(--lattice-soft);border-color:var(--lattice);color:var(--text)}.changed.svelte-m50bdg,.order.svelte-m50bdg{overflow:visible}.dia.svelte-m50bdg{background:var(--growth);width:9px;height:9px;transform:rotate(45deg);scale:var(--ik);position:absolute;top:-5px;right:-5px}.order.svelte-m50bdg{background:var(--growth);width:16px;height:16px;color:var(--ground-0);z-index:1;scale:var(--ik);place-items:center;font-size:10px;font-weight:700;display:grid;position:absolute;top:-9px;left:-9px}.folder.svelte-ywp27z{left:calc(var(--x) * var(--u));top:calc(var(--y) * var(--u));width:calc(var(--w) * var(--u));height:calc(var(--h) * var(--u));--cut:10px;position:absolute}.frame-title.svelte-ywp27z{z-index:1;max-width:calc((100% - 44px) * var(--k));text-overflow:ellipsis;cursor:pointer;transform-origin:0 0;transform:scale(var(--ik)) translateY(-50%);border:0;top:0;overflow:hidden}.frame-title.svelte-ywp27z:hover{color:var(--text)}.closed.svelte-ywp27z{--inside:var(--ground-2);text-align:left;color:var(--text);padding:0;font-size:12px;line-height:1.5;overflow:hidden}.closed.svelte-ywp27z .inner:where(.svelte-ywp27z){width:calc(100% * var(--k));height:calc(100% * var(--k));transform-origin:0 0;transform:scale(var(--ik));flex-direction:column;justify-content:center;align-items:flex-start;padding:9px 12px;display:flex;position:absolute;top:0;left:0;container-type:size}.closed.svelte-ywp27z:hover{--inside:var(--ground-3)}.req.svelte-ywp27z{--edge:var(--requires)}.bld.svelte-ywp27z{--edge:var(--builds)}.held.svelte-ywp27z{transform-origin:100% 100%;transform:scale(var(--ik)) translateY(50%);max-width:calc((100% - 44px) * var(--k));text-overflow:ellipsis;color:var(--edge);cursor:default;pointer-events:none;inset:auto 22px 0 auto;overflow:hidden}.closed.req.svelte-ywp27z .label:where(.svelte-ywp27z),.closed.bld.svelte-ywp27z .label:where(.svelte-ywp27z){color:var(--edge)}.dim.svelte-ywp27z{opacity:.5}.closed.svelte-ywp27z span:where(.svelte-ywp27z){text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}@container (width<=70px){.name.svelte-ywp27z,.label.svelte-ywp27z{display:none}}@container (height<=22px){.name.svelte-ywp27z,.label.svelte-ywp27z{display:none}}@container (height<=44px){.closed.svelte-ywp27z .label:where(.svelte-ywp27z){display:none}}.here.svelte-ywp27z{box-shadow:inset calc(3 * var(--px)) 0 0 var(--text)}.mo-you.svelte-ywp27z{outline:calc(2.5 * var(--px)) solid var(--lattice);outline-offset:calc(3 * var(--px));z-index:3}.mo-iso.svelte-ywp27z{outline:calc(2.5 * var(--px)) solid var(--growth);outline-offset:calc(3 * var(--px));z-index:3}.given.svelte-ywp27z{outline:calc(2 * var(--px)) solid var(--growth);outline-offset:calc(2 * var(--px))}.routes.svelte-k96fgh{pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}path.svelte-k96fgh{fill:none;vector-effect:non-scaling-stroke;stroke-linejoin:round}.base.svelte-k96fgh{stroke:var(--line-strong);stroke-width:1.5px;opacity:.6}.base.trunk.svelte-k96fgh{stroke-width:3px;opacity:.8}.weak.svelte-k96fgh{stroke-width:1px;opacity:.3}.weak.trunk.svelte-k96fgh{stroke-width:2px;opacity:.45}.lit.svelte-k96fgh{stroke-width:3px;stroke-dasharray:7 5;animation:.7s linear infinite svelte-k96fgh-run}.requires.svelte-k96fgh{stroke:var(--requires)}.builds.svelte-k96fgh{stroke:var(--builds)}.iso.svelte-k96fgh{stroke:var(--growth);stroke-width:2.5px}.uses.svelte-k96fgh{stroke:var(--text-soft);stroke-width:1.5px;stroke-dasharray:none;animation:none}@keyframes svelte-k96fgh-run{to{stroke-dashoffset:-12px}}.grown.svelte-k96fgh{vector-effect:none;stroke:var(--growth);stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:5.5s ease-in-out forwards svelte-k96fgh-grow}@keyframes svelte-k96fgh-grow{0%{stroke-dashoffset:1px;opacity:1}9%{stroke-dashoffset:1px}42%{stroke-dashoffset:0;opacity:1}78%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:0}}.still.svelte-k96fgh{animation:none}.along.svelte-k96fgh{vector-effect:none;stroke-dasharray:1;stroke-linecap:butt}.retract.svelte-k96fgh{stroke-dashoffset:0;animation:.22s ease-in forwards svelte-k96fgh-retract}.draw.svelte-k96fgh{stroke-dashoffset:1px;animation:.34s ease-out forwards svelte-k96fgh-draw}.touch.svelte-k96fgh{stroke:var(--lattice);stroke-dashoffset:1px;animation:svelte-k96fgh-draw calc(var(--t-change) * 1.5) var(--ease-out) forwards}@keyframes svelte-k96fgh-retract{to{stroke-dashoffset:1px}}@keyframes svelte-k96fgh-draw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.lit.svelte-k96fgh{animation:none}.touch.svelte-k96fgh{stroke-dashoffset:0;animation:none}.grown.svelte-k96fgh{stroke-dashoffset:0;opacity:.6;animation:none}}.atlas.svelte-14y1y1z{isolation:isolate;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:grab;outline-offset:-2px;height:100%;position:relative;overflow:clip}.atlas.svelte-14y1y1z:active{cursor:grabbing}.atlas-world.svelte-14y1y1z{transform-origin:0 0;width:0;height:0;position:absolute;top:0;left:0}.atlas-world.moving.svelte-14y1y1z{will-change:transform}.ground.svelte-14y1y1z{z-index:-1;pointer-events:none;will-change:transform;position:absolute;inset:-24px}.scaled.svelte-14y1y1z{transform-origin:0 0;width:0;height:0;position:absolute;top:0;left:0}.sat.svelte-14y1y1z{left:calc(var(--x) * var(--u));top:calc(var(--y) * var(--u));width:calc(3 * var(--u));height:calc(3 * var(--u));background:var(--ground-1);border:var(--px) solid var(--line-strong);color:var(--lattice);place-items:center;display:grid;position:absolute}.sat.svelte-14y1y1z svg:where(.svelte-14y1y1z){fill:none;stroke:currentColor;stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}.sat.web.svelte-14y1y1z:hover,.sat.web.svelte-14y1y1z:focus-visible,.sat.picture.svelte-14y1y1z:hover,.sat.picture.svelte-14y1y1z:focus-visible{border-color:var(--lattice)}.sat.picture.svelte-14y1y1z{overflow:hidden}.sat.picture.svelte-14y1y1z img:where(.svelte-14y1y1z){object-fit:cover;width:100%;height:100%;display:block}.sat.broken.svelte-14y1y1z{color:var(--rose);border-color:var(--rose);border-style:dashed}.shifting.svelte-14y1y1z :is(.n,.sn,.folder){transition:left .45s,top .45s,width .45s,height .45s}@media (prefers-reduced-motion:reduce){.shifting.svelte-14y1y1z :is(.n,.sn,.folder){transition:none}}.said.svelte-14y1y1z{padding:var(--space-4);text-align:center;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.offer.svelte-14y1y1z{--inside:var(--ground-2);z-index:8;gap:2px;min-width:150px;padding:6px;display:grid;position:absolute}.offer.svelte-14y1y1z button:where(.svelte-14y1y1z){height:40px;color:var(--text);font:13px var(--font-ui);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0 10px;display:flex}.offer.svelte-14y1y1z button:where(.svelte-14y1y1z):hover,.offer.svelte-14y1y1z button:where(.svelte-14y1y1z):focus-visible{background:var(--ground-3)}.offer.svelte-14y1y1z i:where(.svelte-14y1y1z){width:12px;color:var(--growth);font-size:11px;font-style:normal}.grasp.svelte-14y1y1z{left:calc(var(--x) * var(--u) - 10px);top:calc(var(--y) * var(--u) - 12px);pointer-events:none;z-index:1;align-items:center;gap:6px;font-size:11px;display:flex;position:absolute}.grasp.svelte-14y1y1z svg:where(.svelte-14y1y1z){flex:none;overflow:visible}.grasp.svelte-14y1y1z svg:where(.svelte-14y1y1z) path:where(.svelte-14y1y1z){fill:var(--growth-soft);stroke:var(--growth);stroke-width:1.5px;stroke-linejoin:round;stroke-dasharray:2 2.5;animation:.6s linear infinite svelte-14y1y1z-march}.grasp.svelte-14y1y1z svg:where(.svelte-14y1y1z) path.ln:where(.svelte-14y1y1z){fill:none;stroke-dasharray:none;animation:none}.grasp.svelte-14y1y1z span:where(.svelte-14y1y1z){white-space:nowrap;background:var(--ground-0);padding:0 4px}@media (prefers-reduced-motion:reduce){.grasp.svelte-14y1y1z svg:where(.svelte-14y1y1z) path:where(.svelte-14y1y1z){animation:none}}@keyframes svelte-14y1y1z-march{to{stroke-dashoffset:-9px}}.given.svelte-14y1y1z{background:var(--ground-1);border:1px solid var(--growth);z-index:2;margin:0;padding:6px 10px;font-size:12px;position:absolute;bottom:12px;left:12px}.given.svelte-14y1y1z:first-letter{color:var(--growth)}.legend.svelte-14y1y1z{color:var(--text-soft);pointer-events:none;z-index:2;flex-wrap:wrap;gap:4px 14px;margin:0;font-size:11px;display:flex;position:absolute;bottom:10px;left:12px;right:12px}.legend.svelte-14y1y1z span:where(.svelte-14y1y1z){background:var(--ground-0);align-items:center;gap:6px;padding:0 4px;display:inline-flex}.legend.svelte-14y1y1z .k:where(.svelte-14y1y1z){place-items:center;width:10px;height:10px;font-style:normal;display:inline-grid}.legend.svelte-14y1y1z .g:where(.svelte-14y1y1z){background:var(--growth-soft);border:1px solid var(--growth)}.legend.svelte-14y1y1z .h:where(.svelte-14y1y1z){background:var(--lattice-soft);border:1px solid var(--lattice)}.legend.svelte-14y1y1z .d:where(.svelte-14y1y1z){background:var(--growth);width:7px;height:7px;transform:rotate(45deg)}.legend.svelte-14y1y1z .n:where(.svelte-14y1y1z){background:var(--growth);width:14px;height:14px;color:var(--ground-0);font-size:9px;font-weight:700}.carried.svelte-14y1y1z{z-index:50;pointer-events:none;background:var(--ground-2);border:1px solid var(--line-strong);white-space:nowrap;padding:3px 8px;font-size:12px;position:fixed;transform:translate(10px,10px)}.carried.over.svelte-14y1y1z{border-color:var(--growth)}.notice.svelte-14y1y1z{background:var(--ground-1);border:1px solid var(--rose);color:var(--rose);z-index:2;margin:0;padding:6px 10px;font-size:12px;position:absolute;bottom:12px;left:12px}.pip.svelte-14y1y1z{z-index:4;background:var(--ground-1);border:1px solid var(--line-strong);width:22px;height:22px;color:var(--text);cursor:pointer;place-items:center;margin:-11px 0 0 -11px;padding:0;display:grid;position:absolute}.pip.svelte-14y1y1z svg:where(.svelte-14y1y1z){transform:rotate(var(--a));fill:currentColor}.pip.svelte-14y1y1z:hover,.pip.svelte-14y1y1z:focus-visible{border-color:var(--text)}.pip.you.svelte-14y1y1z{color:var(--lattice);border-color:var(--lattice)}.pip.iso.svelte-14y1y1z{color:var(--growth);border-color:var(--growth)}.count.svelte-14y1y1z{left:calc(var(--x) * var(--u));top:calc(var(--y) * var(--u));color:var(--text-faint);pointer-events:none;font-size:12px;line-height:18px;position:absolute}.count.right.svelte-14y1y1z{transform:translate(7px,-50%)}.count.above.svelte-14y1y1z{transform:translate(-50%,calc(-100% - 3px))}.map.svelte-nwxyyl{height:100%;position:relative}.side.svelte-nwxyyl{z-index:5;flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;top:16px;right:16px}.icon.svelte-nwxyyl{width:28px;height:28px;color:var(--text-faint);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.icon.svelte-nwxyyl:hover,.icon.svelte-nwxyyl:focus-visible{color:var(--text)}.icon[aria-pressed=true].svelte-nwxyyl{background:var(--c,var(--lattice));color:var(--ground-0);--cut:4px;clip-path:var(--chosen-cut)}@media (width<=600px){.side.svelte-nwxyyl{display:none}}.drawer.svelte-19hl4w{flex:auto;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));align-content:start;gap:11px;min-height:0;padding:16px;display:grid;overflow:auto}.none.svelte-19hl4w{grid-column:1/-1;font-size:12px}h2.none.svelte-19hl4w{margin:8px 0 0;font-weight:400}.bad.svelte-19hl4w{color:var(--rose)}code.svelte-19hl4w{font:11.5px var(--font-mono);overflow-wrap:anywhere}.more.svelte-19hl4w{font:inherit;color:var(--lattice);cursor:pointer;background:0 0;border:0;padding:0}.spec.svelte-19hl4w{--cut:8px;--inside:var(--ground-1);--edge:var(--line);text-align:left;width:100%;color:var(--text-faint);cursor:pointer;--glint:.25;transition:color var(--t-ack) var(--ease-out);grid-template-columns:44px minmax(0,1fr);align-content:start;gap:4px 14px;padding:14px;display:grid}.spec.svelte-19hl4w .crystal{grid-row:span 3}.spec.svelte-19hl4w:hover:not(:disabled){--edge:var(--line-strong);color:var(--growth)}.spec.svelte-19hl4w:disabled{cursor:default;opacity:.6}.spec.live.svelte-19hl4w{color:var(--growth)}.spec.on.svelte-19hl4w{--edge:var(--lattice);color:var(--growth)}.q.svelte-19hl4w{font:15px/22px var(--font-text);color:var(--text);overflow-wrap:anywhere;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.m.svelte-19hl4w{font:11px/16px var(--font-ui);color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em;overflow-wrap:anywhere}.attach.svelte-6livgy{border-top:1px dashed var(--line);color:var(--text-soft);gap:8px;margin:auto 0 0;padding:12px 0 0;font-size:12.5px;display:grid}.label.svelte-6livgy{font-weight:400}ul.svelte-6livgy{gap:6px;margin:0;padding-left:18px;display:grid}b.svelte-6livgy{color:var(--text);font-weight:500}.chosen.svelte-6livgy,code.svelte-6livgy{font:11.5px var(--font-mono);color:var(--text);overflow-wrap:anywhere}pre.svelte-6livgy{background:var(--ground-1);border:1px solid var(--line);font:11.5px/1.45 var(--font-mono);max-height:200px;margin:0;padding:8px 10px;overflow:auto}.pick.svelte-6livgy{gap:6px;display:grid}.pick.svelte-6livgy p:where(.svelte-6livgy){margin:0}.pick.svelte-6livgy .field:where(.svelte-6livgy){width:100%;min-width:0}.more.svelte-6livgy{font:inherit;color:var(--lattice);cursor:pointer;background:0 0;border:0;padding:0}.more.svelte-6livgy:disabled{opacity:.5;cursor:default}.found.svelte-6livgy{margin-top:4px;padding-left:0;list-style:none}.bad.svelte-6livgy{color:var(--rose);overflow-wrap:anywhere;display:block}.context.svelte-po8nwq{flex-direction:column;flex:auto;gap:8px;min-height:0;padding:16px;font-size:12px;display:flex;overflow:auto}.column.svelte-po8nwq{flex-direction:column;gap:6px;display:flex}.strata.svelte-po8nwq{border:1px solid var(--line-strong);background:var(--ground-0);min-width:0;height:14px;display:flex}.s.svelte-po8nwq{min-width:2px;height:100%;transition:filter var(--t-ack) var(--ease-out);flex:none}.s.svelte-po8nwq+.s:where(.svelte-po8nwq){box-shadow:inset 1px 0 0 var(--ground-0)}.s.svelte-po8nwq:hover{filter:brightness(1.25)}.instructions.svelte-po8nwq{background:repeating-linear-gradient(135deg, var(--text-faint) 0 1px, transparent 1px 4px)}.notes.svelte-po8nwq{background:var(--lattice)}.conversation.svelte-po8nwq{background:repeating-linear-gradient(90deg, var(--text-soft) 0 1px, transparent 1px 3px)}.room.svelte-po8nwq{background:0 0;flex:auto}.total.svelte-po8nwq{font-variant-numeric:tabular-nums;color:var(--text);align-items:baseline;gap:6px;display:flex}.label.svelte-po8nwq{align-items:center;gap:6px;min-height:22px;margin-top:8px;font-weight:400;display:flex}.rows.svelte-po8nwq{gap:6px;margin:0;padding:0;list-style:none;display:grid}.row.svelte-po8nwq{align-items:flex-start;gap:4px;min-width:0;display:flex}.r.svelte-po8nwq{min-width:0;font:inherit;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;grid-template-columns:14px minmax(0,auto) minmax(0,1fr) auto;align-items:baseline;gap:3px 8px;padding:0;display:grid}.r.svelte-po8nwq:disabled{cursor:default}.mk.svelte-po8nwq{color:var(--growth);text-align:center}.mk.iso.svelte-po8nwq{color:var(--lattice)}.t.svelte-po8nwq{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.d.svelte-po8nwq{text-overflow:ellipsis;white-space:nowrap;color:var(--text-faint);overflow:hidden}.num.svelte-po8nwq{color:var(--text-faint);font-variant-numeric:tabular-nums;grid-column:4}.x.svelte-po8nwq{width:22px;height:18px;color:var(--text-faint);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.x.svelte-po8nwq:hover,.bad.svelte-po8nwq{color:var(--rose)}.chat.svelte-17377q0{flex-direction:column;flex:auto;gap:18px;min-height:0;padding:16px;display:flex;overflow:auto}.title.svelte-17377q0{margin-bottom:-8px;font-size:11px}.turn.svelte-17377q0{flex-direction:column;gap:8px;min-width:0;display:flex}.you.svelte-17377q0{flex-direction:column;gap:4px;padding-left:16px;display:flex;position:relative}.you.svelte-17377q0:before{content:"›";color:var(--lattice);position:absolute;top:0;left:0}.asked.svelte-17377q0{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text)}.from.svelte-17377q0{color:var(--text-faint);font-size:11px}.said.svelte-17377q0{font:15px/1.6 var(--font-text);overflow-wrap:anywhere;min-width:0;padding-left:16px;position:relative}.said.svelte-17377q0:before{content:"▸";font:11px var(--font-ui);color:var(--growth);position:absolute;top:1px;left:0}.said.svelte-17377q0 p+p,.said.svelte-17377q0 p+ul,.said.svelte-17377q0 ul+p{margin-top:8px}.said.svelte-17377q0 ul,.said.svelte-17377q0 ol{margin:0;padding-left:20px}.said.svelte-17377q0 pre{overflow-x:auto}.tool.svelte-17377q0{color:var(--text-faint);gap:6px;min-width:0;padding-left:16px;font-size:12px;display:grid;position:relative}.tool.svelte-17377q0:before{content:"·";position:absolute;top:0;left:4px}.tool[data-status=running].svelte-17377q0:before{content:"○";color:var(--growth);left:1px}.tool[data-status=failed].svelte-17377q0 .v:where(.svelte-17377q0){color:var(--rose)}summary.svelte-17377q0,.line.svelte-17377q0{cursor:default;align-items:baseline;gap:8px;min-width:0;list-style:none;display:flex}summary.svelte-17377q0{cursor:pointer}summary.svelte-17377q0::-webkit-details-marker{display:none}.v.svelte-17377q0{color:var(--text-soft);flex:none;min-width:5.5em}.q.svelte-17377q0{font:11.5px var(--font-mono);color:var(--text-soft);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.n.svelte-17377q0{flex:none}.add.svelte-17377q0{color:var(--malachite)}.del.svelte-17377q0{color:var(--rose)}pre.svelte-17377q0{background:var(--ground-1);border:1px solid var(--line);font:11.5px/1.45 var(--font-mono);color:var(--text-soft);white-space:pre;max-height:280px;margin:6px 0 0;padding:8px 10px;overflow:auto}.diff.svelte-17377q0 span:where(.svelte-17377q0){display:block}.in.svelte-17377q0{color:var(--text-faint)}a.note-link.svelte-17377q0{text-decoration:none}.note-link.svelte-17377q0{font:inherit;color:var(--text-soft);cursor:pointer;text-align:left;overflow-wrap:anywhere;background:0 0;border:0;padding:0}.note-link.svelte-17377q0:hover,.note-link.svelte-17377q0:focus-visible{color:var(--lattice)}.permit.svelte-17377q0{border:1px solid var(--growth);color:var(--text-soft);gap:8px;margin-left:16px;padding:10px 12px;font-size:12.5px;display:grid}.tool.svelte-17377q0 .permit:where(.svelte-17377q0){margin-left:0}.permit.svelte-17377q0 code:where(.svelte-17377q0){font:12px var(--font-mono);color:var(--text);overflow-wrap:anywhere}.acts.svelte-17377q0{flex-wrap:wrap;gap:16px;display:flex}.acts.svelte-17377q0 button:where(.svelte-17377q0){font:inherit;color:var(--lattice);cursor:pointer;background:0 0;border:0;padding:0}.acts.svelte-17377q0 button:where(.svelte-17377q0):hover{color:var(--text)}.acts.svelte-17377q0 .no:where(.svelte-17377q0){color:var(--text-faint)}.asks.svelte-17377q0{gap:2px;padding-left:16px;font-size:13px;display:grid}.asks.svelte-17377q0 p:where(.svelte-17377q0){align-items:center;gap:6px;min-width:0;display:flex}.asks.svelte-17377q0 .qm:where(.svelte-17377q0){color:var(--rose);flex:none;margin-left:-17px;margin-right:4px}.asks.svelte-17377q0 .qt:where(.svelte-17377q0){color:var(--text);overflow-wrap:anywhere}.asks.svelte-17377q0 .note-link:where(.svelte-17377q0){color:var(--text)}.asks.svelte-17377q0 .qb:where(.svelte-17377q0){color:var(--text-soft);font-size:12.5px;display:block}.asks.svelte-17377q0 .keep:where(.svelte-17377q0){--cut:5px;border:1px solid var(--rose);height:22px;color:var(--rose);font:10px/20px var(--font-ui);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;--glint:.4;transition:background-color var(--t-ack) var(--ease-out);background:0 0;flex:none;margin-left:4px;padding:0 9px}.asks.svelte-17377q0 .keep:where(.svelte-17377q0):hover{background:var(--rose-soft)}.offer.svelte-17377q0{border-left:2px solid var(--line-strong);gap:4px;margin-left:16px;padding:2px 0 2px 12px;display:grid}.offer.svelte-17377q0 .yours:where(.svelte-17377q0){font:15px/1.6 var(--font-text);color:var(--text);overflow-wrap:anywhere}.offer.svelte-17377q0 .for:where(.svelte-17377q0){color:var(--text-faint);align-items:center;gap:10px;font-size:12px;display:flex}.offer.svelte-17377q0 .in:where(.svelte-17377q0){color:var(--malachite)}.offer.svelte-17377q0 .insert:where(.svelte-17377q0){font:inherit;color:var(--lattice);cursor:pointer;background:0 0;border:0;padding:0}.doing.svelte-17377q0{color:var(--text-faint);align-items:center;gap:10px;font-size:12px;display:flex}.gave.svelte-17377q0{flex-wrap:wrap;gap:4px;display:flex}.chip.svelte-17377q0{border:1px solid var(--line);height:20px;color:var(--text-soft);align-items:center;gap:6px;max-width:100%;padding:0 8px;font-size:11px;display:inline-flex}.chip.svelte-17377q0 .k:where(.svelte-17377q0){color:var(--growth)}.chip.svelte-17377q0 .t:where(.svelte-17377q0){text-overflow:ellipsis;white-space:nowrap;max-width:22ch;overflow:hidden}.parts.svelte-17377q0{flex-wrap:wrap;gap:8px;margin-left:16px;display:flex}.part.svelte-17377q0{text-align:left;min-width:0;max-width:100%;font:10px/14px var(--font-ui);text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);cursor:pointer;--glint:.3;transition:background-color var(--t-ack) var(--ease-out);background:0 0;border:0;justify-items:start;gap:1px;padding:6px 10px 5px;display:grid;position:relative}.part.svelte-17377q0>s:where(.svelte-17377q0){pointer-events:none;--b:var(--line-strong);--l:6px;background:linear-gradient(var(--b), var(--b)) top left / var(--l) 1px no-repeat, linear-gradient(var(--b), var(--b)) top left / 1px var(--l) no-repeat, linear-gradient(var(--b), var(--b)) top right / var(--l) 1px no-repeat, linear-gradient(var(--b), var(--b)) top right / 1px var(--l) no-repeat, linear-gradient(var(--b), var(--b)) bottom left / var(--l) 1px no-repeat, linear-gradient(var(--b), var(--b)) bottom left / 1px var(--l) no-repeat, linear-gradient(var(--b), var(--b)) bottom right / var(--l) 1px no-repeat, linear-gradient(var(--b), var(--b)) bottom right / 1px var(--l) no-repeat;position:absolute;inset:0}.part.svelte-17377q0 b:where(.svelte-17377q0){font:13px/18px var(--font-text);text-transform:none;letter-spacing:0;color:var(--text);overflow-wrap:anywhere;font-weight:400}.part.svelte-17377q0:hover>s:where(.svelte-17377q0),.part.lit.svelte-17377q0>s:where(.svelte-17377q0){--b:var(--lattice)}.part.svelte-17377q0:hover,.part.lit.svelte-17377q0{background:var(--lattice-soft)}.bad.svelte-17377q0{color:var(--rose);padding-left:16px;font-size:12px}.end.svelte-17377q0{padding-left:16px;font-size:12px}.iso.svelte-d2jxoz{flex-direction:column;height:100%;min-height:0;display:flex}.iso.drop.svelte-d2jxoz{outline:2px dashed var(--growth);outline-offset:-4px}.chat.svelte-d2jxoz{flex-direction:column;flex:auto;gap:18px;min-height:0;padding:16px;display:flex;overflow:auto}.bad.svelte-d2jxoz{color:var(--rose);padding-left:16px;font-size:12px}.composer.svelte-d2jxoz{border-top:1px solid var(--line);flex:none;gap:8px;padding:10px 12px;display:grid}.box.svelte-d2jxoz{display:flex;position:relative}textarea.svelte-d2jxoz{resize:none;field-sizing:content;background:var(--ground-1);border:1px solid var(--line);min-width:0;min-height:42px;max-height:160px;font:13px/1.5 var(--font-ui);color:var(--text);flex:auto;padding:9px 34px 9px 10px}.corner.svelte-d2jxoz{width:26px;height:26px;color:var(--growth);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;bottom:5px;right:5px}.corner.stop.svelte-d2jxoz{color:var(--rose)}@media (pointer:fine){.corner.send.svelte-d2jxoz{display:none}}textarea.svelte-d2jxoz:focus{border-color:var(--line-strong);outline:none}.base.svelte-1wk2ip3{font:inherit;color:var(--text-faint);cursor:pointer;text-overflow:ellipsis;background:0 0;border:0;max-width:12em;padding:4px 0;font-size:12px;overflow:hidden}.base.svelte-1wk2ip3:hover,.base.svelte-1wk2ip3:focus-visible,.base[aria-expanded=true].svelte-1wk2ip3{color:var(--text)}.slash.svelte-1wk2ip3{color:var(--text-faint);margin:0 -4px;font-size:12px}.bases.svelte-1wk2ip3{--inside:var(--ground-2);z-index:22;white-space:nowrap;-webkit-user-select:none;user-select:none;width:min(320px,100vw - 16px);padding:22px 12px 12px;position:fixed}.bases.svelte-1wk2ip3:focus-visible{outline:none}ul.svelte-1wk2ip3{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}li.svelte-1wk2ip3{grid-template-columns:16px 1fr 28px;align-items:center;gap:6px;font-size:13px;display:grid}.tick.svelte-1wk2ip3{color:var(--lattice);text-align:center;font-size:12px;font-style:normal}a.svelte-1wk2ip3{color:var(--text-soft);text-overflow:ellipsis;padding:5px 0;text-decoration:none;overflow:hidden}a.svelte-1wk2ip3:hover,a.svelte-1wk2ip3:focus-visible{color:var(--text);text-decoration:underline}li.here.svelte-1wk2ip3 a:where(.svelte-1wk2ip3){color:var(--text)}.lend.svelte-1wk2ip3{width:28px;height:28px;color:var(--text-faint);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:relative}.lend.svelte-1wk2ip3:hover:not(:disabled),.lend.svelte-1wk2ip3:focus-visible{color:var(--text)}.lend[aria-pressed=true].svelte-1wk2ip3{--c:var(--growth);background:var(--c,var(--lattice));color:var(--ground-0);--cut:4px;clip-path:var(--chosen-cut)}.lend.svelte-1wk2ip3:disabled{cursor:default}.bad.svelte-1wk2ip3{color:var(--rose);white-space:normal;margin:8px 0 0;font-size:12px}.phead.svelte-ubc5lw{border-bottom:1px solid var(--line);white-space:nowrap;-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:12px;min-width:0;height:40px;padding:0 10px 0 16px;display:flex;position:relative;overflow:hidden}.pname.svelte-ubc5lw{font-family:var(--font-pixel);color:var(--text-soft);align-items:center;gap:8px;font-size:15px;display:flex}.pname.svelte-ubc5lw:before{content:"";background:var(--line-strong);width:6px;height:6px}.pane.focus .pname.svelte-ubc5lw{color:var(--text)}.pane.focus .pname.svelte-ubc5lw:before{background:var(--lattice)}.switches.svelte-ubc5lw{align-items:center;gap:1px;margin-left:-4px;display:flex}.sw.svelte-ubc5lw{width:28px;height:28px;color:var(--text-faint);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:relative}.sw.svelte-ubc5lw:hover,.sw.svelte-ubc5lw:focus-visible{color:var(--text)}.sw[aria-pressed=true].svelte-ubc5lw{background:var(--c,var(--lattice));color:var(--ground-0);--cut:4px;clip-path:var(--chosen-cut)}.grow.svelte-ubc5lw{flex:auto}.icon.svelte-ubc5lw{width:28px;height:28px;color:var(--text-faint);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.icon.svelte-ubc5lw:hover,.icon.svelte-ubc5lw:focus-visible{color:var(--text)}.gear[aria-expanded=true].svelte-ubc5lw{color:var(--text);box-shadow:inset 0 -2px 0 var(--text)}.settings.svelte-ubc5lw{--inside:var(--ground-2);z-index:21;white-space:normal;-webkit-user-select:text;user-select:text;width:min(400px,100% - 16px);padding:0;position:absolute;top:54px;right:8px}.inner.svelte-ubc5lw{gap:var(--space-6);flex-direction:column;max-height:calc(100dvh - 140px);padding:24px 18px 14px;display:flex;overflow:auto}.settings.svelte-ubc5lw:focus-visible{outline:none}@media (width<=760px){.phead.svelte-ubc5lw{height:48px}.switches.svelte-ubc5lw{scrollbar-width:none;flex:0 auto;min-width:56px;overflow-x:auto}.settings.svelte-ubc5lw{top:62px}.inner.svelte-ubc5lw{max-height:calc(100dvh - 210px)}}.gauge.svelte-1cyuk5c{cursor:pointer;background:0 0;border:0;flex-direction:column;align-self:center;gap:3px;width:32px;margin-right:4px;padding:6px 0;display:inline-flex}.bar.svelte-1cyuk5c{background:var(--ground-2);height:3px;display:block;position:relative}.bar.svelte-1cyuk5c:after{content:"";transform-origin:0;transform:scaleX(var(--fill));background:var(--growth);transition:transform .3s;position:absolute;inset:0}.bar.ctx.long.svelte-1cyuk5c:after{background:var(--builds)}.bar.ctx.full.svelte-1cyuk5c:after{background:var(--rose)}@media (prefers-reduced-motion:reduce){.bar.svelte-1cyuk5c:after{transition:none}}section.svelte-1c4xnzk{gap:var(--space-2);flex-direction:column;display:flex}h2.svelte-1c4xnzk{font-weight:400}.bad.svelte-1c4xnzk{color:var(--rose)}.agents.svelte-1c4xnzk{resize:vertical;field-sizing:content;background:var(--ground-1);border:1px solid var(--line);width:100%;min-height:96px;font:12.5px/1.55 var(--font-mono);color:var(--text);padding:8px 10px}.agents.svelte-1c4xnzk:focus{border-color:var(--line-strong);outline:none}section.svelte-1h9x2hz{gap:var(--space-2);flex-direction:column;display:flex}h2.svelte-1h9x2hz{font-weight:400}.name.svelte-1h9x2hz{color:var(--text)}.danger-text.svelte-1h9x2hz:hover,.danger-text.svelte-1h9x2hz:focus-visible{color:var(--rose)}.ask.svelte-1h9x2hz{gap:var(--space-2);color:var(--text-soft);flex-direction:column;font-size:13px;display:flex}.problem.svelte-1h9x2hz{color:var(--rose);margin:0;font-size:12px}.row.svelte-1h9x2hz{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.btn.on.svelte-1h9x2hz{--fill:var(--lattice);color:var(--ground-0);font-weight:700}.icons.svelte-1h9x2hz{align-items:center;gap:2px;display:flex}.icon.svelte-1h9x2hz{width:28px;height:28px;color:var(--text-faint);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.icon.svelte-1h9x2hz:hover,.icon.svelte-1h9x2hz:focus-visible{color:var(--text)}.icon[aria-pressed=true].svelte-1h9x2hz{background:var(--c,var(--lattice));color:var(--ground-0);--cut:4px;clip-path:var(--chosen-cut)}.icon.off.svelte-1h9x2hz{opacity:.45;background:0 0}.foot.svelte-1h9x2hz{border-top:1px solid var(--line);padding-top:var(--space-3);margin:0;font-size:12px}.says.svelte-12qhfyh{text-overflow:ellipsis;min-width:0;color:var(--text-soft);flex:0 auto;font-size:12px;overflow:hidden}@media (width<=760px){.says.svelte-12qhfyh{flex:none}}.out.svelte-12qhfyh{flex:none;height:28px;padding:0 10px;font-size:12px}.where.svelte-12qhfyh{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:12px;overflow:hidden}@media (width>=761px){.out.svelte-12qhfyh,.where.svelte-12qhfyh{display:none}}.bad.svelte-12qhfyh{color:var(--rose)}.saved.svelte-12qhfyh{flex:none;place-items:center;width:14px;height:28px;display:grid}.saved.svelte-12qhfyh i:where(.svelte-12qhfyh){background:var(--line-strong);border-radius:50%;width:6px;height:6px}.saved.busy.svelte-12qhfyh i:where(.svelte-12qhfyh){background:var(--growth)}.saved.bad.svelte-12qhfyh i:where(.svelte-12qhfyh){background:var(--rose)}.set.svelte-12qhfyh{gap:var(--space-2);flex-direction:column;display:flex}.set.svelte-12qhfyh h2:where(.svelte-12qhfyh){font-weight:400}.shell.svelte-12qhfyh{padding-top:env(safe-area-inset-top)}.panes.svelte-12qhfyh{min-width:0;min-height:0;height:calc(100dvh - env(safe-area-inset-top));display:grid}.pane.svelte-12qhfyh{border-left:1px solid var(--line);background:var(--ground-0);flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.pane.first.svelte-12qhfyh{border-left:0}.pane.top.svelte-12qhfyh{border-bottom:1px solid var(--line)}.pane[hidden].svelte-12qhfyh{display:none}.pbody.svelte-12qhfyh{overscroll-behavior:contain;flex:auto;min-height:0;position:relative;overflow:auto}.atlas-body.svelte-12qhfyh{overflow:hidden}.iso-body.svelte-12qhfyh{flex-direction:column;display:flex;overflow:hidden}.note-body.svelte-12qhfyh{container:page/inline-size}.divider.svelte-12qhfyh{z-index:6;cursor:col-resize;touch-action:none;width:7px;position:absolute;top:0;bottom:0;left:-4px}.divider.svelte-12qhfyh:before{content:"";background:0 0;width:1px;transition:background .15s,width .15s,left .15s;position:absolute;top:0;bottom:0;left:3px}.divider.svelte-12qhfyh:hover:before,.divider.svelte-12qhfyh:focus-visible:before{background:var(--lattice);width:3px;left:2px}.divider.svelte-12qhfyh:focus-visible{outline:none}.tree.svelte-12qhfyh{z-index:7;background:var(--ground-0);position:absolute;inset:40px 0 0;overflow:auto}button.icon.svelte-12qhfyh{cursor:pointer;background:0 0;border:0;padding:0}button.icon[aria-pressed=true].svelte-12qhfyh{background:var(--c,var(--lattice));color:var(--ground-0);--cut:4px;clip-path:var(--chosen-cut)}.tabs.svelte-12qhfyh{display:none}@media (width<=760px){.tree.svelte-12qhfyh{top:48px}.panes.svelte-12qhfyh{scroll-snap-type:x mandatory;scrollbar-width:none;height:calc(100dvh - env(safe-area-inset-top) - 52px - env(safe-area-inset-bottom));display:flex;overflow:auto hidden}.panes.svelte-12qhfyh::-webkit-scrollbar{display:none}.pane.svelte-12qhfyh,.pane[hidden].svelte-12qhfyh{scroll-snap-align:start;scroll-snap-stop:always;border-left:0;flex:0 0 100%;display:flex}.tabs.svelte-12qhfyh{z-index:10;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);background:var(--ground-0);grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tabs.svelte-12qhfyh button:where(.svelte-12qhfyh){height:52px;font-family:var(--font-pixel);color:var(--text-faint);cursor:pointer;background:0 0;border:0;place-content:center;gap:2px;font-size:14px;display:grid;position:relative}.tabs.svelte-12qhfyh button[aria-current=true]:where(.svelte-12qhfyh){color:var(--text)}.tabs.svelte-12qhfyh button[aria-current=true]:where(.svelte-12qhfyh):before{content:"";background:var(--text);height:2px;position:absolute;top:-1px;left:20%;right:20%}.tabs.svelte-12qhfyh .badge:where(.svelte-12qhfyh){font:10px var(--font-ui);color:var(--ground-0);background:var(--growth);place-items:center;min-width:16px;height:16px;padding:0 3px;display:grid;position:absolute;top:8px;right:calc(50% - 30px)}}.icon.svelte-12qhfyh{width:28px;height:28px;color:var(--text-faint);flex:none;place-items:center;display:grid}.icon.svelte-12qhfyh:hover,.icon.svelte-12qhfyh:focus-visible{color:var(--text);text-decoration:none}.icon.svelte-12qhfyh:disabled{opacity:.35;cursor:default}.ctx.svelte-12qhfyh{align-items:center;gap:4px;width:auto;min-width:28px;padding:0 5px;display:inline-flex}.ctx.svelte-12qhfyh .n:where(.svelte-12qhfyh){font:11px/1 var(--font-ui);color:var(--growth);font-variant-numeric:tabular-nums}.ctx.svelte-12qhfyh .n.pulse:where(.svelte-12qhfyh){animation:.9s ease-out svelte-12qhfyh-pulse}@keyframes svelte-12qhfyh-pulse{0%{color:var(--text);text-shadow:0 0 6px var(--growth)}}@media (prefers-reduced-motion:reduce){.ctx.svelte-12qhfyh .n.pulse:where(.svelte-12qhfyh){animation:none}}.stopped.svelte-12qhfyh{padding:var(--space-12) var(--space-4);text-align:center;color:var(--rose)}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
iframe.svelte-klp1mb{color-scheme:normal;background:0 0;border:0;width:100%;display:block}.problem.svelte-klp1mb{color:var(--rose);margin:var(--space-2) 0;font-size:12px}.file.svelte-16i7bpz{max-width:1120px;padding:40px var(--space-4) var(--space-12);gap:var(--space-3);flex-direction:column;margin:0 auto;display:flex}h1.svelte-16i7bpz{color:var(--text);overflow-wrap:anywhere;margin:0;font-size:34px;font-weight:700;line-height:1.2}.stand.svelte-16i7bpz{font:italic 17px/1.5 var(--font-text);color:var(--text-soft);max-width:72ch;margin:4px 0 0}.label.svelte-16i7bpz{align-items:center;gap:var(--space-2) var(--space-4);margin-top:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--line);color:var(--text-faint);flex-wrap:wrap;font-size:12px;display:flex}.kind.svelte-16i7bpz{border:1px solid var(--line-strong);height:26px;color:var(--text-soft);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:6px;padding:0 10px;font-size:11px;display:inline-flex}.path.svelte-16i7bpz{color:var(--text-soft)}.path.svelte-16i7bpz .sep:where(.svelte-16i7bpz){color:var(--text-faint);padding:0 4px}.path.svelte-16i7bpz .name:where(.svelte-16i7bpz){color:var(--text)}.br.svelte-16i7bpz{color:var(--text-soft);--b:var(--line-strong);background:linear-gradient(var(--b), var(--b)) top left / 5px 1px no-repeat, linear-gradient(var(--b), var(--b)) top left / 1px 5px no-repeat, linear-gradient(var(--b), var(--b)) bottom right / 5px 1px no-repeat, linear-gradient(var(--b), var(--b)) bottom right / 1px 5px no-repeat;padding:3px 8px;text-decoration:none}a.br.svelte-16i7bpz:hover{color:var(--text);--b:var(--lattice)}.tools.svelte-16i7bpz{gap:var(--space-2);align-items:center;margin-left:auto;display:flex}.seg.svelte-16i7bpz{display:flex}.seg.svelte-16i7bpz button:where(.svelte-16i7bpz){font:11px/18px var(--font-ui);color:var(--text-soft);border:1px solid var(--line);cursor:pointer;text-transform:uppercase;letter-spacing:.06em;background:0 0;margin-left:-1px;padding:3px 9px}.seg.svelte-16i7bpz button[aria-checked=true]:where(.svelte-16i7bpz){background:var(--text);color:var(--ground-0);border-color:var(--text);position:relative}.tools.svelte-16i7bpz .btn:where(.svelte-16i7bpz){text-transform:uppercase;letter-spacing:.06em;height:26px;font-size:11px}.said.svelte-16i7bpz{color:var(--text-faint);margin:0;font-size:12px}.errors.svelte-16i7bpz{color:var(--rose);margin:0;padding:0;font-size:12px;list-style:none}.problem.svelte-16i7bpz{color:var(--rose)}.picture.svelte-16i7bpz{align-self:flex-start;max-width:100%;height:auto}.pdf.svelte-16i7bpz{border:1px solid var(--line);width:100%;height:80vh}.shape.svelte-16i7bpz{font:12px/18px var(--font-ui);color:var(--text-soft);white-space:pre-wrap;margin:0}.rows.svelte-16i7bpz{overflow-x:auto}table.svelte-16i7bpz{border-collapse:collapse;font:12px/18px var(--font-ui);font-variant-numeric:tabular-nums}th.svelte-16i7bpz{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);border-bottom:1px solid var(--line-strong);white-space:nowrap;padding:6px 10px;font-size:11px;font-weight:400}td.svelte-16i7bpz{border-bottom:1px solid var(--line);color:var(--text-soft);white-space:nowrap;padding:5px 10px}.n.svelte-16i7bpz{text-align:right}.drawing.svelte-1dt0rua{vertical-align:middle;display:inline-block}.drawing.svelte-1dt0rua path:where(.svelte-1dt0rua){stroke:currentColor;stroke-width:1px;stroke-dasharray:1;stroke-dashoffset:1px;animation:svelte-1dt0rua-draw 1.6s var(--ease-out) infinite}@keyframes svelte-1dt0rua-draw{55%{stroke-dashoffset:0}75%{stroke-dashoffset:0}to{stroke-dashoffset:-1px}}@media (prefers-reduced-motion:reduce){.drawing.svelte-1dt0rua path:where(.svelte-1dt0rua){stroke-dashoffset:0;animation:none}}.stand.svelte-ml08v2{resize:none;field-sizing:content;width:100%;font:italic 17px/1.5 var(--font-text);color:var(--text-soft);background:0 0;border:0;border-bottom:1px solid #0000;margin:-2px 0 0;padding:0 2px 2px;display:block;overflow:hidden}.stand.empty.svelte-ml08v2{border-bottom-color:var(--line);min-height:26px}.stand.svelte-ml08v2:hover{border-bottom-color:var(--line)}.stand.svelte-ml08v2:focus-visible{border-bottom-color:var(--lattice);color:var(--text);outline:none}.label.svelte-ml08v2{align-items:center;gap:var(--space-2) var(--space-4);margin-top:var(--space-2);padding-bottom:var(--space-3);border-bottom:1px solid var(--line);color:var(--text-faint);flex-wrap:wrap;font-size:11px;display:flex}.kinds.svelte-ml08v2{gap:4px;display:inline-flex}.slot.svelte-ml08v2{border:1px solid var(--line);height:26px;color:var(--text-faint);font:11px var(--font-ui);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:0 0;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.slot.svelte-ml08v2:hover{border-color:var(--text-soft);color:var(--text)}.slot[aria-checked=true].svelte-ml08v2{border-color:var(--lattice);background:var(--lattice);color:var(--ground-0);cursor:default}.slot.question[aria-checked=true].svelte-ml08v2{border-color:var(--rose);background:var(--rose)}.slot.problem[aria-checked=true].svelte-ml08v2{border-color:var(--text-soft);background:var(--text-soft)}.path.svelte-ml08v2{align-items:center;gap:4px;font-size:12px;display:inline-flex}.seg.svelte-ml08v2{color:var(--text-soft);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0000;padding:2px 0}.seg.name.svelte-ml08v2{color:var(--text)}.seg.svelte-ml08v2:hover,.seg.svelte-ml08v2:focus-visible{border-bottom-color:var(--lattice);color:var(--text);outline:none}.sep.svelte-ml08v2{color:var(--text-faint)}.field.svelte-ml08v2{min-width:160px;display:inline-block}input.svelte-ml08v2{border:0;border-bottom:1px solid var(--lattice);color:var(--text);font:12px var(--font-ui);background:0 0;padding:2px 0}input.svelte-ml08v2:focus-visible{outline:none}.parts.svelte-ml08v2,.extra.svelte-ml08v2{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.br.svelte-ml08v2{font:11px/16px var(--font-ui);color:var(--text-soft);cursor:pointer;--b:var(--line-strong);background-color:#0000;background-image:linear-gradient(var(--b), var(--b)), linear-gradient(var(--b), var(--b)), linear-gradient(var(--b), var(--b)), linear-gradient(var(--b), var(--b));background-position:0 0,0 0,100% 100%,100% 100%;background-repeat:no-repeat;background-size:5px 1px,1px 5px,5px 1px,1px 5px;border:0;padding:3px 8px;text-decoration:none}.br.svelte-ml08v2:hover,.br.svelte-ml08v2:focus-visible{color:var(--text);--b:var(--lattice);outline:none}button.br.svelte-ml08v2:hover{text-decoration:line-through;-webkit-text-decoration-color:var(--rose);text-decoration-color:var(--rose)}.add.svelte-ml08v2,.x.svelte-ml08v2{width:22px;height:22px;color:var(--text-faint);font:13px var(--font-ui);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;padding:0;display:inline-grid}.add.svelte-ml08v2:hover,.add.svelte-ml08v2:focus-visible{border-color:var(--line-strong);color:var(--text);outline:none}.x.svelte-ml08v2{opacity:0;width:16px;margin-left:-6px}.extra.svelte-ml08v2 .br:where(.svelte-ml08v2):hover+.x:where(.svelte-ml08v2),.x.svelte-ml08v2:hover,.x.svelte-ml08v2:focus-visible{opacity:1;color:var(--rose);outline:none}.extra.svelte-ml08v2{margin-top:var(--space-2);color:var(--text-faint);font-size:11px;display:flex}.word.svelte-ml08v2{text-transform:uppercase;letter-spacing:.06em;margin-right:4px}.grow.svelte-ml08v2{flex:1}.mark.svelte-ml08v2{border:1px solid var(--rose);height:26px;color:var(--rose);font:11px var(--font-ui);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:0 0;padding:0 10px}.problem.svelte-ml08v2 .mark:where(.svelte-ml08v2),.extra.problem.svelte-ml08v2 .mark:where(.svelte-ml08v2){border-color:var(--text-soft);color:var(--text-soft)}.mark.done.svelte-ml08v2,.extra.problem.svelte-ml08v2 .mark.done:where(.svelte-ml08v2){border-color:var(--malachite);background:var(--malachite);color:var(--ground-0)}.mark.svelte-ml08v2:disabled{opacity:.6;cursor:default}p.problem.svelte-ml08v2{margin:var(--space-1) 0 0;color:var(--rose);font-size:12px}.embed.svelte-zlq7nn{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px 0 2px;display:block}.name.svelte-zlq7nn{font:11px var(--font-ui);text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);align-items:center;gap:6px;text-decoration:none;display:inline-flex}.name.svelte-zlq7nn:hover{color:var(--text)}.problem.svelte-zlq7nn{color:var(--rose);display:block}.picture-name.svelte-18j5w6l{z-index:50;background:var(--ground-1);border:1px solid var(--line-strong);width:min(460px,100vw - 32px);font-family:var(--font-ui);box-shadow:0 6px 24px color-mix(in srgb, var(--ground-0) 40%, transparent);gap:12px;padding:12px;font-size:13px;display:flex;position:fixed}img.svelte-18j5w6l{object-fit:contain;background:var(--ground-2);flex:none;width:72px;height:72px}.fields.svelte-18j5w6l{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}label.svelte-18j5w6l{flex-direction:column;gap:2px;display:flex}label.svelte-18j5w6l>span:where(.svelte-18j5w6l):first-child{color:var(--text-faint);font-size:12px}.name.svelte-18j5w6l{align-items:baseline;gap:4px;display:flex}.name.svelte-18j5w6l input:where(.svelte-18j5w6l){flex:1}.ext.svelte-18j5w6l{color:var(--text-faint)}.path.svelte-18j5w6l,.same.svelte-18j5w6l{color:var(--text-faint);overflow-wrap:anywhere;margin:0;font-size:12px}.path.taken.svelte-18j5w6l{color:var(--rose)}.actions.svelte-18j5w6l{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.between.svelte-192cp36{font:13px/1.5 var(--font-ui);flex-direction:column;gap:12px;padding:16px 2px;display:flex;position:relative}.between.svelte-192cp36:before,.between.svelte-192cp36:after{content:"";background:radial-gradient(circle at 1px 1px, var(--growth) 1px, transparent 1.2px) 0 0 / 8px 2px repeat-x;height:2px;animation:1.6s linear infinite svelte-192cp36-drift;position:absolute;left:0;right:0}.between.svelte-192cp36:before{top:0}.between.svelte-192cp36:after{animation-direction:reverse;bottom:0}.stopped.svelte-192cp36:before,.stopped.svelte-192cp36:after{background-image:radial-gradient(circle at 1px 1px, var(--rose) 1px, transparent 1.2px);animation:none}@keyframes svelte-192cp36-drift{to{background-position:8px 0}}@media (prefers-reduced-motion:reduce){.between.svelte-192cp36:before,.between.svelte-192cp36:after{animation:none}}.said.svelte-192cp36{font-size:var(--text-size);line-height:1.55}.said.svelte-192cp36 p,.said.svelte-192cp36 section,.said.svelte-192cp36 .table-wrap,.said.svelte-192cp36 ul,.said.svelte-192cp36 ol,.said.svelte-192cp36 pre{margin:0 0 20px}.said.svelte-192cp36 h1,.said.svelte-192cp36 h2,.said.svelte-192cp36 h3,.said.svelte-192cp36 h4{margin:0 0 12px;font-size:22px;line-height:1.3}.said.svelte-192cp36 h1{font-size:26px}.said.svelte-192cp36 h3{font-size:19px}.said.svelte-192cp36 h4{font-size:17px}.said.svelte-192cp36 pre{font:13px/20px var(--font-mono);background:var(--ground-1);border-left:2px solid var(--line-strong);padding:12px 16px;overflow-x:auto}.said.svelte-192cp36 :not(pre)>code{font-family:var(--font-mono);font-size:.86em}.said.svelte-192cp36>:last-child{margin-bottom:0}.said.svelte-192cp36 .katex-display{margin:0}.said.svelte-192cp36 .katex-display>.katex{font-size:1.17em}.foot.svelte-192cp36{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.foot.svelte-192cp36 .dia:where(.svelte-192cp36){margin:0 8px 0 3px}.bad.svelte-192cp36{color:var(--rose)}.lost.svelte-192cp36{font:var(--text-size)/1.55 var(--font-text)}.strike.svelte-192cp36{color:var(--text-faint);text-decoration:line-through}.link.svelte-192cp36{color:var(--lattice);white-space:nowrap;background:0 0;border:0;padding:6px 4px}.revision.svelte-192cp36:focus-visible{outline:none}.revision.svelte-192cp36{background:var(--ground-1);border:0;border-left:2px solid var(--growth);resize:vertical;width:100%;font:14px/1.6 var(--font-ui);color:var(--text);padding:8px 12px}span.change.svelte-1o10yjh{margin-left:.3em}span.change.svelte-1o10yjh .new:where(.svelte-1o10yjh){white-space:normal;-webkit-text-decoration:underline dotted var(--growth);text-decoration:underline dotted var(--growth);text-underline-offset:4px;background:var(--growth-soft);text-decoration-thickness:1.5px}.gone.svelte-1o10yjh{font:12px var(--font-ui);color:var(--text-faint)}.act.svelte-1o10yjh{vertical-align:2px;white-space:nowrap;gap:2px;margin-left:.4em;display:inline-flex}button.svelte-1o10yjh{height:20px;font:700 11px/20px var(--font-ui);color:#07101c;border:0;padding:0 7px}button.svelte-1o10yjh:disabled{opacity:.5}.keep.svelte-1o10yjh{background:#7dddb5}.remove.svelte-1o10yjh{background:#f7a8ba}.block.svelte-1o10yjh{border-left:2px dotted var(--growth);background:var(--growth-soft);flex-direction:column;gap:8px;padding:6px 0 6px 14px;display:flex}.block.svelte-1o10yjh .new:where(.svelte-1o10yjh){font:var(--text-size)/1.55 var(--font-text);color:var(--text);margin:0}.block.svelte-1o10yjh .new:where(.svelte-1o10yjh) p,.block.svelte-1o10yjh .new:where(.svelte-1o10yjh) ul,.block.svelte-1o10yjh .new:where(.svelte-1o10yjh) ol{margin:0 0 12px}.block.svelte-1o10yjh .new:where(.svelte-1o10yjh)>:last-child{margin-bottom:0}.block.svelte-1o10yjh .new:where(.svelte-1o10yjh) .katex-display{margin:4px 0}.block.code.svelte-1o10yjh .new:where(.svelte-1o10yjh){font:13px/20px var(--font-mono);white-space:pre;overflow-x:auto}.foot.svelte-1o10yjh{font:12px/1.5 var(--font-ui);align-items:center;gap:10px;padding-right:8px;display:flex}.foot.svelte-1o10yjh .dia:where(.svelte-1o10yjh){margin:0 3px}.foot.svelte-1o10yjh .act:where(.svelte-1o10yjh){vertical-align:0}.who.svelte-1o10yjh{font:11px/20px var(--font-ui);color:var(--text-faint);margin-left:.4em}.editor.svelte-hrl8lz{min-height:50vh}.said.svelte-hrl8lz{z-index:50;background:var(--ground-1);border:1px solid var(--line-strong);max-width:min(520px,100vw - 32px);font-family:var(--font-ui);margin:0;padding:10px 14px;font-size:13px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.version.svelte-130pv1o{gap:var(--space-2);flex-direction:column;display:flex}.title.svelte-130pv1o{margin:0;padding:0 2px;font-size:34px;font-weight:700;line-height:1.2}.asked.svelte-130pv1o{color:var(--text-soft);align-items:baseline;gap:10px;margin:0;font-size:13px;display:flex}.asked.svelte-130pv1o .dia:where(.svelte-130pv1o){flex:none;position:relative;top:-1px}.text.svelte-130pv1o .cm-content{padding-bottom:24px}.offered.svelte-130pv1o{border-top:2px dotted var(--growth);border-bottom:2px dotted var(--growth);margin-bottom:40vh;padding:12px 2px}.offered.svelte-130pv1o p:where(.svelte-130pv1o){white-space:pre-wrap;margin:0;font-size:17px;line-height:1.6}@media (width<=600px){.title.svelte-130pv1o{font-size:30px}}.toiso.svelte-18ltlst{z-index:6;background:var(--ground-2);border:1px solid var(--growth);height:28px;color:var(--text);cursor:pointer;align-items:center;gap:6px;padding:0 10px;font-size:12px;display:inline-flex;position:absolute}.toiso.svelte-18ltlst .dia:where(.svelte-18ltlst){color:var(--growth);font-size:10px;font-style:normal}.note.svelte-18ltlst{max-width:calc(var(--measure) + 2 * var(--space-4));padding:40px var(--space-4) 0;gap:var(--space-2);flex-direction:column;margin:0 auto;display:flex;position:relative}.head.svelte-18ltlst{align-items:flex-start;gap:var(--space-3);display:flex}.title.svelte-18ltlst{min-width:0;color:var(--text);resize:none;field-sizing:content;background:0 0;border:0;flex:auto;padding:0 2px;font-size:34px;font-weight:700;line-height:1.2;overflow:hidden}.title.svelte-18ltlst::placeholder{color:var(--text-faint)}.title.svelte-18ltlst:focus-visible{outline:none}.tools.svelte-18ltlst{flex:none;padding-top:6px;display:flex}.side.svelte-18ltlst{align-items:flex-end;gap:var(--space-2);flex-direction:column;flex:none;display:flex}.tools.svelte-18ltlst .btn:where(.svelte-18ltlst){height:28px;font-size:12px}.tools.svelte-18ltlst .btn[aria-pressed=true]:where(.svelte-18ltlst){color:var(--ground-0);--fill:var(--lattice)}.icon.svelte-18ltlst{width:28px;height:28px;color:var(--text-faint);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:inline-grid}.icon.svelte-18ltlst:hover:not(:disabled),.icon.svelte-18ltlst:focus-visible{color:var(--text)}.icon.svelte-18ltlst:disabled{opacity:.35;cursor:default}.titlerow.svelte-18ltlst{align-items:flex-start;gap:var(--space-2);flex:auto;min-width:0;display:flex}.titlerow.svelte-18ltlst>.glyph:where(.svelte-18ltlst){flex:none;margin-top:13px}.glyph.question.svelte-18ltlst{color:var(--rose)}.glyph.problem.svelte-18ltlst{color:var(--text-soft)}.glyph.problem.solved.svelte-18ltlst{color:var(--malachite)}.attached.svelte-18ltlst{border-top:1px solid var(--line);flex-direction:column;margin:32px 0 0;padding:10px 0 0;list-style:none;display:flex}.attached.svelte-18ltlst a:where(.svelte-18ltlst){font:15px var(--font-text);color:var(--text);grid-template-columns:18px minmax(0,1fr) 14px;align-items:center;gap:10px;padding:6px 0;text-decoration:none;display:grid}.attached.svelte-18ltlst a:where(.svelte-18ltlst):hover span:where(.svelte-18ltlst){color:var(--lattice)}.attached.svelte-18ltlst a.done:where(.svelte-18ltlst) span:where(.svelte-18ltlst){color:var(--text-faint)}.attached.svelte-18ltlst .ok:where(.svelte-18ltlst){color:var(--malachite)}.atbar.svelte-18ltlst{border-bottom:1px solid var(--line);align-items:center;gap:6px;min-height:28px;padding-bottom:4px;display:flex}.tl-col.svelte-18ltlst{z-index:4;position:absolute}@container page (width>=1100px){.tl-col.svelte-18ltlst{top:52px;right:calc(100% + 14px)}}@container page (width<=1099px){.note.timed.svelte-18ltlst{padding-left:calc(var(--space-4) + 40px)}.tl-col.svelte-18ltlst{top:40px;left:8px}}.choice.svelte-18ltlst{padding:var(--space-6) var(--space-4) var(--space-4);gap:var(--space-3);margin-bottom:var(--space-4);--edge:var(--rose);flex-direction:column;display:flex}.row.svelte-18ltlst{gap:var(--space-2);display:flex}.bad.svelte-18ltlst{color:var(--rose)}.changes.svelte-18ltlst{z-index:8;background:var(--ground-0);border-top:1px solid var(--line);align-items:center;gap:12px;padding:10px 2px;display:flex;position:sticky;bottom:28px}.changes.svelte-18ltlst .dia:where(.svelte-18ltlst){margin:0 3px}.link.svelte-18ltlst{color:var(--lattice);white-space:nowrap;background:0 0;border:0;padding:4px 0}@container page (width<=600px){.head.svelte-18ltlst{gap:var(--space-1);flex-direction:column-reverse}.tools.svelte-18ltlst{align-self:flex-end;padding-top:0}.side.svelte-18ltlst{flex-flow:row-reverse wrap;justify-content:space-between;align-self:stretch;align-items:flex-start}.title.svelte-18ltlst{width:100%;font-size:30px}}@media (width<=600px){.note.svelte-18ltlst{padding:20px 20px 80px}.note.timed.svelte-18ltlst{padding-left:56px}.tl-col.svelte-18ltlst{z-index:1;border-right:1px solid var(--line);background:var(--ground-1);padding-right:2px;top:20px;bottom:0;left:8px}.changes.svelte-18ltlst{flex-wrap:wrap;bottom:156px}.head.svelte-18ltlst{gap:var(--space-1);flex-direction:column-reverse}.tools.svelte-18ltlst{align-self:flex-end;padding-top:0}.side.svelte-18ltlst{flex-flow:row-reverse wrap;justify-content:space-between;align-self:stretch;align-items:flex-start}.title.svelte-18ltlst{width:100%;font-size:30px}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.glyph.svelte-8tyru2{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linejoin:miter;flex:none}.gone.svelte-1jroppb{opacity:.45}.agent.svelte-1jroppb{background:var(--text-soft)}.agent.open.svelte-1jroppb{border-color:var(--text-soft);background:0 0}.timeline.svelte-112n2zp{flex-direction:column;align-items:center;margin:0;padding:0;list-style:none;display:flex}li.svelte-112n2zp{position:relative}.moment.svelte-112n2zp{cursor:pointer;background:0 0;border:0;place-items:center;width:28px;height:24px;padding:0;display:grid}.moment.svelte-112n2zp i{transition:transform .1s}.moment.svelte-112n2zp:hover i,.moment.svelte-112n2zp:focus-visible i{transform:scale(1.35)}.moment.svelte-112n2zp:hover i.dia,.moment.svelte-112n2zp:focus-visible i.dia{transform:rotate(45deg)scale(1.35)}.moment.at.svelte-112n2zp{outline:1.5px solid var(--text-soft);outline-offset:-4px}.strata.svelte-112n2zp{border:1px solid var(--line-strong);align-items:stretch;width:13px}.strata.svelte-112n2zp li:where(.svelte-112n2zp)+li:where(.svelte-112n2zp){border-top:1px solid var(--ground-1)}.layer.svelte-112n2zp{background:var(--lattice-soft);width:100%;transition:filter var(--t-ack) var(--ease-out);display:block}.layer.iso.svelte-112n2zp,.layer.agent.svelte-112n2zp{background:var(--growth)}.layer.external.svelte-112n2zp{background:repeating-linear-gradient(135deg, var(--text-faint) 0 1px, transparent 1px 3px)}.layer.iso.offered.svelte-112n2zp,.layer.iso.discarded.svelte-112n2zp{box-shadow:inset 0 0 0 1px var(--growth);background:0 0}.layer.discarded.svelte-112n2zp{opacity:.5}.layer.svelte-112n2zp:hover,.layer.svelte-112n2zp:focus-visible{filter:brightness(1.3)}.layer.at.svelte-112n2zp{outline:1px solid var(--text);outline-offset:-1px}.asked.svelte-112n2zp{z-index:3;width:max-content;max-width:200px;color:var(--text);background:var(--ground-1);border:1px solid var(--line);text-align:right;pointer-events:none;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;padding:3px 7px;font-size:12px;line-height:1.4;display:-webkit-box;position:absolute;top:2px;right:calc(100% + 6px);overflow:hidden}.strata.svelte-112n2zp .asked:where(.svelte-112n2zp){top:-3px;right:calc(100% + 8px)}@container page (width<=1099px){.timeline.svelte-112n2zp:not(.leftward) .asked:where(.svelte-112n2zp){text-align:left;max-width:220px;left:calc(100% + 4px);right:auto}.strata.svelte-112n2zp .asked:where(.svelte-112n2zp){left:calc(100% + 8px)}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as e,b as t,f as n,i as r,o as i,p as a,u as o,x as s,y as c}from"./
|
|
1
|
+
import{_ as e,b as t,f as n,i as r,o as i,p as a,u as o,x as s,y as c}from"./C2npZzkn.js";import{r as l,t as u}from"./DciMwFJ1.js";import{n as d,r as f,t as p}from"./kG4HctVa.js";import{t as m}from"./DDAG55ce.js";import{a as ee,i as h,o as g}from"./BA78_vo5.js";import{PeleError as _,f as v,u as y}from"./CMikI1NP.js";var b=11,x=class{type=`mindmap`;title;nodes=[];getType=p;baseLevel=0;open=[];addNode(e,t,n,r){let i=this.nodes.length===0;i&&(this.baseLevel=e),e-=this.baseLevel;let a=this.open,o=a.length;for(;o>0&&a[o-1].level>=e;)o--;let s=a[o-1];if(!s&&!i)throw new _(`There can be only one root. No parent could be found for ("${n}")`,`semantic`,{type:`mindmap`});let c={id:this.nodes.length,nodeId:t,level:e,descr:n,type:r,children:[],isRoot:i};s&&(c.section=s.isRoot?s.children.length%b:s.section,s.children.push(c)),a.length=o,a.push(c),this.nodes.push(c)}decorateNode(e){let t=this.nodes[this.nodes.length-1];!e||!t||(e.icon&&(t.icon=e.icon),e.class&&(t.class=e.class))}};function S(e,t){f(e,t,!1)}var te=[``,`rounded`,`rect`,`circle`,`cloud`,`bang`,`hex`],ne=`stadium`,re=36,ie=8,ae=18,oe=52,se=28,ce=6,le=12,ue=.22,C=6,w=28,de=12,fe=8,pe=10;function me(e,t,n,r){if(e.lines.length<2)return i(e,t+e.width/2,n,` class="pele-label"`,r);let o=``,s=n-e.height/2;for(let n=0;n<e.lines.length;n++)o+=i(c(e,n),t+e.widths[n]/2,s+a(e,n),` class="pele-label"`,r);return o}function he(e,t,n){return u(n,r=>T(e,t,n,r))}function T(a,c,u,f){let p=u.fontSize??16,_=u.measurer??y(u.fontFamily,u.fontFamilyMono),b=u.padding??8,x=u.icons,S=c.mindmap?.maxNodeWidth,he=typeof S==`number`&&S>0?Math.min(S,2e3):200,T=p*1.25,E=a.nodes,D=E.length,O=new Int32Array(D),k=new Int32Array(D);for(let e=0;e<D;e++)for(let t of E[e].children)O[t.id]=e,k[t.id]=k[e]+1;let ge=f&&u.maxWidth!==void 0&&u.maxWidth>0?u.maxWidth-2*b:1/0,A=Array(D),j=Array(D),M=new Float64Array(D),N=new Float64Array(D),P=new Float64Array(D),F=new Float64Array(D),I=new Uint8Array(D);for(let e=0;e<D;e++){let t=E[e];I[e]=+(t.icon!==void 0&&v(t.icon)!==``);let n=Math.min(he,Math.max(72,ge-k[e]*w-2*ce-(I[e]?T+C:0))),r=A[e]=o(t.descr,!0,_,p,n),i=r.width+(I[e]?T+(r.width>0?C:0):0),a=Math.max(r.height,Math.round(p*1.5)),s=te[t.type]||(e===0?ne:``);if(f&&e===0&&s!==`rect`&&s!==`rounded`&&(s=ne),j[e]=s,s===``){let n=t.children.length>0;M[e]=i+2*(n?le:ce),N[e]=a+(n?6:0),F[e]=N[e]/2}else{let t=h(s,i,a);M[e]=t.w,N[e]=t.h,P[e]=t.dy,F[e]=t.h/2}}let L=new Float64Array(D),R=new Float64Array(D),z=new Float64Array(D),_e=new Float64Array(D),ve=0,ye=(e,t,n,r)=>{let i=0,a=0;for(let o=t;o<n;o++){let t=e[o].id;R[t]=i,a=e[o].children.length>0||o+1<n&&e[o+1].children.length>0?Math.max(r,ae):r,i+=L[t]+a}ve=i-a;let o=e[t].id,s=e[n-1].id;return(R[o]+z[o]+F[o]+R[s]+z[s]+F[s])/2};for(let e=D-1;e>0;e--){let t=E[e].children;if(t.length===0){L[e]=N[e];continue}let n=ye(t,0,t.length,ie)-F[e],r=Math.min(0,n);L[e]=Math.max(ve,n+N[e])-r,z[e]=n-r,_e[e]=-r}let B=new Float64Array(D),V=new Float64Array(D),H=new Float64Array(D),U=new Int8Array(D),be=new Float64Array(D);if(f){let e=0;for(let t=0;t<D;t++)t>0&&O[t]===0&&(e+=pe),B[t]=k[t]*w+M[t]/2,V[t]=e,e+=N[t]+pe}else if(D>0){let e=E[0].children,t=e.length,n=0;for(let t of e)n+=L[t.id];let r=t,i=1/0,a=0;for(let o=1;o<t;o++){a+=L[e[o-1].id];let s=Math.abs(2*a-n+(2*o-t)*se);s<i&&(i=s,r=o)}for(let n=0,i=r,a=1;n<t;n=i,i=t,a=-1){let t=ye(e,n,i,se);for(let r=n;r<i;r++){let n=e[r].id;H[n]=R[n]-t,U[n]=a}}V[0]=-N[0]/2;for(let e=0;e<D;e++){e>0&&(V[e]=H[e]+z[e]);for(let t of E[e].children){let n=t.id;e>0&&(U[n]=U[e],H[n]=H[e]+_e[e]+R[n]),B[n]=B[e]+U[n]*(M[e]/2+(e>0?re:oe)+M[n]/2)}}}let W=0,G=0,K=0,q=0,J=``,Y=``,X=``,Z=``,xe=e=>{X!==``&&(J+=`<g class="pele-branch pele-section-${e??0}"><g class="pele-edges" fill="none" stroke="${Z}" stroke-width="1.5">${Y}</g>${X}</g>`,Y=X=``)};for(let e=1;e<=D;e++){let a=e%D,o=E[a],c=j[a],l=A[a],u=B[a],p=V[a];if(W=Math.min(W,u-M[a]/2),G=Math.max(G,u+M[a]/2),K=Math.min(K,p),q=Math.max(q,p+N[a]),(a===0||O[a]===0)&&xe(E[e-1].section),a>0&&f){O[a]===0&&(Z=n(o.section??0));let e=O[a],t=e===0?Math.min(Math.max(de,N[0]/2),w-fe):de,r=B[e]-M[e]/2+Math.min(t,M[e]/2),i=be[e]||V[e]+N[e],l=u-M[a]/2+(c?g(c,M[a],N[a],3):0),d=p+F[a],f=Math.max(0,Math.min(fe,l-r,d-i));be[e]=d-f,Y+=`<path class="pele-edge" d="M${s(r)},${s(i)}V${s(d-f)}Q${s(r)},${s(d)} ${s(r+f)},${s(d)}H${s(l)}"/>`}else if(a>0){O[a]===0&&(Z=n(o.section??0));let e=O[a],t=U[a],r=t>0?1:3,i=B[e]+t*(M[e]/2-(j[e]?g(j[e],M[e],N[e],r):0)),l=V[e]+F[e],d=u-t*M[a]/2+(c?t*g(c,M[a],N[a],4-r):0),f=p+F[a],m=s((i+d)/2);Y+=`<path class="pele-edge" d="M${s(i)},${s(l)}C${m},${s(l)} ${m},${s(f)} ${s(d)},${s(f)}"/>`}let m=!c&&o.children.length>0,h=` fill="${Z}" fill-opacity="${ue}" stroke="${Z}"`,_=``;c?_=a>0?ee(c,M[a],N[a],h,` stroke="${Z}"`):ee(c,M[a],N[a],` fill="var(--_s)" stroke="var(--_b)"`,` stroke="var(--_b)"`):m&&(_=`<rect x="${s(-M[a]/2)}" y="${s(-N[a]/2)}" width="${s(M[a])}" height="${s(N[a])}" rx="${s(N[a]/2)}"${h}/>`);let v=0;o.icon&&I[a]&&(v=(T+(l.width>0?C:0))/2,_+=d(o.icon,-v-l.width/2,P[a]-T/2,T,x));let y=`<g class="pele-node pele-shape-${c||(m?`branch`:`text`)}${a>0?``:` pele-root`}${t(o.class??``)}" data-id="${r(o.nodeId)}" transform="translate(${s(u)},${s(p+N[a]/2)})">`+_+(f&&!c?me(l,v-l.width/2,P[a],x):i(l,v,P[a],` class="pele-label"`,x))+`</g>`;a>0?X+=y:J+=y}let Q=m(a.title,_,p,l(u)),Se=Q.height>0?Q.height+16:0,Ce=Math.max(G-W,Q.width),$=Math.ceil(Ce+2*b),we=Math.ceil(q-K+Se+2*b),Te=i(Q,$/2,b+Q.height/2,` class="pele-title" font-weight="var(--_tw)"`)+`<g transform="translate(${s(b-W+(Ce-G+W)/2)},${s(b+Se-K)})">${J}</g>`;return{svg:e(`mindmap`,$,we,p,u,{},Te),width:$,height:we,links:[]}}var E={type:`mindmap`,math:!0,parse(e,t,n){let r=new x;return r.title=n,S(e,r),r},render:he};export{E as mindmap};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{_ as e,a as t,f as n,i as r,o as i,s as a,u as o,x as s}from"./
|
|
1
|
+
import{_ as e,a as t,f as n,i as r,o as i,s as a,u as o,x as s}from"./C2npZzkn.js";import{n as c,r as l}from"./DciMwFJ1.js";import{PeleError as u,c as d,d as f,g as p,i as m,s as h,u as g}from"./CMikI1NP.js";var _=class{type=`sankey`;nodes=[];links=[];title;accTitle;accDescr;lookup=new Map;findOrCreateNode(e){let t=this.lookup.get(e);return t===void 0&&(t={id:e,index:this.nodes.length},this.lookup.set(e,t),this.nodes.push(t)),t}addLink(e,t,n){this.links.push({source:e,target:t,value:n})}},v=[`$end`,`STUCK`,`SANKEY`,`NEWLINE`,`COMMA`,`DQUOTE`,`NON_ESCAPED_TEXT`,`ESCAPED_TEXT`,`EOF`];function y(e){return e>=32&&e<=126&&e!==34&&e!==44||e>=160&&e<=55295||e>=57344&&e<=65533||e>=65536&&e<=1114111}function b(e){let t=e.length,n=[],r=[],i=[],a=[],o=0,s=0,c=(t,a,o)=>{n.push(t),r.push(e.slice(a,o)),i.push(a),s=o},l=t=>e.slice(s,s+t.length).toLowerCase()===t&&!p(e.charCodeAt(s+t.length));for(;s<t;){let u=e.charCodeAt(s),d=s,f=s;if(o===2){if(u===34&&e.charCodeAt(s+1)!==34){a.length>0&&(o=a.pop()),c(5,s,s+1);continue}for(;f<t;){let t=e.codePointAt(f);if(y(t)||t===44||t===13||t===10)f+=t>65535?2:1;else if(t===34&&e.charCodeAt(f+1)===34)f+=2;else break}c(7,s,f)}else{if(o===0&&(u|32)==115){let e=l(`sankey-beta`)?11:l(`sankey`)?6:0;if(e>0){a.push(o),o=1,c(2,s,s+e);continue}}if(u===10||u===13&&e.charCodeAt(s+1)===10){c(3,s,u===10?s+1:s+2);continue}if(u===44){c(4,s,s+1);continue}if(u===34){a.push(o),o=2,c(5,s,s+1);continue}for(;f<t;){let t=e.codePointAt(f);if(!y(t))break;f+=t>65535?2:1}c(6,s,f)}if(f===d)return c(1,s,s),{types:n,texts:r,starts:i}}return c(o===2?7:8,t,t),c(0,t,t),{types:n,texts:r,starts:i}}var x=/[\n\r]+/g,S=/[\x00-\x08\x0b\x0c\x0e-\x1f\ud800-\udfff\ufffe\uffff]/u;function C(e){return e===10||e===13?!1:e<128?e===32||e===9||e===11||e===12:e===160||e===5760||e>=8192&&e<=8202||e===8232||e===8233||e===8239||e===8287||e===12288||e===65279}function w(e,t){let n=0,r=e.length;for(;n<r&&C(e.charCodeAt(n));)n++;for(;r>n&&C(e.charCodeAt(r-1));)r--;let i=e.slice(n,r),a=i.replace(x,`
|
|
2
2
|
`),o=a.trim();if(t!==void 0){let s=a.length-a.trimStart().length;t.push([[0,n,0],[r,e.length,0]],d(i,x,1),[[0,s,0],[s+o.length,a.length,0]])}return o}function T(e,t,n=e){let{types:r,texts:i,starts:a}=b(e),o=0,s=(t,r)=>{let i=[];n!==e&&w(n,i);let a=t>0&&t>=e.length?m(i,e.length-1)+1:m(i,t);return h(`sankey`,n,a,r)},c=e=>{let t=r[o],n=t===1?v[r[o-1]]:v[t];throw s(a[o],`Expecting ${e}, got '${n}'`)},l=(e,t=``)=>{r[o]!==e&&c(`'${v[e]}'${t}`),o++},u=()=>{if(r[o]===6)return i[o++];r[o]!==5&&c(`'DQUOTE', 'NON_ESCAPED_TEXT'`),o++,r[o]!==7&&c(`'ESCAPED_TEXT'`);let e=i[o++];return l(5),e},d=()=>{let e=a[o],t=u().trim().replaceAll(`""`,`"`);if(S.test(f(t)))throw s(e,`Invalid XML character in node name`);return t};for(l(2),l(3);;){let e=d();l(4,`, 'NEWLINE', 'EOF'`);let n=d();l(4,`, 'NEWLINE', 'EOF'`);let i=a[o],c=parseFloat(u());if(!Number.isFinite(c))throw s(i,`Expecting a number`);let f=t.findOrCreateNode(e),p=t.findOrCreateNode(n);if(t.addLink(f,p,c),r[o]!==3)break;o++}r[o]===8&&o++,r[o]!==0&&c(`'NEWLINE', 'EOF'`)}var ee=6;function E(e,t){if(e.length>8)e.sort(t);else for(let n=1;n<e.length;n++){let r=e[n],i=n-1;for(;i>=0&&t(e[i],r)>0;)e[i+1]=e[i],i--;e[i+1]=r}}function D(e,t){let n=e.nodes.length,r=e.links.map(e=>({source:e.source.index,target:e.target.index,value:Number.isFinite(e.value)&&e.value>0?e.value:0,thickness:0,sourceY:0,targetY:0})),i=[],a=[];for(let e=0;e<n;e++)i.push([]),a.push([]);r.forEach((e,t)=>{i[e.source].push(t),a[e.target].push(t)});let o=new Int32Array(n),s=new Int32Array(n),c=[];for(let e=0;e<n;e++)s[e]=a[e].length,s[e]===0&&c.push(e);for(let e=0;e<c.length;e++){let t=c[e];for(let e of i[t]){let n=r[e].target;o[n]<o[t]+1&&(o[n]=o[t]+1),--s[n]===0&&c.push(n)}}if(c.length<n){let t=0;for(;s[t]===0;)t++;let i=new Uint8Array(n);for(;i[t]===0;){i[t]=1;for(let e of a[t])if(s[r[e].source]>0){t=r[e].source;break}}throw new u(`Sankey diagrams cannot have circular links, and "${e.nodes[t].id}" is part of one.`,`semantic`,{type:`sankey`})}let l=1;for(let e=0;e<n;e++)o[e]+1>l&&(l=o[e]+1);let d=new Int32Array(n);for(let e=n-1;e>=0;e--){let t=c[e];for(let e of i[t])d[t]<d[r[e].target]+1&&(d[t]=d[r[e].target]+1)}let f=0;for(let e of r)e.value>f&&(f=e.value);let p=f>0?1/f:0,m=[],h=new Float64Array(n),g=[];for(let e=0;e<l;e++)g.push([]);let _=l>1?(t.width-t.nodeWidth)/(l-1):0;for(let e=0;e<n;e++){let n;if(t.alignment===`left`)n=o[e];else if(t.alignment===`right`)n=l-1-d[e];else if(t.alignment===`center`){if(n=o[e],a[e].length===0&&i[e].length>0){n=l;for(let t of i[e])o[r[t].target]-1<n&&(n=o[r[t].target]-1)}}else n=i[e].length>0?o[e]:l-1;let s=0,c=0,u=0,f=0;for(let t of a[e])s+=r[t].value*p,u+=r[t].value;for(let t of i[e])c+=r[t].value*p,f+=r[t].value;h[e]=Math.max(s,c),m.push({layer:n,value:Math.max(u,f),x:n*_,y:0,height:0}),g[n].push(e)}let v=1;for(let e of g)e.length>v&&(v=e.length);let y=v>1?Math.min(t.nodePadding,t.height/(v-1)):t.nodePadding,b=1/0;for(let e of g){let n=0;for(let t of e)n+=h[t];n>0&&(b=Math.min(b,(t.height-(e.length-1)*y)/n))}(!Number.isFinite(b)||b<0)&&(b=0);let x=Math.max(0,t.labelHeight-y),S=e=>{for(let n of g){let r=(n.length-1)*y;for(let t of n)r+=Math.max(h[t]*e,x);if(r>t.height+1e-6)return!1}return!0};if(x>0&&!S(b)){if(S(0)){let e=0;for(let t=0;t<40;t++){let t=(e+b)/2;S(t)?e=t:b=t}b=e}else x=0}let C=new Float64Array(n);for(let e of r)e.thickness=e.value*p*b;for(let e of g){let n=0;for(let t of e)m[t].height=h[t]*b,C[t]=Math.max(0,x-m[t].height)/2,m[t].y=n+C[t],n+=m[t].height+2*C[t]+y;let r=(t.height-n+y)/(e.length+1);e.forEach((e,t)=>m[e].y+=r*(t+1))}let w=e=>m[e].y+m[e].height/2,T=new Float64Array(r.length),D=new Float64Array(r.length),O=(e,t)=>w(r[e].target)-w(r[t].target)||e-t,k=(e,t)=>w(r[e].source)-w(r[t].source)||e-t,te=(e,t)=>w(e)-w(t)||e-t,A=e=>{let t=0;E(i[e],O);for(let n of i[e])T[n]=t+r[n].thickness/2,t+=r[n].thickness},j=e=>{let t=0;E(a[e],k);for(let n of a[e])D[n]=t+r[n].thickness/2,t+=r[n].thickness},M=()=>{for(let e=0;e<n;e++)A(e),j(e)},N=(e,n,o)=>{for(let t of e){let e=o?a[t]:i[t];if(e.length===0)continue;o?j(t):A(t);let s=0,c=0,l=0;for(let n of e){let e=o?m[r[n].source].y+T[n]-D[n]:m[r[n].target].y+D[n]-T[n];s+=e*r[n].thickness,c+=r[n].thickness,l+=w(o?r[n].source:r[n].target)-m[t].height/2}let u=c>0?s/c:l/e.length;m[t].y+=(u-m[t].y)*n}E(e,te);let s=0;for(let t of e)m[t].y-C[t]<s&&(m[t].y=s+C[t]),s=m[t].y+m[t].height+C[t]+y;s=t.height;for(let t=e.length-1;t>=0;t--){let n=e[t];m[n].y+m[n].height+C[n]>s&&(m[n].y=s-m[n].height-C[n]),s=m[n].y-C[n]-y}};M();for(let e=0;e<ee;e++){let t=.99**e;for(let e=l-2;e>=0;e--)N(g[e],t,!1);M();for(let e=1;e<l;e++)N(g[e],t,!0);M()}for(let e=0;e<r.length;e++)r[e].sourceY=m[r[e].source].y+T[e],r[e].targetY=m[r[e].target].y+D[e];return{nodes:m,links:r}}var O=6,k=15,te=1.8,A=300;function j(e){let t=2166136261,n=5381;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r);t=Math.imul(t^i,16777619),n=Math.imul(n,33)+i|0}return(t>>>0).toString(36)+(n>>>0).toString(36)}function M(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function N(e,t,n,r,i){let a=e[t];return typeof a==`number`&&a>=r?Math.min(a,i):n}function ne(e,t){let n=e[t];return typeof n==`string`||typeof n==`number`&&Number.isFinite(n)?String(n):``}function re(e){return Math.abs(e)<0x38d7ea4c68000?Math.round(e*100)/100:e}function ie(e){return typeof e==`string`?a([`fill:${e}`]).shape:``}function P(e,t,n){let r=M(t.sankey)?t.sankey:{},i=N(r,`width`,600,1,1e4);return c(n,i,160,t=>F(e,r,n,t,i))}function F(a,c,u,d,p){let m=u.fontSize??16,h=Math.round(m*.625),_=Math.max(h,Math.round(m*.875*Math.min(1,d/p))),v=u.measurer??g(u.fontFamily,u.fontFamilyMono),y=u.padding??8,b=N(c,`height`,400,1,1e4),x=Math.min(N(c,`nodeWidth`,10,1,200),d),S=c.showValues!==!1,C=f(ne(c,`prefix`)),w=f(ne(c,`suffix`)),T=c.labelStyle===`outlined`,ee=c.nodeAlignment===`left`||c.nodeAlignment===`right`||c.nodeAlignment===`center`?c.nodeAlignment:`justify`,E=typeof c.linkColor==`string`?c.linkColor:`gradient`,P=e=>D(a,{width:d,height:b,nodeWidth:x,nodePadding:N(c,`nodePadding`,12,0,200)+(S?k:0),labelHeight:e*1.15,alignment:ee}),F=P(_),I=new Map,L=1;for(let e of F.nodes){let t=(I.get(e.layer)??0)+1;I.set(e.layer,t),t>L&&(L=t)}let R=Math.max(h,Math.round(b/L/te));R<_&&(_=R,F=P(_));let{nodes:z,links:ae}=F,B=_*1.5,V=new Map;if(M(c.nodeColors))for(let[e,t]of Object.entries(c.nodeColors)){let n=ie(t);n&&V.set(e,n)}let H=e=>V.get(a.nodes[e].id)??``,U=e=>/^ style="fill:(.*);"$/.exec(H(e))?.[1]??n(e),W=0,G=0;z.forEach(e=>{e.value>G&&(G=e.value,W=e.layer)});let K=0,q=d,J=0,Y=b,oe=z.map((e,t)=>{let n=f(a.nodes[t].id),r=S?`${C}${re(e.value)}${w}`:``,i=v.width(r?`${n} ${r}`:n,_,0),o=T?e.layer>=W:e.x<d/2,s=o?e.x+x+O:e.x-O,c=e.y+e.height/2;return K=Math.min(K,o?s:s-i),q=Math.max(q,o?s+i:s),J=Math.min(J,c-_*.75),Y=Math.max(Y,c+_*.75),{value:r,width:i,after:o,left:o?s:s-i,y:c}}),X=new Map;if(z.length<=A)for(let e of oe){let t=Math.floor(e.y/B);for(let n of[t-2,t-1,t,t+1,t+2]){let t=X.get(n);t?t.push(e):X.set(n,[e])}}let se=``,ce=``;z.forEach((e,i)=>{let o=a.nodes[i].id,c=f(o),l=Math.max(e.height,1);ce+=`<rect class="pele-sankey-node" data-id="${r(o)}" x="${s(e.x)}" y="${s(e.y)}" width="${s(x)}" height="${s(l)}" rx="${s(Math.min(2,l/2))}" fill="${n(i)}"${H(i)}/>`;let u=oe[i],d=(e,t)=>(X.get(Math.floor(t/B))??[]).some(n=>n!==u&&Math.abs(n.y-t)<B&&e<n.left+n.width+O&&e+u.width>n.left-O);if(z.length<=A&&d(u.left,u.y))e:for(let t of[0,-B,B])for(let n of[u.after,!u.after]){let r=n?e.x+x+O:e.x-O-u.width,a=u.y+t;if(d(r,a)||r<K||r+u.width>q||a-_*.75<J||a+_*.75>Y||z.some((e,t)=>t!==i&&r<e.x+x+O&&r+u.width>e.x-O&&a-_*.75<e.y+e.height&&a+_*.75>e.y))continue;let o=Math.max(0,e.y-a,a-e.y-e.height);if(!z.some((t,n)=>n!==i&&t.x===e.x&&Math.max(0,t.y-a,a-t.y-t.height)<=o)){u.left=r,u.y=a,u.after=n;break e}}let{value:p,after:m,y:h}=u,g=m?e.x+x+O:e.x-O,v=` x="${s(g)}" y="${s(h+_*.35)}" text-anchor="${m?`start`:`end`}"`,y=t(c)+(p?` <tspan class="pele-sankey-value" fill="var(--_m)">${t(p)}</tspan>`:``);se+=`<g class="pele-label" data-id="${r(o)}">`+(T?`<text${v} fill="none" stroke="var(--_bg)" stroke-width="3" stroke-linejoin="round">${t(c)}${p?` `+t(p):``}</text>`:``)+`<text${v}>${y}</text></g>`});let le=E===`gradient`||E===`source`||E===`target`?``:ie(E),ue=u.idPrefix??``,de=E===`gradient`&&/^[\w-]+$/.test(ue),Z=new Map,fe=``;for(let e of ae){let i=E===`target`?e.target:e.source,o=Math.max(e.thickness,1)/2,c=z[e.source].x+x,l=z[e.target].x,u=`fill="${n(i)}"${le||H(i)}`;if(de){let t=`x1="${s(c)}" x2="${s(l)}"><stop offset="0" stop-color="${U(e.source)}"/><stop offset="1" stop-color="${U(e.target)}"/>`,n=`${ue}-sankey-${j(t)}`;Z.set(n,`<linearGradient id="${n}" gradientUnits="userSpaceOnUse" ${t}</linearGradient>`),u=`fill="url(#${n}) ${U(e.source)}"`}let d=s((c+l)/2),f=r(a.nodes[e.source].id),p=r(a.nodes[e.target].id);fe+=`<path class="pele-sankey-link" data-id="${f}->${p}" d="M${s(c)},${s(e.sourceY-o)}C${d},${s(e.sourceY-o)} ${d},${s(e.targetY-o)} ${s(l)},${s(e.targetY-o)}L${s(l)},${s(e.targetY+o)}C${d},${s(e.targetY+o)} ${d},${s(e.sourceY+o)} ${s(c)},${s(e.sourceY+o)}Z" ${u}><title>${f} → ${p}: ${t(C)}${re(e.value)}${t(w)}</title></path>`}let Q=o(a.title,!1,v,m,l(u),1),pe=Q.height>0?Q.height+12:0,me=Math.max(q-K,Q.width),he=y-K+(me-(q-K))/2,ge=y+pe-J,$=Math.ceil(me+2*y),_e=Math.ceil(Y-J+pe+2*y);return{svg:e(`sankey`,$,_e,m,u,a,i(Q,$/2,y+Q.height/2,` class="pele-title" font-weight="var(--_tw)"`)+`<g transform="translate(${s(he)},${s(ge)})">`+(Z.size>0?`<defs>${[...Z.values()].join(``)}</defs>`:``)+`<g class="pele-sankey-links" fill-opacity="0.4">${fe}</g><g class="pele-sankey-nodes">${ce}</g><g class="pele-labels" font-size="${_}">${se}</g></g>`),width:$,height:_e,links:[]}}var I={type:`sankey`,parse(e,t,n){let r=new _;return n&&(r.title=n),T(w(e),r,e),r},render:P};export{I as sankey};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as e,x as t}from"./DfCZPwp1.js";var n=12,r=(e,t,r)=>(r?t:e)-2*n,i=e=>(t,r,i)=>i?0:t-2*e(r)-2*n;function a(e,t,n){let r=Math.min(1,Math.abs(e)/t);return n*(1-Math.sqrt(1-r*r))}var o=(e,t,n,r)=>n&1?a(r,t/2,e/2):a(r,e/2,t/2),s=(e,t,n)=>(n?t:e)*.6,c=(e,t,n,r)=>n&1?0:a(r,e/2,Math.min(12,Math.max(6,e/14))),l=(e,t)=>()=>({w:e,h:t,dy:0});function u(e,t,n){let r=Math.max(1.6*e+40,80),i=(t+10)/(1-(e+8)/r),a=i/2-10-t/2;return{w:r,h:i,dy:n?-a:a}}function d(e,t){return`<path d="${e}"${t}/>`}var f=(e,t,n)=>n&1?t/8:0,p=(e,t)=>({w:Math.max(e+36,48),h:t+24,dy:0});function m(e,n){let r=``;for(let n=0;n<e.length;n+=2)r+=(n?` `:``)+t(e[n])+`,`+t(e[n+1]);return`<polygon points="${r}"${n}/>`}function h(e,n,r,i=``){return`<rect x="${t(-e/2)}" y="${t(-n/2)}" width="${t(e)}" height="${t(n)}"${i}${r}/>`}var g={rect:{size:p,span:r,draw:(t,n,r)=>h(t,n,e(r))},rounded:{size:p,span:r,draw:(e,n,r)=>h(e,n,r,` rx="${t(Math.min(12,n/2))}"`)},stadium:{inset:(e,t,n,r)=>n&1?a(r,t/2,t/2):0,span:(e,t,n)=>n?t*.6:e-t,size:(e,t)=>{let n=t+24;return{w:e+n*.5+36-8,h:n,dy:0}},draw:(e,n,r)=>h(e,n,r,` rx="${t(n/2)}"`)},"fr-rect":{span:r,size:(e,t)=>({w:e+36+16,h:t+24,dy:0}),draw:(n,r,i,a)=>{let o=n/2-8;return h(n,r,e(i))+`<path d="M${t(-o)},${t(-r/2)}V${t(r/2)}M${t(o)},${t(-r/2)}V${t(r/2)}" fill="none"${a}/>`}},cyl:{inset:c,span:(e,t,r)=>r?t-2*n-12:e*.6,size:(e,t)=>{let n=Math.max(e+36,56),r=Math.min(12,Math.max(6,n/14));return{w:n,h:t+24+2*r,dy:r/2}},draw:(e,n,r,i)=>{let a=e/2,o=Math.min(12,Math.max(6,e/14)),s=-n/2+o,c=n/2-o;return`<path d="M${t(-a)},${t(s)}A${t(a)},${t(o)} 0 0 1 ${t(a)},${t(s)}V${t(c)}A${t(a)},${t(o)} 0 0 1 ${t(-a)},${t(c)}Z"${r}/><path d="M${t(-a)},${t(s)}A${t(a)},${t(o)} 0 0 0 ${t(a)},${t(s)}" fill="none"${i}/>`}},circle:{inset:o,span:s,size:(e,t)=>{let n=Math.max(Math.sqrt(e*e+t*t)+16,44);return{w:n,h:n,dy:0}},draw:(e,n,r)=>`<circle r="${t(e/2)}"${r}/>`},"dbl-circ":{inset:o,span:s,size:(e,t)=>{let n=Math.max(Math.sqrt(e*e+t*t)+26,54);return{w:n,h:n,dy:0}},draw:(e,n,r,i)=>`<circle r="${t(e/2)}"${r}/><circle r="${t(e/2-5)}" fill="none"${i}/>`},ellipse:{inset:o,span:s,size:(e,t)=>({w:e*1.3+36,h:t*1.2+24,dy:0}),draw:(e,n,r)=>`<ellipse rx="${t(e/2)}" ry="${t(n/2)}"${r}/>`},diam:{inset:(e,t,n,r)=>n&1?Math.abs(r)*e/t:Math.abs(r)*t/e,span:(e,t,n)=>(n?t:e)*.6,size:(e,t)=>{let n=e+16,r=t+8;return{w:n+1.6*r,h:n/1.6+r,dy:0}},draw:(e,t,n)=>m([0,-t/2,e/2,0,0,t/2,-e/2,0],n)},hex:{inset:(e,t,n,r)=>n&1?Math.abs(r)/2:0,span:(e,t,r)=>r?t*.5:e-t/2-n,size:(e,t)=>{let n=t+24;return{w:e+36+n/2,h:n,dy:0}},draw:(e,t,n)=>{let r=t/4;return m([-e/2+r,-t/2,e/2-r,-t/2,e/2,0,e/2-r,t/2,-e/2+r,t/2,-e/2,0],n)}},odd:{inset:(e,t,n)=>n===3?t/4:0,span:i(()=>0),size:(e,t)=>{let n=t+24;return{w:e+36+n/4,h:n,dy:0}},draw:(e,t,n)=>{let r=t/4;return m([-e/2,-t/2,e/2,-t/2,e/2,t/2,-e/2,t/2,-e/2+r,0],n)}},"lean-r":{inset:f,span:i(e=>e/4),size:(e,t)=>{let n=t+24;return{w:e+36+n/2,h:n,dy:0}},draw:(e,t,n)=>{let r=t/4;return m([-e/2+r,-t/2,e/2,-t/2,e/2-r,t/2,-e/2,t/2],n)}},"lean-l":{inset:f,span:i(e=>e/4),size:(e,t)=>{let n=t+24;return{w:e+36+n/2,h:n,dy:0}},draw:(e,t,n)=>{let r=t/4;return m([-e/2,-t/2,e/2-r,-t/2,e/2,t/2,-e/2+r,t/2],n)}},"trap-b":{inset:f,span:i(e=>e/4),size:(e,t)=>{let n=t+24;return{w:e+36+n/2,h:n,dy:0}},draw:(e,t,n)=>{let r=t/4;return m([-e/2+r,-t/2,e/2-r,-t/2,e/2,t/2,-e/2,t/2],n)}},"trap-t":{inset:f,span:i(e=>e/4),size:(e,t)=>{let n=t+24;return{w:e+36+n/2,h:n,dy:0}},draw:(e,t,n)=>{let r=t/4;return m([-e/2,-t/2,e/2,-t/2,e/2-r,t/2,-e/2+r,t/2],n)}},text:{span:r,size:(e,t)=>({w:e+8,h:t+8,dy:0}),draw:(e,t)=>h(e,t,` fill="none" stroke="none"`)},"sm-circ":{noLabel:!0,inset:o,span:s,size:l(14,14),draw:(e,n,r)=>`<circle r="${t(e/2)}"${r}/>`},"f-circ":{noLabel:!0,inset:o,span:s,size:l(14,14),draw:(e,n,r,i)=>`<circle r="${t(e/2)}" fill="var(--_l)"${i}/>`},"fr-circ":{noLabel:!0,inset:o,span:s,size:l(18,18),draw:(e,n,r,i)=>`<circle r="${t(e/2)}"${r}/><circle r="${t(e/2-4)}" fill="var(--_l)"${i}/>`},fork:{noLabel:!0,span:(e,t,n)=>(n?t:e)-8,size:l(72,8),draw:(e,t,n,r)=>h(e,t,` fill="var(--_l)"${r}`,` rx="2"`)},"notch-rect":{size:p,span:r,draw:(e,t,n)=>m([-e/2+10,-t/2,e/2,-t/2,e/2,t/2,-e/2,t/2,-e/2,-t/2+10],n)},"lin-rect":{span:r,size:(e,t)=>({w:e+36+8,h:t+24,dy:0}),draw:(n,r,i,a)=>h(n,r,e(i))+`<path d="M${t(-n/2+8)},${t(-r/2)}V${t(r/2)}" fill="none"${a}/>`},"div-rect":{span:r,size:(e,t)=>({w:e+36,h:t+24+8,dy:4}),draw:(n,r,i,a)=>h(n,r,e(i))+`<path d="M${t(-n/2)},${t(-r/2+8)}H${t(n/2)}" fill="none"${a}/>`},"win-pane":{span:r,size:(e,t)=>({w:e+36+8,h:t+24+8,dy:4}),draw:(n,r,i,a)=>h(n,r,e(i))+`<path d="M${t(-n/2+8)},${t(-r/2)}V${t(r/2)}M${t(-n/2)},${t(-r/2+8)}H${t(n/2)}" fill="none"${a}/>`},tri:{inset:(e,t,n)=>n&1?e/4:0,size:(e,t)=>u(e,t,!1),draw:(e,t,n)=>m([0,-t/2,e/2,t/2,-e/2,t/2],n)},"flip-tri":{inset:(e,t,n)=>n&1?e/4:0,size:(e,t)=>u(e,t,!0),draw:(e,t,n)=>m([-e/2,-t/2,e/2,-t/2,0,t/2],n)},"sl-rect":{inset:(e,t,n)=>n===0?5:0,size:(e,t)=>({w:e+36,h:t+24+10,dy:5}),draw:(e,t,n)=>m([-e/2,-t/2+10,e/2,-t/2,e/2,t/2,-e/2,t/2],n)},"notch-pent":{span:r,size:(e,t)=>({w:e+36,h:t+24,dy:0}),draw:(e,t,n)=>m([-e/2+10,-t/2,e/2-10,-t/2,e/2,-t/2+10,e/2,t/2,-e/2,t/2,-e/2,-t/2+10],n)},hourglass:{noLabel:!0,inset:(e,t,n)=>n&1?e/2:0,size:l(32,40),draw:(e,t,n)=>m([-e/2,-t/2,e/2,-t/2,-e/2,t/2,e/2,t/2],n)},delay:{size:(e,t)=>{let n=t+24;return{w:e+36+n/4,h:n,dy:0}},draw:(e,n,r)=>{let i=n/2;return`<path d="M${t(-e/2)},${t(-i)}H${t(e/2-i)}A${t(i)},${t(i)} 0 0 1 ${t(e/2-i)},${t(i)}H${t(-e/2)}Z"${r}/>`}},"h-cyl":{size:(e,t)=>{let n=t+24,r=Math.min(12,n/4);return{w:e+36+2*r,h:n,dy:0}},draw:(e,n,r,i)=>{let a=n/2,o=Math.min(12,n/4),s=-e/2+o,c=e/2-o;return`<path d="M${t(s)},${t(-a)}H${t(c)}A${t(o)},${t(a)} 0 0 1 ${t(c)},${t(a)}H${t(s)}A${t(o)},${t(a)} 0 0 1 ${t(s)},${t(-a)}Z"${r}/><path d="M${t(c)},${t(-a)}A${t(o)},${t(a)} 0 0 0 ${t(c)},${t(a)}" fill="none"${i}/>`}},"cross-circ":{noLabel:!0,inset:o,span:s,size:l(44,44),draw:(e,n,r,i)=>{let a=e/2,o=a*Math.SQRT1_2;return`<circle r="${t(a)}"${r}/><path d="M${t(-o)},${t(-o)}L${t(o)},${t(o)}M${t(o)},${t(-o)}L${t(-o)},${t(o)}" fill="none"${i}/>`}},"st-rect":{span:(e,t,r)=>(r?t:e)-2*n-8,size:(e,t)=>({w:e+36+8,h:t+24+8,dy:4}),draw:(n,r,i)=>{let a=n-8,o=r-8,s=``;for(let c=0;c<3;c++){let l=-n/2+(2-c)*4,u=-r/2+c*4;s+=`<rect x="${t(l)}" y="${t(u)}" width="${t(a)}" height="${t(o)}"${e(i)}/>`}return s}},doc:{inset:(e,t,n)=>n===2?10:0,size:(e,t)=>({w:e+36,h:t+24+10,dy:-5}),draw:(e,t,n)=>v(e,t,n)},flag:{inset:(e,t,n)=>n&1?0:8,size:(e,t)=>({w:e+36,h:t+24+16,dy:0}),draw:(e,n,r)=>{let i=e/2,a=n/2-8,o=e/4;return`<path d="M${t(-i)},${t(-a)}q${t(o)},-10 ${t(2*o)},0t${t(2*o)},0V${t(a)}q${t(-o)},10 ${t(-2*o)},0t${t(-2*o)},0Z"${r}/>`}},datastore:{size:p,span:r,draw:(e,n,r,i)=>h(e,n,r.replace(`stroke="var(--_b)"`,`stroke="none"`))+`<path d="M${t(-e/2)},${t(-n/2)}H${t(e/2)}M${t(-e/2)},${t(n/2)}H${t(e/2)}" fill="none"${i}/>`},folder:{size:(e,t)=>({w:Math.max(e+36,64),h:t+24+8,dy:4}),draw:(e,n,r)=>{let i=e/2,a=n/2,o=Math.min(e*.4,48);return d(`M${t(-i)},${t(-a)}H${t(-i+o)}L${t(-i+o+8)},${t(-a+8)}H${t(i)}V${t(a)}H${t(-i)}Z`,r)}},bucket:{size:(e,t)=>({w:e+36+20,h:t+24+10,dy:3}),inset:(e,t,n)=>n&1?t/12:0,draw:(e,n,r,i)=>{let a=e/2,o=n/2,s=n/6;return d(`M${t(-a)},${t(-o+5)}A${t(a)},${t(5)} 0 0 1 ${t(a)},${t(-o+5)}L${t(a-s)},${t(o-5)}A${t(a-s)},${t(5)} 0 0 1 ${t(-a+s)},${t(o-5)}Z`,r)+`<path d="M${t(-a)},${t(-o+5)}A${t(a)},${t(5)} 0 0 0 ${t(a)},${t(-o+5)}" fill="none"${i}/>`}},console:{span:r,size:(e,t)=>({w:Math.max(e+36,72),h:t+24+12,dy:6}),draw:(n,r,i,a)=>h(n,r,e(i))+`<path d="M${t(-n/2)},${t(-r/2+12)}H${t(n/2)}M${t(-n/2+7)},${t(-r/2+4)}l3,2.5l-3,2.5M${t(-n/2+13)},${t(-r/2+9)}h4" fill="none"${a}/>`},browser:{span:r,size:(e,t)=>({w:Math.max(e+36,72),h:t+24+12,dy:6}),draw:(n,r,i,a)=>{let o=``;for(let e=0;e<3;e++)o+=`<circle cx="${t(-n/2+8+e*7)}" cy="${t(-r/2+6)}" r="1.5" fill="none"${a}/>`;return h(n,r,e(i))+`<path d="M${t(-n/2)},${t(-r/2+12)}H${t(n/2)}" fill="none"${a}/>`+o}},person:{size:(e,t)=>({w:Math.max(e+36,56),h:t+24+26,dy:13}),draw:(e,n,r)=>{let i=-n/2;return`<rect x="${t(-e/2)}" y="${t(i+26)}" width="${t(e)}" height="${t(n-26)}" rx="12"${r}/><circle cy="${t(i+14)}" r="13"${r}/>`}},bang:{size:(e,t)=>({w:e+36+28,h:t+24+24,dy:0}),inset:()=>3,draw:(e,t,n)=>{let r=[];for(let n=0;n<28;n++){let i=Math.PI*n/14-Math.PI/2,a=n%2==0?1:.82;r.push(e/2*Math.cos(i)*a,t/2*Math.sin(i)*a)}return m(r,n)}},cloud:{size:(e,t)=>({w:e+36+32,h:t+24+24,dy:0}),inset:(e,t,n)=>n&1?2:1,draw:(e,n,r)=>{let i=e/2,a=n/2,o=a*.55;return d(`M${t(-i+o)},${t(a)}A${t(o)},${t(o)} 0 0 1 ${t(-i+o*.6)},${t(-a*.1)}A${t(i*.42)},${t(a*.7)} 0 0 1 ${t(-i*.1)},${t(-a*.72)}A${t(i*.4)},${t(a*.62)} 0 0 1 ${t(i*.62)},${t(-a*.42)}A${t(o*1.05)},${t(o*1.05)} 0 0 1 ${t(i-o)},${t(a)}Z`,r)}},brace:{size:(e,t)=>({w:e+36+12,h:t+24,dy:0}),draw:(e,t,n,r)=>h(e,t,` fill="none" stroke="none"`)+_(-e/2+12,t,-1,r)},"brace-r":{size:(e,t)=>({w:e+36+12,h:t+24,dy:0}),draw:(e,t,n,r)=>h(e,t,` fill="none" stroke="none"`)+_(e/2-12,t,1,r)},braces:{size:(e,t)=>({w:e+36+24,h:t+24,dy:0}),draw:(e,t,n,r)=>h(e,t,` fill="none" stroke="none"`)+_(-e/2+12,t,-1,r)+_(e/2-12,t,1,r)},bolt:{noLabel:!0,size:l(36,56),inset:(e,t,n)=>n&1?e/4:0,draw:(e,t,n)=>m([e*.15,-t/2,-e/2,t*.08,-e*.05,t*.08,-e*.15,t/2,e/2,-t*.08,e*.05,-t*.08],n)},"lin-cyl":{inset:c,span:(e,t,r)=>r?t-2*n-20:e*.6,size:(e,t)=>{let n=Math.max(e+36,56),r=Math.min(12,Math.max(6,n/14));return{w:n,h:t+24+2*r+8,dy:r/2+4}},draw:(e,n,r,i)=>{let a=e/2,o=Math.min(12,Math.max(6,e/14)),s=-n/2+o,c=n/2-o,l=e=>`M${t(-a)},${t(e)}A${t(a)},${t(o)} 0 0 0 ${t(a)},${t(e)}`;return d(`M${t(-a)},${t(s)}A${t(a)},${t(o)} 0 0 1 ${t(a)},${t(s)}V${t(c)}A${t(a)},${t(o)} 0 0 1 ${t(-a)},${t(c)}Z`,r)+`<path d="${l(s)}${l(s+8)}" fill="none"${i}/>`}},"curv-trap":{size:(e,t)=>{let n=t+24;return{w:e+36+n*.6,h:n,dy:0}},draw:(e,n,r)=>{let i=e/2,a=n/2,o=n*.3;return d(`M${t(-i+o)},${t(-a)}H${t(i-o)}A${t(o)},${t(a)} 0 0 1 ${t(i-o)},${t(a)}H${t(-i+o)}L${t(-i)},0Z`,r)}},docs:{size:(e,t)=>({w:e+36+8,h:t+24+18,dy:-1}),inset:(e,t,n)=>n===2?10:0,draw:(e,t,n)=>{let r=``;for(let i=0;i<3;i++)r+=`<g transform="translate(${(1-i)*4},${(i-1)*4})">${v(e-8,t-8,n)}</g>`;return r}},"bow-rect":{size:(e,t)=>{let n=t+24;return{w:e+36+n*.4,h:n,dy:0}},inset:(e,t,n)=>n===1?t*.2:0,draw:(e,n,r)=>{let i=e/2,a=n/2,o=n*.2;return d(`M${t(-i+o)},${t(-a)}H${t(i)}A${t(o)},${t(a)} 0 0 0 ${t(i)},${t(a)}H${t(-i+o)}A${t(o)},${t(a)} 0 0 1 ${t(-i+o)},${t(-a)}Z`,r)}},"tag-rect":{size:p,span:r,draw:(n,r,i,a)=>h(n,r,e(i))+`<path d="M${t(n/2-12)},${t(r/2)}L${t(n/2)},${t(r/2-12)}" fill="none"${a}/>`},"tag-doc":{size:(e,t)=>({w:e+36,h:t+24+10,dy:-5}),inset:(e,t,n)=>n===2?10:0,draw:(e,n,r,i)=>v(e,n,r)+`<path d="M${t(e/2-12)},${t(n/2-14)}L${t(e/2)},${t(n/2-26)}" fill="none"${i}/>`},"lin-doc":{size:(e,t)=>({w:e+36+8,h:t+24+10,dy:-5}),inset:(e,t,n)=>n===2?10:0,draw:(e,n,r,i)=>v(e,n,r)+`<path d="M${t(-e/2+8)},${t(-n/2)}V${t(n/2-6)}" fill="none"${i}/>`},collapsedGroup:{size:(e,t)=>({w:e+36+8,h:t+24+8,dy:-2}),draw:(n,r,i)=>`<rect x="${t(-n/2+6)}" y="${t(-r/2+8)}" width="${t(n-12)}" height="${t(r-8)}"${e(i)}/><rect x="${t(-n/2)}" y="${t(-r/2)}" width="${t(n)}" height="${t(r-4)}"${e(i)}/>`}};function _(e,n,r,i){let a=n/2,o=6*r;return`<path d="M${t(e)},${t(-a)}q${t(o)},0 ${t(o)},6V-6q0,6 ${t(o)},6q${t(-o)},0 ${t(-o)},6V${t(a-6)}q0,6 ${t(-o)},6" fill="none"${i}/>`}function v(e,n,r){let i=e/2,a=-n/2,o=n/2-10,s=e/4;return`<path d="M${t(-i)},${t(a)}H${t(i)}V${t(o)}q${t(-s)},-12 ${t(-2*s)},0t${t(-2*s)},0Z"${r}/>`}var y=g.rect,b=new Map(Object.entries(g));function x(e,t,n){return(b.get(e)??y).size(t,n)}function S(e,t,n,r,i){return(b.get(e)??y).draw(t,n,r,i)}function C(e,t,n,r,i=0){return b.get(e)?.inset?.(t,n,r,i)??0}function w(e,t,n,r){return Math.max(0,b.get(e)?.span?.(t,n,r)??0)}function T(e){return b.get(e)?.noLabel!==!0}function E(e,t,n){let r=e[t]-n.x,i=e[t+1]-n.y;return Math.abs(Math.abs(i)-n.h/2)<.5?i<0?0:2:Math.abs(Math.abs(r)-n.w/2)<.5?r<0?3:1:-1}function D(e,t,n,r){if(r.isGroup)return;let i=E(e,t,r);if(i===0||i===2){let a=C(n.shape,n.w,n.h,i,e[t]-r.x)+(r.h-n.h)/2;e[t+1]+=i===0?a:-a}else if(i>=0){let a=C(n.shape,n.w,n.h,i,e[t+1]-r.y)+(r.w-n.w)/2;e[t]+=i===3?a:-a}}export{S as a,x as i,E as n,C as o,w as r,T as s,D as t};
|
|
1
|
+
import{d as e,x as t}from"./C2npZzkn.js";var n=12,r=(e,t,r)=>(r?t:e)-2*n,i=e=>(t,r,i)=>i?0:t-2*e(r)-2*n;function a(e,t,n){let r=Math.min(1,Math.abs(e)/t);return n*(1-Math.sqrt(1-r*r))}var o=(e,t,n,r)=>n&1?a(r,t/2,e/2):a(r,e/2,t/2),s=(e,t,n)=>(n?t:e)*.6,c=(e,t,n,r)=>n&1?0:a(r,e/2,Math.min(12,Math.max(6,e/14))),l=(e,t)=>()=>({w:e,h:t,dy:0});function u(e,t,n){let r=Math.max(1.6*e+40,80),i=(t+10)/(1-(e+8)/r),a=i/2-10-t/2;return{w:r,h:i,dy:n?-a:a}}function d(e,t){return`<path d="${e}"${t}/>`}var f=(e,t,n)=>n&1?t/8:0,p=(e,t)=>({w:Math.max(e+36,48),h:t+24,dy:0});function m(e,n){let r=``;for(let n=0;n<e.length;n+=2)r+=(n?` `:``)+t(e[n])+`,`+t(e[n+1]);return`<polygon points="${r}"${n}/>`}function h(e,n,r,i=``){return`<rect x="${t(-e/2)}" y="${t(-n/2)}" width="${t(e)}" height="${t(n)}"${i}${r}/>`}var g={rect:{size:p,span:r,draw:(t,n,r)=>h(t,n,e(r))},rounded:{size:p,span:r,draw:(e,n,r)=>h(e,n,r,` rx="${t(Math.min(12,n/2))}"`)},stadium:{inset:(e,t,n,r)=>n&1?a(r,t/2,t/2):0,span:(e,t,n)=>n?t*.6:e-t,size:(e,t)=>{let n=t+24;return{w:e+n*.5+36-8,h:n,dy:0}},draw:(e,n,r)=>h(e,n,r,` rx="${t(n/2)}"`)},"fr-rect":{span:r,size:(e,t)=>({w:e+36+16,h:t+24,dy:0}),draw:(n,r,i,a)=>{let o=n/2-8;return h(n,r,e(i))+`<path d="M${t(-o)},${t(-r/2)}V${t(r/2)}M${t(o)},${t(-r/2)}V${t(r/2)}" fill="none"${a}/>`}},cyl:{inset:c,span:(e,t,r)=>r?t-2*n-12:e*.6,size:(e,t)=>{let n=Math.max(e+36,56),r=Math.min(12,Math.max(6,n/14));return{w:n,h:t+24+2*r,dy:r/2}},draw:(e,n,r,i)=>{let a=e/2,o=Math.min(12,Math.max(6,e/14)),s=-n/2+o,c=n/2-o;return`<path d="M${t(-a)},${t(s)}A${t(a)},${t(o)} 0 0 1 ${t(a)},${t(s)}V${t(c)}A${t(a)},${t(o)} 0 0 1 ${t(-a)},${t(c)}Z"${r}/><path d="M${t(-a)},${t(s)}A${t(a)},${t(o)} 0 0 0 ${t(a)},${t(s)}" fill="none"${i}/>`}},circle:{inset:o,span:s,size:(e,t)=>{let n=Math.max(Math.sqrt(e*e+t*t)+16,44);return{w:n,h:n,dy:0}},draw:(e,n,r)=>`<circle r="${t(e/2)}"${r}/>`},"dbl-circ":{inset:o,span:s,size:(e,t)=>{let n=Math.max(Math.sqrt(e*e+t*t)+26,54);return{w:n,h:n,dy:0}},draw:(e,n,r,i)=>`<circle r="${t(e/2)}"${r}/><circle r="${t(e/2-5)}" fill="none"${i}/>`},ellipse:{inset:o,span:s,size:(e,t)=>({w:e*1.3+36,h:t*1.2+24,dy:0}),draw:(e,n,r)=>`<ellipse rx="${t(e/2)}" ry="${t(n/2)}"${r}/>`},diam:{inset:(e,t,n,r)=>n&1?Math.abs(r)*e/t:Math.abs(r)*t/e,span:(e,t,n)=>(n?t:e)*.6,size:(e,t)=>{let n=e+16,r=t+8;return{w:n+1.6*r,h:n/1.6+r,dy:0}},draw:(e,t,n)=>m([0,-t/2,e/2,0,0,t/2,-e/2,0],n)},hex:{inset:(e,t,n,r)=>n&1?Math.abs(r)/2:0,span:(e,t,r)=>r?t*.5:e-t/2-n,size:(e,t)=>{let n=t+24;return{w:e+36+n/2,h:n,dy:0}},draw:(e,t,n)=>{let r=t/4;return m([-e/2+r,-t/2,e/2-r,-t/2,e/2,0,e/2-r,t/2,-e/2+r,t/2,-e/2,0],n)}},odd:{inset:(e,t,n)=>n===3?t/4:0,span:i(()=>0),size:(e,t)=>{let n=t+24;return{w:e+36+n/4,h:n,dy:0}},draw:(e,t,n)=>{let r=t/4;return m([-e/2,-t/2,e/2,-t/2,e/2,t/2,-e/2,t/2,-e/2+r,0],n)}},"lean-r":{inset:f,span:i(e=>e/4),size:(e,t)=>{let n=t+24;return{w:e+36+n/2,h:n,dy:0}},draw:(e,t,n)=>{let r=t/4;return m([-e/2+r,-t/2,e/2,-t/2,e/2-r,t/2,-e/2,t/2],n)}},"lean-l":{inset:f,span:i(e=>e/4),size:(e,t)=>{let n=t+24;return{w:e+36+n/2,h:n,dy:0}},draw:(e,t,n)=>{let r=t/4;return m([-e/2,-t/2,e/2-r,-t/2,e/2,t/2,-e/2+r,t/2],n)}},"trap-b":{inset:f,span:i(e=>e/4),size:(e,t)=>{let n=t+24;return{w:e+36+n/2,h:n,dy:0}},draw:(e,t,n)=>{let r=t/4;return m([-e/2+r,-t/2,e/2-r,-t/2,e/2,t/2,-e/2,t/2],n)}},"trap-t":{inset:f,span:i(e=>e/4),size:(e,t)=>{let n=t+24;return{w:e+36+n/2,h:n,dy:0}},draw:(e,t,n)=>{let r=t/4;return m([-e/2,-t/2,e/2,-t/2,e/2-r,t/2,-e/2+r,t/2],n)}},text:{span:r,size:(e,t)=>({w:e+8,h:t+8,dy:0}),draw:(e,t)=>h(e,t,` fill="none" stroke="none"`)},"sm-circ":{noLabel:!0,inset:o,span:s,size:l(14,14),draw:(e,n,r)=>`<circle r="${t(e/2)}"${r}/>`},"f-circ":{noLabel:!0,inset:o,span:s,size:l(14,14),draw:(e,n,r,i)=>`<circle r="${t(e/2)}" fill="var(--_l)"${i}/>`},"fr-circ":{noLabel:!0,inset:o,span:s,size:l(18,18),draw:(e,n,r,i)=>`<circle r="${t(e/2)}"${r}/><circle r="${t(e/2-4)}" fill="var(--_l)"${i}/>`},fork:{noLabel:!0,span:(e,t,n)=>(n?t:e)-8,size:l(72,8),draw:(e,t,n,r)=>h(e,t,` fill="var(--_l)"${r}`,` rx="2"`)},"notch-rect":{size:p,span:r,draw:(e,t,n)=>m([-e/2+10,-t/2,e/2,-t/2,e/2,t/2,-e/2,t/2,-e/2,-t/2+10],n)},"lin-rect":{span:r,size:(e,t)=>({w:e+36+8,h:t+24,dy:0}),draw:(n,r,i,a)=>h(n,r,e(i))+`<path d="M${t(-n/2+8)},${t(-r/2)}V${t(r/2)}" fill="none"${a}/>`},"div-rect":{span:r,size:(e,t)=>({w:e+36,h:t+24+8,dy:4}),draw:(n,r,i,a)=>h(n,r,e(i))+`<path d="M${t(-n/2)},${t(-r/2+8)}H${t(n/2)}" fill="none"${a}/>`},"win-pane":{span:r,size:(e,t)=>({w:e+36+8,h:t+24+8,dy:4}),draw:(n,r,i,a)=>h(n,r,e(i))+`<path d="M${t(-n/2+8)},${t(-r/2)}V${t(r/2)}M${t(-n/2)},${t(-r/2+8)}H${t(n/2)}" fill="none"${a}/>`},tri:{inset:(e,t,n)=>n&1?e/4:0,size:(e,t)=>u(e,t,!1),draw:(e,t,n)=>m([0,-t/2,e/2,t/2,-e/2,t/2],n)},"flip-tri":{inset:(e,t,n)=>n&1?e/4:0,size:(e,t)=>u(e,t,!0),draw:(e,t,n)=>m([-e/2,-t/2,e/2,-t/2,0,t/2],n)},"sl-rect":{inset:(e,t,n)=>n===0?5:0,size:(e,t)=>({w:e+36,h:t+24+10,dy:5}),draw:(e,t,n)=>m([-e/2,-t/2+10,e/2,-t/2,e/2,t/2,-e/2,t/2],n)},"notch-pent":{span:r,size:(e,t)=>({w:e+36,h:t+24,dy:0}),draw:(e,t,n)=>m([-e/2+10,-t/2,e/2-10,-t/2,e/2,-t/2+10,e/2,t/2,-e/2,t/2,-e/2,-t/2+10],n)},hourglass:{noLabel:!0,inset:(e,t,n)=>n&1?e/2:0,size:l(32,40),draw:(e,t,n)=>m([-e/2,-t/2,e/2,-t/2,-e/2,t/2,e/2,t/2],n)},delay:{size:(e,t)=>{let n=t+24;return{w:e+36+n/4,h:n,dy:0}},draw:(e,n,r)=>{let i=n/2;return`<path d="M${t(-e/2)},${t(-i)}H${t(e/2-i)}A${t(i)},${t(i)} 0 0 1 ${t(e/2-i)},${t(i)}H${t(-e/2)}Z"${r}/>`}},"h-cyl":{size:(e,t)=>{let n=t+24,r=Math.min(12,n/4);return{w:e+36+2*r,h:n,dy:0}},draw:(e,n,r,i)=>{let a=n/2,o=Math.min(12,n/4),s=-e/2+o,c=e/2-o;return`<path d="M${t(s)},${t(-a)}H${t(c)}A${t(o)},${t(a)} 0 0 1 ${t(c)},${t(a)}H${t(s)}A${t(o)},${t(a)} 0 0 1 ${t(s)},${t(-a)}Z"${r}/><path d="M${t(c)},${t(-a)}A${t(o)},${t(a)} 0 0 0 ${t(c)},${t(a)}" fill="none"${i}/>`}},"cross-circ":{noLabel:!0,inset:o,span:s,size:l(44,44),draw:(e,n,r,i)=>{let a=e/2,o=a*Math.SQRT1_2;return`<circle r="${t(a)}"${r}/><path d="M${t(-o)},${t(-o)}L${t(o)},${t(o)}M${t(o)},${t(-o)}L${t(-o)},${t(o)}" fill="none"${i}/>`}},"st-rect":{span:(e,t,r)=>(r?t:e)-2*n-8,size:(e,t)=>({w:e+36+8,h:t+24+8,dy:4}),draw:(n,r,i)=>{let a=n-8,o=r-8,s=``;for(let c=0;c<3;c++){let l=-n/2+(2-c)*4,u=-r/2+c*4;s+=`<rect x="${t(l)}" y="${t(u)}" width="${t(a)}" height="${t(o)}"${e(i)}/>`}return s}},doc:{inset:(e,t,n)=>n===2?10:0,size:(e,t)=>({w:e+36,h:t+24+10,dy:-5}),draw:(e,t,n)=>v(e,t,n)},flag:{inset:(e,t,n)=>n&1?0:8,size:(e,t)=>({w:e+36,h:t+24+16,dy:0}),draw:(e,n,r)=>{let i=e/2,a=n/2-8,o=e/4;return`<path d="M${t(-i)},${t(-a)}q${t(o)},-10 ${t(2*o)},0t${t(2*o)},0V${t(a)}q${t(-o)},10 ${t(-2*o)},0t${t(-2*o)},0Z"${r}/>`}},datastore:{size:p,span:r,draw:(e,n,r,i)=>h(e,n,r.replace(`stroke="var(--_b)"`,`stroke="none"`))+`<path d="M${t(-e/2)},${t(-n/2)}H${t(e/2)}M${t(-e/2)},${t(n/2)}H${t(e/2)}" fill="none"${i}/>`},folder:{size:(e,t)=>({w:Math.max(e+36,64),h:t+24+8,dy:4}),draw:(e,n,r)=>{let i=e/2,a=n/2,o=Math.min(e*.4,48);return d(`M${t(-i)},${t(-a)}H${t(-i+o)}L${t(-i+o+8)},${t(-a+8)}H${t(i)}V${t(a)}H${t(-i)}Z`,r)}},bucket:{size:(e,t)=>({w:e+36+20,h:t+24+10,dy:3}),inset:(e,t,n)=>n&1?t/12:0,draw:(e,n,r,i)=>{let a=e/2,o=n/2,s=n/6;return d(`M${t(-a)},${t(-o+5)}A${t(a)},${t(5)} 0 0 1 ${t(a)},${t(-o+5)}L${t(a-s)},${t(o-5)}A${t(a-s)},${t(5)} 0 0 1 ${t(-a+s)},${t(o-5)}Z`,r)+`<path d="M${t(-a)},${t(-o+5)}A${t(a)},${t(5)} 0 0 0 ${t(a)},${t(-o+5)}" fill="none"${i}/>`}},console:{span:r,size:(e,t)=>({w:Math.max(e+36,72),h:t+24+12,dy:6}),draw:(n,r,i,a)=>h(n,r,e(i))+`<path d="M${t(-n/2)},${t(-r/2+12)}H${t(n/2)}M${t(-n/2+7)},${t(-r/2+4)}l3,2.5l-3,2.5M${t(-n/2+13)},${t(-r/2+9)}h4" fill="none"${a}/>`},browser:{span:r,size:(e,t)=>({w:Math.max(e+36,72),h:t+24+12,dy:6}),draw:(n,r,i,a)=>{let o=``;for(let e=0;e<3;e++)o+=`<circle cx="${t(-n/2+8+e*7)}" cy="${t(-r/2+6)}" r="1.5" fill="none"${a}/>`;return h(n,r,e(i))+`<path d="M${t(-n/2)},${t(-r/2+12)}H${t(n/2)}" fill="none"${a}/>`+o}},person:{size:(e,t)=>({w:Math.max(e+36,56),h:t+24+26,dy:13}),draw:(e,n,r)=>{let i=-n/2;return`<rect x="${t(-e/2)}" y="${t(i+26)}" width="${t(e)}" height="${t(n-26)}" rx="12"${r}/><circle cy="${t(i+14)}" r="13"${r}/>`}},bang:{size:(e,t)=>({w:e+36+28,h:t+24+24,dy:0}),inset:()=>3,draw:(e,t,n)=>{let r=[];for(let n=0;n<28;n++){let i=Math.PI*n/14-Math.PI/2,a=n%2==0?1:.82;r.push(e/2*Math.cos(i)*a,t/2*Math.sin(i)*a)}return m(r,n)}},cloud:{size:(e,t)=>({w:e+36+32,h:t+24+24,dy:0}),inset:(e,t,n)=>n&1?2:1,draw:(e,n,r)=>{let i=e/2,a=n/2,o=a*.55;return d(`M${t(-i+o)},${t(a)}A${t(o)},${t(o)} 0 0 1 ${t(-i+o*.6)},${t(-a*.1)}A${t(i*.42)},${t(a*.7)} 0 0 1 ${t(-i*.1)},${t(-a*.72)}A${t(i*.4)},${t(a*.62)} 0 0 1 ${t(i*.62)},${t(-a*.42)}A${t(o*1.05)},${t(o*1.05)} 0 0 1 ${t(i-o)},${t(a)}Z`,r)}},brace:{size:(e,t)=>({w:e+36+12,h:t+24,dy:0}),draw:(e,t,n,r)=>h(e,t,` fill="none" stroke="none"`)+_(-e/2+12,t,-1,r)},"brace-r":{size:(e,t)=>({w:e+36+12,h:t+24,dy:0}),draw:(e,t,n,r)=>h(e,t,` fill="none" stroke="none"`)+_(e/2-12,t,1,r)},braces:{size:(e,t)=>({w:e+36+24,h:t+24,dy:0}),draw:(e,t,n,r)=>h(e,t,` fill="none" stroke="none"`)+_(-e/2+12,t,-1,r)+_(e/2-12,t,1,r)},bolt:{noLabel:!0,size:l(36,56),inset:(e,t,n)=>n&1?e/4:0,draw:(e,t,n)=>m([e*.15,-t/2,-e/2,t*.08,-e*.05,t*.08,-e*.15,t/2,e/2,-t*.08,e*.05,-t*.08],n)},"lin-cyl":{inset:c,span:(e,t,r)=>r?t-2*n-20:e*.6,size:(e,t)=>{let n=Math.max(e+36,56),r=Math.min(12,Math.max(6,n/14));return{w:n,h:t+24+2*r+8,dy:r/2+4}},draw:(e,n,r,i)=>{let a=e/2,o=Math.min(12,Math.max(6,e/14)),s=-n/2+o,c=n/2-o,l=e=>`M${t(-a)},${t(e)}A${t(a)},${t(o)} 0 0 0 ${t(a)},${t(e)}`;return d(`M${t(-a)},${t(s)}A${t(a)},${t(o)} 0 0 1 ${t(a)},${t(s)}V${t(c)}A${t(a)},${t(o)} 0 0 1 ${t(-a)},${t(c)}Z`,r)+`<path d="${l(s)}${l(s+8)}" fill="none"${i}/>`}},"curv-trap":{size:(e,t)=>{let n=t+24;return{w:e+36+n*.6,h:n,dy:0}},draw:(e,n,r)=>{let i=e/2,a=n/2,o=n*.3;return d(`M${t(-i+o)},${t(-a)}H${t(i-o)}A${t(o)},${t(a)} 0 0 1 ${t(i-o)},${t(a)}H${t(-i+o)}L${t(-i)},0Z`,r)}},docs:{size:(e,t)=>({w:e+36+8,h:t+24+18,dy:-1}),inset:(e,t,n)=>n===2?10:0,draw:(e,t,n)=>{let r=``;for(let i=0;i<3;i++)r+=`<g transform="translate(${(1-i)*4},${(i-1)*4})">${v(e-8,t-8,n)}</g>`;return r}},"bow-rect":{size:(e,t)=>{let n=t+24;return{w:e+36+n*.4,h:n,dy:0}},inset:(e,t,n)=>n===1?t*.2:0,draw:(e,n,r)=>{let i=e/2,a=n/2,o=n*.2;return d(`M${t(-i+o)},${t(-a)}H${t(i)}A${t(o)},${t(a)} 0 0 0 ${t(i)},${t(a)}H${t(-i+o)}A${t(o)},${t(a)} 0 0 1 ${t(-i+o)},${t(-a)}Z`,r)}},"tag-rect":{size:p,span:r,draw:(n,r,i,a)=>h(n,r,e(i))+`<path d="M${t(n/2-12)},${t(r/2)}L${t(n/2)},${t(r/2-12)}" fill="none"${a}/>`},"tag-doc":{size:(e,t)=>({w:e+36,h:t+24+10,dy:-5}),inset:(e,t,n)=>n===2?10:0,draw:(e,n,r,i)=>v(e,n,r)+`<path d="M${t(e/2-12)},${t(n/2-14)}L${t(e/2)},${t(n/2-26)}" fill="none"${i}/>`},"lin-doc":{size:(e,t)=>({w:e+36+8,h:t+24+10,dy:-5}),inset:(e,t,n)=>n===2?10:0,draw:(e,n,r,i)=>v(e,n,r)+`<path d="M${t(-e/2+8)},${t(-n/2)}V${t(n/2-6)}" fill="none"${i}/>`},collapsedGroup:{size:(e,t)=>({w:e+36+8,h:t+24+8,dy:-2}),draw:(n,r,i)=>`<rect x="${t(-n/2+6)}" y="${t(-r/2+8)}" width="${t(n-12)}" height="${t(r-8)}"${e(i)}/><rect x="${t(-n/2)}" y="${t(-r/2)}" width="${t(n)}" height="${t(r-4)}"${e(i)}/>`}};function _(e,n,r,i){let a=n/2,o=6*r;return`<path d="M${t(e)},${t(-a)}q${t(o)},0 ${t(o)},6V-6q0,6 ${t(o)},6q${t(-o)},0 ${t(-o)},6V${t(a-6)}q0,6 ${t(-o)},6" fill="none"${i}/>`}function v(e,n,r){let i=e/2,a=-n/2,o=n/2-10,s=e/4;return`<path d="M${t(-i)},${t(a)}H${t(i)}V${t(o)}q${t(-s)},-12 ${t(-2*s)},0t${t(-2*s)},0Z"${r}/>`}var y=g.rect,b=new Map(Object.entries(g));function x(e,t,n){return(b.get(e)??y).size(t,n)}function S(e,t,n,r,i){return(b.get(e)??y).draw(t,n,r,i)}function C(e,t,n,r,i=0){return b.get(e)?.inset?.(t,n,r,i)??0}function w(e,t,n,r){return Math.max(0,b.get(e)?.span?.(t,n,r)??0)}function T(e){return b.get(e)?.noLabel!==!0}function E(e,t,n){let r=e[t]-n.x,i=e[t+1]-n.y;return Math.abs(Math.abs(i)-n.h/2)<.5?i<0?0:2:Math.abs(Math.abs(r)-n.w/2)<.5?r<0?3:1:-1}function D(e,t,n,r){if(r.isGroup)return;let i=E(e,t,r);if(i===0||i===2){let a=C(n.shape,n.w,n.h,i,e[t]-r.x)+(r.h-n.h)/2;e[t+1]+=i===0?a:-a}else if(i>=0){let a=C(n.shape,n.w,n.h,i,e[t+1]-r.y)+(r.w-n.w)/2;e[t]+=i===3?a:-a}}export{S as a,x as i,E as n,C as o,w as r,T as s,D as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e,x as t}from"./
|
|
1
|
+
import{o as e,x as t}from"./C2npZzkn.js";function n(e,t){for(let n=0;n<t.length;n+=3){let r=Math.round(t[n+1]),i=e.get(r);i?i.push(t[n]):e.set(r,[t[n]])}}function r(e,t,n,r){if(t===0)return e.x;let i=e.y-e.h/2,a=e.x-e.w/2,o=t/2,s=[a+r-6+o,e.x,a+e.w-r+6-o],c=n.get(Math.round(i));if(c===void 0)return s[0];let l=s[0],u=-1;for(let t of s){let n=1/0;for(let r of c)r>a&&r<a+e.w&&(n=Math.min(n,Math.abs(r-t)-o));if(n>=6)return t;n>u+.5&&(u=n,l=t)}return l}function i(e,t,n,r){let i=t>0?r.get(Math.round(e.y-e.h/2)):void 0;if(i===void 0)return!1;let a=e.x-e.w/2;for(let r of i)if(r>a&&r<a+e.w&&Math.abs(r-n)<t/2+4)return!0;return!1}function a(n,r,i,a,o,s,c,l){let u=1;for(let e=s[c].parent;e>=0&&u<8;e=s[e].parent)u++;let d=`color-mix(in srgb,var(--_a) ${t(100*(1-.5**u))}%,var(--_bg))`;return`<g class="pele-cluster-title" data-id="${o}">`+e(n,r,i,` fill="none" stroke="${d}" stroke-width="5" stroke-linejoin="round"`,l)+e(n,r,i,a,l)+`</g>`}export{i,r as n,n as r,a as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{l as e}from"./DxVFSMVD.js";import{A as t,M as n,bt as r,o as i,r as a}from"./BxTFtVqu.js";import{i as o,r as s}from"./Cq5C893B.js";import{javascriptLanguage as c}from"./K_3X9lyC.js";var l=s.deserialize({version:14,states:"%pOVOWOOObQPOOOpOSO'#C_OOOO'#Cp'#CpQVOWOOQxQPOOO!TQQOOQ!YQPOOOOOO,58y,58yO!_OSO,58yOOOO-E6n-E6nO!dQQO'#CqQ{QPOOO!iQPOOQ{QPOOO!qQPOOOOOO1G.e1G.eOOQO,59],59]OOQO-E6o-E6oO!yOpO'#CiO#RO`O'#CiQOQPOOO#ZO#tO'#CmO#fO!bO'#CmOOQO,59T,59TO#qOpO,59TO#vO`O,59TOOOO'#Cr'#CrO#{O#tO,59XOOQO,59X,59XOOOO'#Cs'#CsO$WO!bO,59XOOQO1G.o1G.oOOOO-E6p-E6pOOQO1G.s1G.sOOOO-E6q-E6q",stateData:"$g~OjOS~OQROUROkQO~OWTOXUOZUO`VO~OSXOTWO~OXUO[]OlZO~OY^O~O[_O~OT`O~OYaO~OmcOodO~OmfOogO~O^iOnhO~O_jOphO~ObkOqkOrmO~OcnOsnOtmO~OnpO~OppO~ObkOqkOrrO~OcnOsnOtrO~OWX`~",goto:`!^hPPPiPPPPPPPPPmPPPpPPsy!Q!WTROSRe]Re_QSORYSS[T^Rb[QlfRqlQogRso`,nodeNames:`⚠ Content Text Interpolation InterpolationContent }} Entity Attribute VueAttributeName : Identifier @ Is ScriptAttributeValue AttributeScript AttributeScript AttributeName AttributeValue Entity Entity`,maxTerm:36,nodeProps:[[`isolate`,-3,3,13,17,``]],skippedNodes:[0],repeatNodeCount:4,tokenData:"'y~RdXY!aYZ!a]^!apq!ars!rwx!w}!O!|!O!P#t!Q![#y![!]$s!_!`%g!b!c%l!c!}#y#R#S#y#T#j#y#j#k%q#k#o#y%W;'S#y;'S;:j$m<%lO#y~!fSj~XY!aYZ!a]^!apq!a~!wOm~~!|Oo~!b#RX`!b}!O!|!Q![!|![!]!|!c!}!|#R#S!|#T#o!|%W;'S!|;'S;:j#n<%lO!|!b#qP;=`<%l!|~#yOl~%W$QXY#t`!b}!O!|!Q![#y![!]!|!c!}#y#R#S#y#T#o#y%W;'S#y;'S;:j$m<%lO#y%W$pP;=`<%l#y~$zXX~`!b}!O!|!Q![!|![!]!|!c!}!|#R#S!|#T#o!|%W;'S!|;'S;:j#n<%lO!|~%lO[~~%qOZ~%W%xXY#t`!b}!O&e!Q![#y![!]!|!c!}#y#R#S#y#T#o#y%W;'S#y;'S;:j$m<%lO#y!b&jX`!b}!O!|!Q![!|![!]!|!c!}'V#R#S!|#T#o'V%W;'S!|;'S;:j#n<%lO!|!b'^XW!b`!b}!O!|!Q![!|![!]!|!c!}'V#R#S!|#T#o'V%W;'S!|;'S;:j#n<%lO!|",tokenizers:[6,7,new o(`b~RP#q#rU~XP#q#r[~aOT~~`,17,4),new o("!k~RQvwX#o#p!_~^TU~Opmq!]m!^;'Sm;'S;=`!X<%lOm~pUOpmq!]m!]!^!S!^;'Sm;'S;=`!X<%lOm~!XOU~~![P;=`<%lm~!bP#o#p!e~!jOk~~",72,2),new o(`[~RPwxU~ZOp~~`,11,15),new o(`[~RPrsU~ZOn~~`,11,14),new o("!e~RQvwXwx!_~^Tc~Opmq!]m!^;'Sm;'S;=`!X<%lOm~pUOpmq!]m!]!^!S!^;'Sm;'S;=`!X<%lOm~!XOc~~![P;=`<%lm~!dOt~~",66,35),new o("!e~RQrsXvw^~^Or~~cTb~Oprq!]r!^;'Sr;'S;=`!^<%lOr~uUOprq!]r!]!^!X!^;'Sr;'S;=`!^<%lOr~!^Ob~~!aP;=`<%lr~",66,33)],topRules:{Content:[0,1],Attribute:[1,7]},tokenPrec:157}),u=c.parser.configure({top:`SingleExpression`}),d=l.configure({props:[t({Text:n.content,Is:n.definitionOperator,AttributeName:n.attributeName,VueAttributeName:n.keyword,Identifier:n.variableName,"AttributeValue ScriptAttributeValue":n.attributeValue,Entity:n.character,"{{ }}":n.brace,"@ :":n.punctuation})]}),f={parser:u},p=d.configure({wrap:r((e,t)=>e.name==`InterpolationContent`?f:null)}),m=d.configure({wrap:r((e,t)=>e.name==`AttributeScript`?f:null),top:`Attribute`}),h={parser:p},g={parser:m},_=e();function v(e){return e.configure({dialect:`selfClosing`,wrap:r(b)},`vue`)}var y=v(_.language);function b(e,t){switch(e.name){case`Attribute`:return/^(@|:|v-)/.test(t.read(e.from,e.from+2))?g:null;case`Text`:return h}return null}function x(e={}){let t=_;if(e.base){if(e.base.language.name!=`html`||!(e.base.language instanceof a))throw RangeError(`The base option must be the result of calling html(...)`);t=e.base}return new i(t.language==_.language?y:v(t.language),[t.support,t.language.data.of({closeBrackets:{brackets:[`{`,`"`]}})])}export{x as vue};
|